Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the operators v1alpha1 API group +kubebuilder:object:generate=true +groupName=binding.operators.coreos.com
Index ¶
- Variables
- type Application
- type BindableKinds
- type BindableKindsList
- type BindableKindsStatus
- type BindingPath
- type Mapping
- type NamespacedRef
- type Ref
- type Service
- type ServiceBinding
- func (sbr *ServiceBinding) AsOwnerReference() metav1.OwnerReference
- func (in *ServiceBinding) DeepCopy() *ServiceBinding
- func (in *ServiceBinding) DeepCopyInto(out *ServiceBinding)
- func (in *ServiceBinding) DeepCopyObject() runtime.Object
- func (sb *ServiceBinding) GetSpec() interface{}
- func (sb *ServiceBinding) HasDeletionTimestamp() bool
- func (r *ServiceBinding) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *ServiceBinding) StatusConditions() []metav1.Condition
- func (r *ServiceBinding) ValidateCreate() (admission.Warnings, error)
- func (r *ServiceBinding) ValidateDelete() (admission.Warnings, error)
- func (r *ServiceBinding) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type ServiceBindingList
- type ServiceBindingSpec
- type ServiceBindingStatus
Constants ¶
This section is empty.
Variables ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mapping.
func (*Mapping) DeepCopyInto ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ref.
func (*Ref) DeepCopyInto ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
func (*Service) DeepCopyInto ¶
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 ¶
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 ¶
func (in *ServiceBindingStatus) DeepCopy() *ServiceBindingStatus
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.