Documentation ¶
Overview ¶
Package v1alpha3 contains API Schema definitions for the spec v1alpha3 API group +kubebuilder:object:generate=true +groupName=servicebinding.io
Index ¶
- Variables
- type ClusterWorkloadResourceMapping
- type ClusterWorkloadResourceMappingContainer
- type ClusterWorkloadResourceMappingList
- type ClusterWorkloadResourceMappingSpec
- type ClusterWorkloadResourceMappingTemplate
- type EnvMapping
- type ServiceBinding
- 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) StatusConditions() []metav1.Condition
- type ServiceBindingList
- type ServiceBindingSecretReference
- type ServiceBindingServiceReference
- type ServiceBindingSpec
- type ServiceBindingStatus
- type ServiceBindingWorkloadReference
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "servicebinding.io", Version: "v1alpha3"} // 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 )
var DefaultTemplate = ClusterWorkloadResourceMappingTemplate{ Version: "*", Annotations: ".spec.template.spec.annotations", Volumes: ".spec.template.spec.volumes", Containers: []ClusterWorkloadResourceMappingContainer{ { Path: ".spec.template.spec.containers[*]", Name: ".name", Env: ".env", VolumeMounts: ".volumeMounts", }, { Path: ".spec.template.spec.initContainers[*]", Name: ".name", Env: ".env", VolumeMounts: ".volumeMounts", }, }, }
Functions ¶
This section is empty.
Types ¶
type ClusterWorkloadResourceMapping ¶ added in v1.1.0
type ClusterWorkloadResourceMapping struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterWorkloadResourceMappingSpec `json:"spec,omitempty"` }
ClusterWorkloadResourceMapping is the Schema for the clusterworkloadresourcemappings API
func (*ClusterWorkloadResourceMapping) DeepCopy ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMapping) DeepCopy() *ClusterWorkloadResourceMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterWorkloadResourceMapping.
func (*ClusterWorkloadResourceMapping) DeepCopyInto ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMapping) DeepCopyInto(out *ClusterWorkloadResourceMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterWorkloadResourceMapping) DeepCopyObject ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMapping) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterWorkloadResourceMappingContainer ¶ added in v1.1.0
type ClusterWorkloadResourceMappingContainer struct { // Path is the JSONPath within the workload resource that matches an existing fragment that is container-like. Path string `json:"path"` // Name is a Restricted JSONPath that references the name of the container with the container-like workload resource // fragment. If not defined, container name filtering is ignored. // +optional Name string `json:"name,omitempty"` // Env is a Restricted JSONPath that references the slice of environment variables for the container with the // container-like workload resource fragment. The referenced location is created if it does not exist. Defaults // to `.envs`. // +optional Env string `json:"env,omitempty"` // VolumeMounts is a Restricted JSONPath that references the slice of volume mounts for the container with the // container-like workload resource fragment. The referenced location is created if it does not exist. Defaults // to `.volumeMounts`. // +optional VolumeMounts string `json:"volumeMounts,omitempty"` }
ClusterWorkloadResourceMappingContainer defines the mapping for a specific fragment of an workload resource to a Container-like structure.
Each mapping defines exactly one path that may match multiple container-like fragments within the workload resource. For each object matching the path the name, env and volumeMounts expressions are resolved to find those structures.
func (*ClusterWorkloadResourceMappingContainer) DeepCopy ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingContainer) DeepCopy() *ClusterWorkloadResourceMappingContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterWorkloadResourceMappingContainer.
func (*ClusterWorkloadResourceMappingContainer) DeepCopyInto ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingContainer) DeepCopyInto(out *ClusterWorkloadResourceMappingContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterWorkloadResourceMappingList ¶ added in v1.1.0
type ClusterWorkloadResourceMappingList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ClusterWorkloadResourceMapping `json:"items"` }
ClusterWorkloadResourceMappingList contains a list of ClusterWorkloadResourceMapping
func (*ClusterWorkloadResourceMappingList) DeepCopy ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingList) DeepCopy() *ClusterWorkloadResourceMappingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterWorkloadResourceMappingList.
func (*ClusterWorkloadResourceMappingList) DeepCopyInto ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingList) DeepCopyInto(out *ClusterWorkloadResourceMappingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterWorkloadResourceMappingList) DeepCopyObject ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterWorkloadResourceMappingSpec ¶ added in v1.1.0
type ClusterWorkloadResourceMappingSpec struct { // Versions is the collection of versions for a given resource, with mappings. Versions []ClusterWorkloadResourceMappingTemplate `json:"versions,omitempty"` }
ClusterWorkloadResourceMappingSpec defines the desired state of ClusterWorkloadResourceMapping
func (*ClusterWorkloadResourceMappingSpec) DeepCopy ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingSpec) DeepCopy() *ClusterWorkloadResourceMappingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterWorkloadResourceMappingSpec.
func (*ClusterWorkloadResourceMappingSpec) DeepCopyInto ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingSpec) DeepCopyInto(out *ClusterWorkloadResourceMappingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterWorkloadResourceMappingTemplate ¶ added in v1.1.0
type ClusterWorkloadResourceMappingTemplate struct { // Version is the version of the workload resource that this mapping is for. Version string `json:"version"` // Annotations is a Restricted JSONPath that references the annotations map within the workload resource. These // annotations must end up in the resulting Pod, and are generally not the workload resource's annotations. // Defaults to `.spec.template.metadata.annotations`. // +optional Annotations string `json:"annotations,omitempty"` // Containers is the collection of mappings to container-like fragments of the workload resource. Defaults to // mappings appropriate for a PodSpecable resource. // +optional Containers []ClusterWorkloadResourceMappingContainer `json:"containers,omitempty"` // Volumes is a Restricted JSONPath that references the slice of volumes within the workload resource. Defaults to // `.spec.template.spec.volumes`. // +optional Volumes string `json:"volumes,omitempty"` }
ClusterWorkloadResourceMappingTemplate defines the mapping for a specific version of an workload resource to a logical PodTemplateSpec-like structure.
func (*ClusterWorkloadResourceMappingTemplate) DeepCopy ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingTemplate) DeepCopy() *ClusterWorkloadResourceMappingTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterWorkloadResourceMappingTemplate.
func (*ClusterWorkloadResourceMappingTemplate) DeepCopyInto ¶ added in v1.1.0
func (in *ClusterWorkloadResourceMappingTemplate) DeepCopyInto(out *ClusterWorkloadResourceMappingTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvMapping ¶
type EnvMapping struct { // Name is the name of the environment variable Name string `json:"name"` // Key is the key in the Secret that will be exposed Key string `json:"key"` }
EnvMapping defines a mapping from the value of a Secret entry to an environment variable
func (*EnvMapping) DeepCopy ¶
func (in *EnvMapping) DeepCopy() *EnvMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvMapping.
func (*EnvMapping) DeepCopyInto ¶
func (in *EnvMapping) DeepCopyInto(out *EnvMapping)
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,omitempty"` Status ServiceBindingStatus `json:"status,omitempty"` }
ServiceBinding is the Schema for the servicebindings API
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 ¶
func (sb *ServiceBinding) GetSpec() interface{}
func (*ServiceBinding) HasDeletionTimestamp ¶
func (sb *ServiceBinding) HasDeletionTimestamp() bool
func (*ServiceBinding) StatusConditions ¶
func (r *ServiceBinding) StatusConditions() []metav1.Condition
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 ServiceBindingSecretReference ¶
type ServiceBindingSecretReference struct { // Name of the referent secret. // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names Name string `json:"name"` }
ServiceBindingSecretReference defines a mirror of corev1.LocalObjectReference
func (*ServiceBindingSecretReference) DeepCopy ¶
func (in *ServiceBindingSecretReference) DeepCopy() *ServiceBindingSecretReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingSecretReference.
func (*ServiceBindingSecretReference) DeepCopyInto ¶
func (in *ServiceBindingSecretReference) DeepCopyInto(out *ServiceBindingSecretReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceBindingServiceReference ¶
type ServiceBindingServiceReference struct { // API version of the referent. APIVersion string `json:"apiVersion"` // Kind of the referent. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds Kind string `json:"kind"` // Name of the referent. // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names Name string `json:"name"` }
ServiceBindingServiceReference defines a subset of corev1.ObjectReference
func (*ServiceBindingServiceReference) DeepCopy ¶
func (in *ServiceBindingServiceReference) DeepCopy() *ServiceBindingServiceReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingServiceReference.
func (*ServiceBindingServiceReference) DeepCopyInto ¶
func (in *ServiceBindingServiceReference) DeepCopyInto(out *ServiceBindingServiceReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 Name string `json:"name,omitempty"` // Type is the type of the service as projected into the workload container Type string `json:"type,omitempty"` // Provider is the provider of the service as projected into the workload container Provider string `json:"provider,omitempty"` // Workload is a reference to an object Workload ServiceBindingWorkloadReference `json:"workload"` // Service is a reference to an object that fulfills the ProvisionedService duck type Service ServiceBindingServiceReference `json:"service"` // Env is the collection of mappings from Secret entries to environment variables Env []EnvMapping `json:"env,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 { // ObservedGeneration is the 'Generation' of the ServiceBinding that // was last processed by the controller. ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions are the conditions of this ServiceBinding Conditions []metav1.Condition `json:"conditions,omitempty"` // Binding exposes the projected secret for this ServiceBinding Binding *ServiceBindingSecretReference `json:"binding,omitempty"` }
ServiceBindingStatus defines the observed state of ServiceBinding
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.
type ServiceBindingWorkloadReference ¶
type ServiceBindingWorkloadReference struct { // API version of the referent. APIVersion string `json:"apiVersion"` // Kind of the referent. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds Kind string `json:"kind"` // Name of the referent. // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names Name string `json:"name,omitempty"` // Selector is a query that selects the workload or workloads to bind the service to Selector *metav1.LabelSelector `json:"selector,omitempty"` // Containers describes which containers in a Pod should be bound to Containers []string `json:"containers,omitempty"` }
ServiceBindingWorkloadReference defines a subset of corev1.ObjectReference with extensions
func (*ServiceBindingWorkloadReference) DeepCopy ¶
func (in *ServiceBindingWorkloadReference) DeepCopy() *ServiceBindingWorkloadReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingWorkloadReference.
func (*ServiceBindingWorkloadReference) DeepCopyInto ¶
func (in *ServiceBindingWorkloadReference) DeepCopyInto(out *ServiceBindingWorkloadReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.