Documentation ¶
Overview ¶
Package v1alpha2 contains the v1alpha2 group Object resources of the Kubernetes provider. +kubebuilder:object:generate=true +groupName=kubernetes.crossplane.io +versionName=v1alpha2
Index ¶
- Constants
- Variables
- type ConnectionDetail
- type DependsOn
- type Object
- func (in *Object) DeepCopy() *Object
- func (in *Object) DeepCopyInto(out *Object)
- func (in *Object) DeepCopyObject() runtime.Object
- func (mg *Object) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *Object) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *Object) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *Object) GetProviderConfigReference() *xpv1.Reference
- func (mg *Object) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Object) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (g *Object) Hub()
- func (mg *Object) SetConditions(c ...xpv1.Condition)
- func (mg *Object) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *Object) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *Object) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Object) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Object) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type ObjectAction
- type ObjectList
- type ObjectObservation
- type ObjectParameters
- type ObjectSpec
- type ObjectStatus
- type PatchesFrom
- type Readiness
- type ReadinessPolicy
- type Reference
Constants ¶
const ( Group = "kubernetes.crossplane.io" Version = "v1alpha2" )
Package type metadata.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
var ( ObjectKind = reflect.TypeOf(Object{}).Name() ObjectGroupKind = schema.GroupKind{Group: Group, Kind: ObjectKind}.String() ObjectKindAPIVersion = ObjectKind + "." + SchemeGroupVersion.String() ObjectGroupVersionKind = SchemeGroupVersion.WithKind(ObjectKind) )
Object type metadata.
Functions ¶
This section is empty.
Types ¶
type ConnectionDetail ¶
type ConnectionDetail struct { v1.ObjectReference `json:",inline"` ToConnectionSecretKey string `json:"toConnectionSecretKey,omitempty"` }
ConnectionDetail represents an entry in the connection secret for an Object
func (*ConnectionDetail) DeepCopy ¶
func (in *ConnectionDetail) DeepCopy() *ConnectionDetail
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionDetail.
func (*ConnectionDetail) DeepCopyInto ¶
func (in *ConnectionDetail) DeepCopyInto(out *ConnectionDetail)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DependsOn ¶
type DependsOn struct { // APIVersion of the referenced object. // +kubebuilder:default=kubernetes.crossplane.io/v1alpha1 // +optional APIVersion string `json:"apiVersion,omitempty"` // Kind of the referenced object. // +kubebuilder:default=Object // +optional Kind string `json:"kind,omitempty"` // Name of the referenced object. Name string `json:"name"` // Namespace of the referenced object. // +optional Namespace string `json:"namespace,omitempty"` }
DependsOn refers to an object by Name, Kind, APIVersion, etc. It is used to reference other Object or arbitrary Kubernetes resource which is either cluster or namespace scoped.
func (*DependsOn) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DependsOn.
func (*DependsOn) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Object ¶
type Object struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ObjectSpec `json:"spec"` Status ObjectStatus `json:"status,omitempty"` }
A Object is an provider Kubernetes API type +kubebuilder:subresource:status +kubebuilder:printcolumn:name="KIND",type="string",JSONPath=".spec.forProvider.manifest.kind" +kubebuilder:printcolumn:name="APIVERSION",type="string",JSONPath=".spec.forProvider.manifest.apiVersion",priority=1 +kubebuilder:printcolumn:name="METANAME",type="string",JSONPath=".spec.forProvider.manifest.metadata.name",priority=1 +kubebuilder:printcolumn:name="METANAMESPACE",type="string",JSONPath=".spec.forProvider.manifest.metadata.namespace",priority=1 +kubebuilder:printcolumn:name="PROVIDERCONFIG",type="string",JSONPath=".spec.providerConfigRef.name" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,kubernetes} +kubebuilder:storageversion
func (*Object) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Object.
func (*Object) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Object) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Object) GetCondition ¶
func (mg *Object) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Object.
func (*Object) GetDeletionPolicy ¶
func (mg *Object) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Object.
func (*Object) GetManagementPolicies ¶
func (mg *Object) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this Object.
func (*Object) GetProviderConfigReference ¶
GetProviderConfigReference of this Object.
func (*Object) GetPublishConnectionDetailsTo ¶
func (mg *Object) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Object.
func (*Object) GetWriteConnectionSecretToReference ¶
func (mg *Object) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Object.
func (*Object) SetConditions ¶
SetConditions of this Object.
func (*Object) SetDeletionPolicy ¶
func (mg *Object) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Object.
func (*Object) SetManagementPolicies ¶
func (mg *Object) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this Object.
func (*Object) SetProviderConfigReference ¶
SetProviderConfigReference of this Object.
func (*Object) SetPublishConnectionDetailsTo ¶
func (mg *Object) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this Object.
func (*Object) SetWriteConnectionSecretToReference ¶
func (mg *Object) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Object.
type ObjectList ¶
type ObjectList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Object `json:"items"` }
ObjectList contains a list of Object
func (*ObjectList) DeepCopy ¶
func (in *ObjectList) DeepCopy() *ObjectList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectList.
func (*ObjectList) DeepCopyInto ¶
func (in *ObjectList) DeepCopyInto(out *ObjectList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ObjectList) DeepCopyObject ¶
func (in *ObjectList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ObjectList) GetItems ¶
func (l *ObjectList) GetItems() []resource.Managed
GetItems of this ObjectList.
type ObjectObservation ¶
type ObjectObservation struct { // Raw JSON representation of the remote object. // +kubebuilder:validation:EmbeddedResource // +kubebuilder:pruning:PreserveUnknownFields Manifest runtime.RawExtension `json:"manifest,omitempty"` }
ObjectObservation are the observable fields of a Object.
func (*ObjectObservation) DeepCopy ¶
func (in *ObjectObservation) DeepCopy() *ObjectObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectObservation.
func (*ObjectObservation) DeepCopyInto ¶
func (in *ObjectObservation) DeepCopyInto(out *ObjectObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectParameters ¶
type ObjectParameters struct { // Raw JSON representation of the kubernetes object to be created. // +kubebuilder:validation:EmbeddedResource // +kubebuilder:pruning:PreserveUnknownFields Manifest runtime.RawExtension `json:"manifest"` }
ObjectParameters are the configurable fields of a Object.
func (*ObjectParameters) DeepCopy ¶
func (in *ObjectParameters) DeepCopy() *ObjectParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectParameters.
func (*ObjectParameters) DeepCopyInto ¶
func (in *ObjectParameters) DeepCopyInto(out *ObjectParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectSpec ¶
type ObjectSpec struct { xpv1.ResourceSpec `json:",inline"` ConnectionDetails []ConnectionDetail `json:"connectionDetails,omitempty"` ForProvider ObjectParameters `json:"forProvider"` References []Reference `json:"references,omitempty"` Readiness Readiness `json:"readiness,omitempty"` // Watch enables watching the referenced or managed kubernetes resources. // // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored // unless "watches" feature gate is enabled, and may be changed or removed // without notice. // +optional // +kubebuilder:default=false Watch bool `json:"watch,omitempty"` }
A ObjectSpec defines the desired state of a Object.
func (*ObjectSpec) DeepCopy ¶
func (in *ObjectSpec) DeepCopy() *ObjectSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectSpec.
func (*ObjectSpec) DeepCopyInto ¶
func (in *ObjectSpec) DeepCopyInto(out *ObjectSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectStatus ¶
type ObjectStatus struct { xpv1.ResourceStatus `json:",inline"` AtProvider ObjectObservation `json:"atProvider,omitempty"` }
A ObjectStatus represents the observed state of a Object.
func (*ObjectStatus) DeepCopy ¶
func (in *ObjectStatus) DeepCopy() *ObjectStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStatus.
func (*ObjectStatus) DeepCopyInto ¶
func (in *ObjectStatus) DeepCopyInto(out *ObjectStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PatchesFrom ¶
type PatchesFrom struct { DependsOn `json:",inline"` // FieldPath is the path of the field on the resource whose value is to be // used as input. FieldPath *string `json:"fieldPath"` }
PatchesFrom refers to an object by Name, Kind, APIVersion, etc., and patch fields from this object.
func (*PatchesFrom) DeepCopy ¶
func (in *PatchesFrom) DeepCopy() *PatchesFrom
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatchesFrom.
func (*PatchesFrom) DeepCopyInto ¶
func (in *PatchesFrom) DeepCopyInto(out *PatchesFrom)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Readiness ¶
type Readiness struct { // Policy defines how the Object's readiness condition should be computed. // +optional // +kubebuilder:validation:Enum=SuccessfulCreate;DeriveFromObject;AllTrue;DeriveFromCelQuery // +kubebuilder:default=SuccessfulCreate Policy ReadinessPolicy `json:"policy,omitempty"` // CelQuery defines a cel query to evaluate the readiness. The // observed object is passed to the cel query with the word `object`. // Cel macros are available to be used, see https://github.com/google/cel-spec/blob/master/doc/langdef.md#macros // for more information. // Examples: // `object.status.isReady == true`: checks for a boolean field called isReady on status. // `object.status.conditions.all(x, x.status == "True")` mimics the behavior of the AllTrue readiness policy // `object.status.conditions.exists(c, c.type == "condition1" && c.status == "True" )` checks just one condition CelQuery string `json:"celQuery,omitempty"` }
Readiness defines how the object's readiness condition should be computed, if not specified it will be considered ready as soon as the underlying external resource is considered up-to-date. +kubebuilder:validation:XValidation:rule="self.policy != 'DeriveFromCelQuery' || (self.policy == 'DeriveFromCelQuery' && size(self.celQuery) > 0)",message="celQuery must be set if policy is DeriveFromCelQuery"
func (*Readiness) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Readiness.
func (*Readiness) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReadinessPolicy ¶
type ReadinessPolicy string
ReadinessPolicy defines how the Object's readiness condition should be computed.
const ( // ReadinessPolicySuccessfulCreate means the object is marked as ready when the // underlying external resource is successfully created. ReadinessPolicySuccessfulCreate ReadinessPolicy = "SuccessfulCreate" // ReadinessPolicyDeriveFromObject means the object is marked as ready if and only if the underlying // external resource is considered ready. ReadinessPolicyDeriveFromObject ReadinessPolicy = "DeriveFromObject" // ReadinessPolicyAllTrue means that all conditions have status true on the object. // There must be at least one condition. ReadinessPolicyAllTrue ReadinessPolicy = "AllTrue" // ReadinessPolicyDeriveFromCelQuery means that a cel expression will be used to calculate the overall status. // The cel expression must be provided on the readiness struct. ReadinessPolicyDeriveFromCelQuery ReadinessPolicy = "DeriveFromCelQuery" )
type Reference ¶
type Reference struct { // DependsOn is used to declare dependency on other Object or arbitrary // Kubernetes resource. // +optional *DependsOn `json:"dependsOn,omitempty"` // PatchesFrom is used to declare dependency on other Object or arbitrary // Kubernetes resource, and also patch fields from this object. // +optional *PatchesFrom `json:"patchesFrom,omitempty"` // ToFieldPath is the path of the field on the resource whose value will // be changed with the result of transforms. Leave empty if you'd like to // propagate to the same path as patchesFrom.fieldPath. // +optional ToFieldPath *string `json:"toFieldPath,omitempty"` }
Reference refers to an Object or arbitrary Kubernetes resource and optionally patch values from that resource to the current Object.
func (*Reference) ApplyFromFieldPathPatch ¶
ApplyFromFieldPathPatch patches the "to" resource, using a source field on the "from" resource.
func (*Reference) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Reference.
func (*Reference) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.