v1alpha1

package
v1.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2023 License: Apache-2.0 Imports: 10 Imported by: 7

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the operators v1alpha1 API group +kubebuilder:object:generate=true +groupName=binding.operators.coreos.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "binding.operators.coreos.com", Version: "v1alpha1"}

	GroupVersionResource = GroupVersion.WithResource("servicebindings")

	GroupVersionKind = GroupVersion.WithKind("ServiceBinding")

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type Application

type Application struct {
	Ref `json:",inline"`

	// +optional
	LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`

	// BindingPath refers to the paths in the application workload's schema
	// where the binding workload would be referenced.  If BindingPath is
	// not specified, then the default path locations are used.  The
	// default location for ContainersPath is
	// "spec.template.spec.containers".  If SecretPath is not specified,
	// then the name of the secret object does not need to be specified.
	// +optional
	BindingPath *BindingPath `json:"bindingPath,omitempty"`
}

Application defines the selector based on labels and group version resource.

func (*Application) DeepCopy

func (in *Application) DeepCopy() *Application

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Application.

func (*Application) DeepCopyInto

func (in *Application) DeepCopyInto(out *Application)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BindableKinds added in v0.11.0

type BindableKinds struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Status []BindableKindsStatus `json:"status,omitempty"`
}

BindableKinds is the Schema for the bindablekinds API

func (*BindableKinds) DeepCopy added in v0.11.0

func (in *BindableKinds) DeepCopy() *BindableKinds

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BindableKinds.

func (*BindableKinds) DeepCopyInto added in v0.11.0

func (in *BindableKinds) DeepCopyInto(out *BindableKinds)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BindableKinds) DeepCopyObject added in v0.11.0

func (in *BindableKinds) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BindableKindsList added in v0.11.0

type BindableKindsList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []BindableKinds `json:"items"`
}

BindableKindsList contains a list of BindableKinds

func (*BindableKindsList) DeepCopy added in v0.11.0

func (in *BindableKindsList) DeepCopy() *BindableKindsList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BindableKindsList.

func (*BindableKindsList) DeepCopyInto added in v0.11.0

func (in *BindableKindsList) DeepCopyInto(out *BindableKindsList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BindableKindsList) DeepCopyObject added in v0.11.0

func (in *BindableKindsList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BindableKindsStatus added in v0.11.0

type BindableKindsStatus struct {
	Group   string `json:"group"`
	Version string `json:"version"`
	Kind    string `json:"kind"`
}

BindableKindsStatus defines the observed state of BindableKinds

func (*BindableKindsStatus) DeepCopy added in v0.11.0

func (in *BindableKindsStatus) DeepCopy() *BindableKindsStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BindableKindsStatus.

func (*BindableKindsStatus) DeepCopyInto added in v0.11.0

func (in *BindableKindsStatus) DeepCopyInto(out *BindableKindsStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BindingPath

type BindingPath struct {
	// ContainersPath defines the path to the corev1.Containers reference.
	// If BindingPath is not specified, the default location is
	// "spec.template.spec.containers".
	// +optional
	ContainersPath string `json:"containersPath"`

	// SecretPath defines the path to a string field where the name of the
	// secret object is going to be assigned.  Note: The name of the secret
	// object is same as that of the name of service binding custom resource
	// (metadata.name).
	// +optional
	SecretPath string `json:"secretPath"`
}

BindingPath defines the path to the field where the binding would be embedded in the workload.

func (*BindingPath) DeepCopy

func (in *BindingPath) DeepCopy() *BindingPath

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BindingPath.

func (*BindingPath) DeepCopyInto

func (in *BindingPath) DeepCopyInto(out *BindingPath)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Mapping

type Mapping struct {
	// Name is the name of new binding.
	Name string `json:"name"`

	// Value specificies a go template that will be rendered and injected
	// into the application.
	Value string `json:"value"`
}

ServiceBindingMapping defines a new binding from a set of existing bindings.

func (*Mapping) DeepCopy

func (in *Mapping) DeepCopy() *Mapping

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mapping.

func (*Mapping) DeepCopyInto

func (in *Mapping) DeepCopyInto(out *Mapping)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NamespacedRef

type NamespacedRef struct {
	Ref `json:",inline"`

	// Namespace of the referent.  If unspecified, assumes the same namespace as
	// ServiceBinding.
	// +optional
	Namespace *string `json:"namespace,omitempty"`
}

NamespacedRef is an object reference in some namespace.

func (*NamespacedRef) DeepCopy

func (in *NamespacedRef) DeepCopy() *NamespacedRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedRef.

func (*NamespacedRef) DeepCopyInto

func (in *NamespacedRef) DeepCopyInto(out *NamespacedRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Ref

type Ref struct {

	// Group of the referent.
	Group string `json:"group"`

	// Version of the referent.
	Version string `json:"version"`

	// Kind of the referent.
	// +optional
	Kind string `json:"kind,omitempty"`

	// Resource of the referent.
	// +optional
	Resource string `json:"resource,omitempty"`

	// Name of the referent.
	Name string `json:"name,omitempty"`
}

Ref identifies an object reference in the same namespace. +mapType=atomic

func (*Ref) DeepCopy

func (in *Ref) DeepCopy() *Ref

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ref.

func (*Ref) DeepCopyInto

func (in *Ref) DeepCopyInto(out *Ref)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Ref) GroupVersionKind

func (ref *Ref) GroupVersionKind() (*schema.GroupVersionKind, error)

Returns GVK of reference if available, otherwise error

func (*Ref) GroupVersionResource

func (ref *Ref) GroupVersionResource() (*schema.GroupVersionResource, error)

Returns GVR of reference if available, otherwise error

type Service

type Service struct {
	NamespacedRef `json:",inline"`

	Id *string `json:"id,omitempty"`
}

Service defines the selector based on resource name, version, and resource kind.

func (*Service) DeepCopy

func (in *Service) DeepCopy() *Service

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.

func (*Service) DeepCopyInto

func (in *Service) DeepCopyInto(out *Service)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceBinding

type ServiceBinding struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ServiceBindingSpec   `json:"spec"`
	Status ServiceBindingStatus `json:"status,omitempty"`
}

func (*ServiceBinding) AsOwnerReference

func (sbr *ServiceBinding) AsOwnerReference() metav1.OwnerReference

func (*ServiceBinding) DeepCopy

func (in *ServiceBinding) DeepCopy() *ServiceBinding

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBinding.

func (*ServiceBinding) DeepCopyInto

func (in *ServiceBinding) DeepCopyInto(out *ServiceBinding)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceBinding) DeepCopyObject

func (in *ServiceBinding) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ServiceBinding) GetSpec added in v0.9.1

func (sb *ServiceBinding) GetSpec() interface{}

func (*ServiceBinding) HasDeletionTimestamp

func (sb *ServiceBinding) HasDeletionTimestamp() bool

func (*ServiceBinding) SetupWebhookWithManager

func (r *ServiceBinding) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ServiceBinding) StatusConditions

func (r *ServiceBinding) StatusConditions() []metav1.Condition

func (*ServiceBinding) ValidateCreate

func (r *ServiceBinding) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ServiceBinding) ValidateDelete

func (r *ServiceBinding) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ServiceBinding) ValidateUpdate

func (r *ServiceBinding) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ServiceBindingList

type ServiceBindingList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ServiceBinding `json:"items"`
}

ServiceBindingList contains a list of ServiceBinding.

func (*ServiceBindingList) DeepCopy

func (in *ServiceBindingList) DeepCopy() *ServiceBindingList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingList.

func (*ServiceBindingList) DeepCopyInto

func (in *ServiceBindingList) DeepCopyInto(out *ServiceBindingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceBindingList) DeepCopyObject

func (in *ServiceBindingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ServiceBindingSpec

type ServiceBindingSpec struct {
	// Name is the name of the service as projected into the workload container.  Defaults to .metadata.name.
	// +kubebuilder:validation:Pattern=`^[a-z0-9\-\.]*$`
	// +kubebuilder:validation:MaxLength=253
	// +optional
	Name string `json:"name,omitempty"`
	// NamingStrategy defines custom string template for preparing binding
	// names.  It can be set to pre-defined strategies: `none`,
	// `lowercase`, or `uppercase`.  Otherwise, it is treated as a custom
	// go template, and it is handled accordingly.
	// +optional
	NamingStrategy string `json:"namingStrategy,omitempty"`

	// Mappings specifies custom mappings.
	// +optional
	Mappings []Mapping `json:"mappings,omitempty"`

	// Services indicates the backing services to be connected to by an
	// application.  At least one service must be specified.
	// +kubebuilder:validation:MinItems:=1
	Services []Service `json:"services"`

	// Application identifies the application connecting to the backing
	// service.
	Application Application `json:"application"`

	// DetectBindingResources is a flag that, when set to true, will cause
	// SBO to search for binding information in the owned resources of the
	// specified services.  If this binding information exists, then the
	// application is bound to these subresources.
	// +optional
	DetectBindingResources bool `json:"detectBindingResources,omitempty"`

	// BindAsFiles makes the binding values available as files in the
	// application's container.  By default, values are mounted under the path
	// "/bindings"; this can be changed by setting the SERVICE_BINDING_ROOT
	// environment variable.
	// +optional
	// +kubebuilder:default:=true
	BindAsFiles bool `json:"bindAsFiles"`
}

ServiceBindingSpec defines the desired state of ServiceBinding.

func (*ServiceBindingSpec) DeepCopy

func (in *ServiceBindingSpec) DeepCopy() *ServiceBindingSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingSpec.

func (*ServiceBindingSpec) DeepCopyInto

func (in *ServiceBindingSpec) DeepCopyInto(out *ServiceBindingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceBindingSpec) NamingTemplate

func (spec *ServiceBindingSpec) NamingTemplate() string

type ServiceBindingStatus

type ServiceBindingStatus struct {
	// Conditions describes the state of the operator's reconciliation
	// functionality.
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`

	// Secret indicates the name of the binding secret.
	Secret string `json:"secret"`
}

ServiceBindingStatus defines the observed state of ServiceBinding. +k8s:openapi-gen=true

func (*ServiceBindingStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingStatus.

func (*ServiceBindingStatus) DeepCopyInto

func (in *ServiceBindingStatus) DeepCopyInto(out *ServiceBindingStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL