Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the apps v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=operators.coreos.com
Package v1alpha1 contains API Schema definitions for the operators v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=operators.coreos.com
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "operators.coreos.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
Functions ¶
func GetOpenAPIDefinitions ¶
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
Types ¶
type Application ¶
type Application struct {
corev1.LocalObjectReference `json:",inline"`
// +optional
LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`
metav1.GroupVersionResource `json:",inline"`
// BindingPath refers to the paths in the application workload's schema
// where the binding workload would be referenced.
// If BindingPath is not specified the default path locations is going to
// be used. The default location for ContainersPath is
// going to be: "spec.template.spec.containers" and if SecretPath
// is not specified, the name of the secret object is not going
// to be specified.
// +optional
BindingPath *BindingPath `json:"bindingPath,omitempty"`
}
Application defines the selector based on labels and GVR
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 BindingPath ¶
type BindingPath struct {
// ContainersPath defines the path to the corev1.Containers reference
// If BindingPath is not specified, the default location is
// going to be: "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 SBR CR (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 BoundApplication ¶
type BoundApplication struct {
metav1.GroupVersionKind `json:",inline"`
corev1.LocalObjectReference `json:",inline"`
}
BoundApplication defines the application workloads to which the binding secret has injected.
func (*BoundApplication) DeepCopy ¶
func (in *BoundApplication) DeepCopy() *BoundApplication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BoundApplication.
func (*BoundApplication) DeepCopyInto ¶
func (in *BoundApplication) DeepCopyInto(out *BoundApplication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Service ¶
type Service struct {
metav1.GroupVersionKind `json:",inline"`
corev1.LocalObjectReference `json:",inline"`
// +optional
Namespace *string `json:"namespace,omitempty"`
EnvVarPrefix *string `json:"envVarPrefix,omitempty"`
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"`
// +required
Spec ServiceBindingSpec `json:"spec"`
Status ServiceBindingStatus `json:"status,omitempty"`
}
ServiceBinding expresses intent to bind an operator-backed service with an application workload. +k8s:openapi-gen=true +kubebuilder:subresource:status +operator-sdk:gen-csv:customresourcedefinitions.displayName="Service Binding" +kubebuilder:resource:path=servicebindings,shortName=sbr;sbrs
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.
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 {
// MountPath is the path inside app container where bindings will be mounted
// If `SERVICE_BINDING_ROOT` env var is present, mountPath is ignored.
// If `SERVICE_BINDING_ROOT` is absent and mountPath is present, set `SERVICE_BINDING_ROOT` as mountPath value
// If `SERVICE_BINDING_ROOT` is absent but mounthPath is absent, set SERVICE_BINDING_ROOT as `/bindings`
// When mountPath is used, the file will be mounted directly under that directory
// Otherwise it will be under `SERVICE_BINDING_ROOT`/<SERVICE-BINDING-NAME>
// +optional
MountPath string `json:"mountPath,omitempty"`
// EnvVarPrefix is the prefix for environment variables
// +optional
EnvVarPrefix string `json:"envVarPrefix,omitempty"`
// Custom env variables
// +optional
CustomEnvVar []corev1.EnvVar `json:"customEnvVar,omitempty"`
// Services is used to identify multiple backing services.
// +kubebuilder:validation:MinItems:=1
Services []Service `json:"services"`
// Application is used to identify the application connecting to the
// backing service operator.
// +optional
Application *Application `json:"application,omitempty"`
// DetectBindingResources is flag used to bind all non-bindable variables from
// different subresources owned by backing operator CR.
// +optional
DetectBindingResources *bool `json:"detectBindingResources,omitempty"`
// BindAsFiles makes available the binding values as files in the application's container
// See MountPath attribute description for more details.
// +optional
BindAsFiles bool `json:"bindAsFiles,omitempty"`
}
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.
type ServiceBindingStatus ¶
type ServiceBindingStatus struct {
// Conditions describes the state of the operator's reconciliation functionality.
// +listType=set
Conditions []conditionsv1.Condition `json:"conditions"`
// Secret is the name of the intermediate secret
Secret string `json:"secret"`
// Applications contain all the applications filtered by name or label
// +optional
// +listType=set
Applications []BoundApplication `json:"applications,omitempty"`
}
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.