Documentation ¶
Overview ¶
Package v1 contains API types that extend the Crossplane API. +kubebuilder:object:generate=true +groupName=apiextensions.crossplane.io +versionName=v1
Index ¶
- Constants
- Variables
- func ConvertRawExtension(in runtime.RawExtension) runtime.RawExtension
- func ConvertResourceQuantity(in *resource.Quantity) *resource.Quantity
- func LatestRevision(c *Composition, revs []v1beta1.CompositionRevision) *v1beta1.CompositionRevision
- func TerminatingClaim() xpv1.Condition
- func TerminatingComposite() xpv1.Condition
- func WatchingClaim() xpv1.Condition
- func WatchingComposite() xpv1.Condition
- type Combine
- type CombineStrategy
- type CombineVariable
- type ComposedTemplate
- type CompositeResourceDefinition
- func (in *CompositeResourceDefinition) DeepCopy() *CompositeResourceDefinition
- func (in *CompositeResourceDefinition) DeepCopyInto(out *CompositeResourceDefinition)
- func (in *CompositeResourceDefinition) DeepCopyObject() runtime.Object
- func (in CompositeResourceDefinition) GetClaimGroupVersionKind() schema.GroupVersionKind
- func (in CompositeResourceDefinition) GetCompositeGroupVersionKind() schema.GroupVersionKind
- func (in *CompositeResourceDefinition) GetConnectionSecretKeys() []string
- func (in CompositeResourceDefinition) OffersClaim() bool
- func (in *CompositeResourceDefinition) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (in *CompositeResourceDefinition) ValidateCreate() error
- func (in *CompositeResourceDefinition) ValidateDelete() error
- func (in *CompositeResourceDefinition) ValidateUpdate(old runtime.Object) error
- type CompositeResourceDefinitionControllerStatus
- type CompositeResourceDefinitionList
- type CompositeResourceDefinitionSpec
- type CompositeResourceDefinitionStatus
- type CompositeResourceDefinitionVersion
- type CompositeResourceValidation
- type Composition
- type CompositionList
- type CompositionReference
- type CompositionSpec
- type ConnectionDetail
- type ConnectionDetailType
- type ContainerFunction
- type ContainerFunctionNetwork
- type ContainerFunctionNetworkPolicy
- type ContainerFunctionResourceLimits
- type ContainerFunctionResources
- type ContainerFunctionRunner
- type ConvertTransform
- type ConvertTransformFormat
- type EnvironmentConfiguration
- type EnvironmentPatch
- type EnvironmentSource
- type EnvironmentSourceReference
- type EnvironmentSourceSelector
- type EnvironmentSourceSelectorLabelMatcher
- type EnvironmentSourceSelectorLabelMatcherType
- type EnvironmentSourceType
- type FromFieldPathPolicy
- type Function
- type FunctionType
- type GeneratedRevisionSpecConverter
- func (in *GeneratedRevisionSpecConverter) DeepCopy() *GeneratedRevisionSpecConverter
- func (in *GeneratedRevisionSpecConverter) DeepCopyInto(out *GeneratedRevisionSpecConverter)
- func (c *GeneratedRevisionSpecConverter) FromRevisionSpec(source v1beta1.CompositionRevisionSpec) CompositionSpec
- func (c *GeneratedRevisionSpecConverter) ToRevisionSpec(source CompositionSpec) v1beta1.CompositionRevisionSpec
- type MapTransform
- type MatchTransform
- type MatchTransformPattern
- type MatchTransformPatternType
- type MathTransform
- type Patch
- type PatchPolicy
- type PatchSet
- type PatchType
- type ReadinessCheck
- type ReadinessCheckType
- type RevisionSpecConverter
- type StoreConfigReference
- type StringCombine
- type StringConversionType
- type StringTransform
- type StringTransformRegexp
- type StringTransformType
- type Transform
- type TransformType
- type TypeReference
Constants ¶
const ( ConvertTransformTypeString = "string" ConvertTransformTypeBool = "bool" ConvertTransformTypeInt = "int" ConvertTransformTypeInt64 = "int64" ConvertTransformTypeFloat64 = "float64" )
The list of supported ConvertTransform input and output types.
const ( // A TypeEstablished XRD has created the CRD for its composite resource and // started a controller to reconcile instances of said resource. TypeEstablished xpv1.ConditionType = "Established" // A TypeOffered XRD has created the CRD for its composite resource claim // and started a controller to reconcile instances of said claim. TypeOffered xpv1.ConditionType = "Offered" )
Condition types.
const ( ReasonWatchingComposite xpv1.ConditionReason = "WatchingCompositeResource" ReasonWatchingClaim xpv1.ConditionReason = "WatchingCompositeResourceClaim" ReasonTerminatingComposite xpv1.ConditionReason = "TerminatingCompositeResource" ReasonTerminatingClaim xpv1.ConditionReason = "TerminatingCompositeResourceClaim" )
Reasons a resource is or is not established or offered.
const ( Group = "apiextensions.crossplane.io" Version = "v1" )
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} // AddToScheme adds all registered types to scheme AddToScheme = SchemeBuilder.AddToScheme )
var ( CompositeResourceDefinitionKind = reflect.TypeOf(CompositeResourceDefinition{}).Name() CompositeResourceDefinitionGroupKind = schema.GroupKind{Group: Group, Kind: CompositeResourceDefinitionKind}.String() CompositeResourceDefinitionKindAPIVersion = CompositeResourceDefinitionKind + "." + SchemeGroupVersion.String() CompositeResourceDefinitionGroupVersionKind = SchemeGroupVersion.WithKind(CompositeResourceDefinitionKind) )
CompositeResourceDefinition type metadata.
var ( CompositionKind = reflect.TypeOf(Composition{}).Name() CompositionGroupKind = schema.GroupKind{Group: Group, Kind: CompositionKind}.String() CompositionKindAPIVersion = CompositionKind + "." + SchemeGroupVersion.String() CompositionGroupVersionKind = SchemeGroupVersion.WithKind(CompositionKind) )
Composition type metadata.
Functions ¶
func ConvertRawExtension ¶ added in v1.11.0
func ConvertRawExtension(in runtime.RawExtension) runtime.RawExtension
ConvertRawExtension 'converts' a RawExtension by producing a deepcopy. This is necessary because goverter can't convert an embedded runtime.Object.
func ConvertResourceQuantity ¶ added in v1.11.0
ConvertResourceQuantity 'converts' a Quantity by producing a deepcopy. This is necessary because goverter can't convert a Quantity's unexported fields.
func LatestRevision ¶ added in v1.11.0
func LatestRevision(c *Composition, revs []v1beta1.CompositionRevision) *v1beta1.CompositionRevision
LatestRevision returns the latest revision of the supplied composition. We use a hash of the labels, the annotations, and the spec to decide to create a new revision. If we revert back to an older state, we increase the existing revision's revision number.
func TerminatingClaim ¶
TerminatingClaim indicates that Crossplane is terminating the controller and removing the definition of a composite resource claim.
func TerminatingComposite ¶
TerminatingComposite indicates that Crossplane is terminating the controller for and removing the definition of a composite resource.
func WatchingClaim ¶
WatchingClaim indicates that Crossplane has defined and is watching for a new kind of composite resource claim.
func WatchingComposite ¶
WatchingComposite indicates that Crossplane has defined and is watching for a new kind of composite resource.
Types ¶
type Combine ¶ added in v1.3.0
type Combine struct { // Variables are the list of variables whose values will be retrieved and // combined. // +kubebuilder:validation:MinItems=1 Variables []CombineVariable `json:"variables"` // Strategy defines the strategy to use to combine the input variable values. // Currently only string is supported. // +kubebuilder:validation:Enum=string Strategy CombineStrategy `json:"strategy"` // String declares that input variables should be combined into a single // string, using the relevant settings for formatting purposes. // +optional String *StringCombine `json:"string,omitempty"` }
A Combine configures a patch that combines more than one input field into a single output field.
func (*Combine) DeepCopy ¶ added in v1.3.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Combine.
func (*Combine) DeepCopyInto ¶ added in v1.3.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CombineStrategy ¶ added in v1.3.0
type CombineStrategy string
A CombineStrategy determines what strategy will be applied to combine variables.
const (
CombineStrategyString CombineStrategy = "string"
)
CombineStrategy strategy definitions.
type CombineVariable ¶ added in v1.3.0
type CombineVariable struct { // FromFieldPath is the path of the field on the source whose value is // to be used as input. FromFieldPath string `json:"fromFieldPath"` }
A CombineVariable defines the source of a value that is combined with others to form and patch an output value. Currently, this only supports retrieving values from a field path.
func (*CombineVariable) DeepCopy ¶ added in v1.3.0
func (in *CombineVariable) DeepCopy() *CombineVariable
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CombineVariable.
func (*CombineVariable) DeepCopyInto ¶ added in v1.3.0
func (in *CombineVariable) DeepCopyInto(out *CombineVariable)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComposedTemplate ¶
type ComposedTemplate struct { // A Name uniquely identifies this entry within its Composition's resources // array. Names are optional but *strongly* recommended. When all entries in // the resources array are named entries may added, deleted, and reordered // as long as their names do not change. When entries are not named the // length and order of the resources array should be treated as immutable. // Either all or no entries must be named. // +optional Name *string `json:"name,omitempty"` // Base is the target resource that the patches will be applied on. // +kubebuilder:pruning:PreserveUnknownFields // +kubebuilder:validation:EmbeddedResource Base runtime.RawExtension `json:"base"` // Patches will be applied as overlay to the base resource. // +optional Patches []Patch `json:"patches,omitempty"` // ConnectionDetails lists the propagation secret keys from this target // resource to the composition instance connection secret. // +optional ConnectionDetails []ConnectionDetail `json:"connectionDetails,omitempty"` // ReadinessChecks allows users to define custom readiness checks. All checks // have to return true in order for resource to be considered ready. The // default readiness check is to have the "Ready" condition to be "True". // +optional ReadinessChecks []ReadinessCheck `json:"readinessChecks,omitempty"` }
ComposedTemplate is used to provide information about how the composed resource should be processed.
func (*ComposedTemplate) DeepCopy ¶
func (in *ComposedTemplate) DeepCopy() *ComposedTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComposedTemplate.
func (*ComposedTemplate) DeepCopyInto ¶
func (in *ComposedTemplate) DeepCopyInto(out *ComposedTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CompositeResourceDefinition ¶
type CompositeResourceDefinition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CompositeResourceDefinitionSpec `json:"spec,omitempty"` Status CompositeResourceDefinitionStatus `json:"status,omitempty"` }
A CompositeResourceDefinition defines a new kind of composite infrastructure resource. The new resource is composed of other composite or managed infrastructure resources. +kubebuilder:printcolumn:name="ESTABLISHED",type="string",JSONPath=".status.conditions[?(@.type=='Established')].status" +kubebuilder:printcolumn:name="OFFERED",type="string",JSONPath=".status.conditions[?(@.type=='Offered')].status" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories=crossplane,shortName=xrd;xrds
func (*CompositeResourceDefinition) DeepCopy ¶
func (in *CompositeResourceDefinition) DeepCopy() *CompositeResourceDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeResourceDefinition.
func (*CompositeResourceDefinition) DeepCopyInto ¶
func (in *CompositeResourceDefinition) DeepCopyInto(out *CompositeResourceDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CompositeResourceDefinition) DeepCopyObject ¶
func (in *CompositeResourceDefinition) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (CompositeResourceDefinition) GetClaimGroupVersionKind ¶
func (in CompositeResourceDefinition) GetClaimGroupVersionKind() schema.GroupVersionKind
GetClaimGroupVersionKind returns the schema.GroupVersionKind of the CRD for the composite resource claim this CompositeResourceDefinition defines. An empty GroupVersionKind is returned if the CompositeResourceDefinition does not offer a claim.
func (CompositeResourceDefinition) GetCompositeGroupVersionKind ¶
func (in CompositeResourceDefinition) GetCompositeGroupVersionKind() schema.GroupVersionKind
GetCompositeGroupVersionKind returns the schema.GroupVersionKind of the CRD for the composite resource this CompositeResourceDefinition defines.
func (*CompositeResourceDefinition) GetConnectionSecretKeys ¶
func (in *CompositeResourceDefinition) GetConnectionSecretKeys() []string
GetConnectionSecretKeys returns the set of allowed keys to filter the connection secret.
func (CompositeResourceDefinition) OffersClaim ¶
func (in CompositeResourceDefinition) OffersClaim() bool
OffersClaim is true when a CompositeResourceDefinition offers a claim for the composite resource it defines.
func (*CompositeResourceDefinition) SetupWebhookWithManager ¶ added in v1.7.0
func (in *CompositeResourceDefinition) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager sets up webhook with manager.
func (*CompositeResourceDefinition) ValidateCreate ¶ added in v1.7.0
func (in *CompositeResourceDefinition) ValidateCreate() error
ValidateCreate is run for creation actions.
func (*CompositeResourceDefinition) ValidateDelete ¶ added in v1.7.0
func (in *CompositeResourceDefinition) ValidateDelete() error
ValidateDelete is run for delete actions.
func (*CompositeResourceDefinition) ValidateUpdate ¶ added in v1.7.0
func (in *CompositeResourceDefinition) ValidateUpdate(old runtime.Object) error
ValidateUpdate is run for update actions.
type CompositeResourceDefinitionControllerStatus ¶
type CompositeResourceDefinitionControllerStatus struct { // The CompositeResourceTypeRef is the type of composite resource that // Crossplane is currently reconciling for this definition. Its version will // eventually become consistent with the definition's referenceable version. // Note that clients may interact with any served type; this is simply the // type that Crossplane interacts with. CompositeResourceTypeRef TypeReference `json:"compositeResourceType,omitempty"` // The CompositeResourceClaimTypeRef is the type of composite resource claim // that Crossplane is currently reconciling for this definition. Its version // will eventually become consistent with the definition's referenceable // version. Note that clients may interact with any served type; this is // simply the type that Crossplane interacts with. CompositeResourceClaimTypeRef TypeReference `json:"compositeResourceClaimType,omitempty"` }
CompositeResourceDefinitionControllerStatus shows the observed state of the controllers that power the definition.
func (*CompositeResourceDefinitionControllerStatus) DeepCopy ¶
func (in *CompositeResourceDefinitionControllerStatus) DeepCopy() *CompositeResourceDefinitionControllerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeResourceDefinitionControllerStatus.
func (*CompositeResourceDefinitionControllerStatus) DeepCopyInto ¶
func (in *CompositeResourceDefinitionControllerStatus) DeepCopyInto(out *CompositeResourceDefinitionControllerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CompositeResourceDefinitionList ¶
type CompositeResourceDefinitionList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []CompositeResourceDefinition `json:"items"` }
CompositeResourceDefinitionList contains a list of CompositeResourceDefinitions.
func (*CompositeResourceDefinitionList) DeepCopy ¶
func (in *CompositeResourceDefinitionList) DeepCopy() *CompositeResourceDefinitionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeResourceDefinitionList.
func (*CompositeResourceDefinitionList) DeepCopyInto ¶
func (in *CompositeResourceDefinitionList) DeepCopyInto(out *CompositeResourceDefinitionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CompositeResourceDefinitionList) DeepCopyObject ¶
func (in *CompositeResourceDefinitionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CompositeResourceDefinitionSpec ¶
type CompositeResourceDefinitionSpec struct { // Group specifies the API group of the defined composite resource. // Composite resources are served under `/apis/<group>/...`. Must match the // name of the XRD (in the form `<names.plural>.<group>`). // +immutable Group string `json:"group"` // Names specifies the resource and kind names of the defined composite // resource. // +immutable Names extv1.CustomResourceDefinitionNames `json:"names"` // ClaimNames specifies the names of an optional composite resource claim. // When claim names are specified Crossplane will create a namespaced // 'composite resource claim' CRD that corresponds to the defined composite // resource. This composite resource claim acts as a namespaced proxy for // the composite resource; creating, updating, or deleting the claim will // create, update, or delete a corresponding composite resource. You may add // claim names to an existing CompositeResourceDefinition, but they cannot // be changed or removed once they have been set. // +immutable // +optional ClaimNames *extv1.CustomResourceDefinitionNames `json:"claimNames,omitempty"` // ConnectionSecretKeys is the list of keys that will be exposed to the end // user of the defined kind. // If the list is empty, all keys will be published. // +optional ConnectionSecretKeys []string `json:"connectionSecretKeys,omitempty"` // DefaultCompositionRef refers to the Composition resource that will be used // in case no composition selector is given. // +optional DefaultCompositionRef *CompositionReference `json:"defaultCompositionRef,omitempty"` // EnforcedCompositionRef refers to the Composition resource that will be used // by all composite instances whose schema is defined by this definition. // +optional // +immutable EnforcedCompositionRef *CompositionReference `json:"enforcedCompositionRef,omitempty"` // Versions is the list of all API versions of the defined composite // resource. Version names are used to compute the order in which served // versions are listed in API discovery. If the version string is // "kube-like", it will sort above non "kube-like" version strings, which // are ordered lexicographically. "Kube-like" versions start with a "v", // then are followed by a number (the major version), then optionally the // string "alpha" or "beta" and another number (the minor version). These // are sorted first by GA > beta > alpha (where GA is a version with no // suffix such as beta or alpha), and then by comparing major version, then // minor version. An example sorted list of versions: v10, v2, v1, v11beta2, // v10beta3, v3beta1, v12alpha1, v11alpha2, foo1, foo10. Note that all // versions must have identical schemas; Crossplane does not currently // support conversion between different version schemas. Versions []CompositeResourceDefinitionVersion `json:"versions"` }
CompositeResourceDefinitionSpec specifies the desired state of the definition.
func (*CompositeResourceDefinitionSpec) DeepCopy ¶
func (in *CompositeResourceDefinitionSpec) DeepCopy() *CompositeResourceDefinitionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeResourceDefinitionSpec.
func (*CompositeResourceDefinitionSpec) DeepCopyInto ¶
func (in *CompositeResourceDefinitionSpec) DeepCopyInto(out *CompositeResourceDefinitionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CompositeResourceDefinitionStatus ¶
type CompositeResourceDefinitionStatus struct { xpv1.ConditionedStatus `json:",inline"` // Controllers represents the status of the controllers that power this // composite resource definition. Controllers CompositeResourceDefinitionControllerStatus `json:"controllers,omitempty"` }
CompositeResourceDefinitionStatus shows the observed state of the definition.
func (*CompositeResourceDefinitionStatus) DeepCopy ¶
func (in *CompositeResourceDefinitionStatus) DeepCopy() *CompositeResourceDefinitionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeResourceDefinitionStatus.
func (*CompositeResourceDefinitionStatus) DeepCopyInto ¶
func (in *CompositeResourceDefinitionStatus) DeepCopyInto(out *CompositeResourceDefinitionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CompositeResourceDefinitionVersion ¶
type CompositeResourceDefinitionVersion struct { // Name of this version, e.g. “v1”, “v2beta1”, etc. Composite resources are // served under this version at `/apis/<group>/<version>/...` if `served` is // true. Name string `json:"name"` // Referenceable specifies that this version may be referenced by a // Composition in order to configure which resources an XR may be composed // of. Exactly one version must be marked as referenceable; all Compositions // must target only the referenceable version. The referenceable version // must be served. Referenceable bool `json:"referenceable"` // Served specifies that this version should be served via REST APIs. Served bool `json:"served"` // The deprecated field specifies that this version is deprecated and should // not be used. // +optional Deprecated *bool `json:"deprecated,omitempty"` // DeprecationWarning specifies the message that should be shown to the user // when using this version. // +optional DeprecationWarning *string `json:"deprecationWarning,omitempty"` // Schema describes the schema used for validation, pruning, and defaulting // of this version of the defined composite resource. Fields required by all // composite resources will be injected into this schema automatically, and // will override equivalently named fields in this schema. Omitting this // schema results in a schema that contains only the fields required by all // composite resources. // +optional Schema *CompositeResourceValidation `json:"schema,omitempty"` // AdditionalPrinterColumns specifies additional columns returned in Table // output. If no columns are specified, a single column displaying the age // of the custom resource is used. See the following link for details: // https://kubernetes.io/docs/reference/using-api/api-concepts/#receiving-resources-as-tables // +optional AdditionalPrinterColumns []extv1.CustomResourceColumnDefinition `json:"additionalPrinterColumns,omitempty"` }
CompositeResourceDefinitionVersion describes a version of an XR.
func (*CompositeResourceDefinitionVersion) DeepCopy ¶
func (in *CompositeResourceDefinitionVersion) DeepCopy() *CompositeResourceDefinitionVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeResourceDefinitionVersion.
func (*CompositeResourceDefinitionVersion) DeepCopyInto ¶
func (in *CompositeResourceDefinitionVersion) DeepCopyInto(out *CompositeResourceDefinitionVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CompositeResourceValidation ¶
type CompositeResourceValidation struct { // OpenAPIV3Schema is the OpenAPI v3 schema to use for validation and // pruning. // +kubebuilder:pruning:PreserveUnknownFields OpenAPIV3Schema runtime.RawExtension `json:"openAPIV3Schema,omitempty"` }
CompositeResourceValidation is a list of validation methods for a composite resource.
func (*CompositeResourceValidation) DeepCopy ¶
func (in *CompositeResourceValidation) DeepCopy() *CompositeResourceValidation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeResourceValidation.
func (*CompositeResourceValidation) DeepCopyInto ¶
func (in *CompositeResourceValidation) DeepCopyInto(out *CompositeResourceValidation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Composition ¶
type Composition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CompositionSpec `json:"spec,omitempty"` }
A Composition specifies how a composite resource should be composed. +kubebuilder:printcolumn:name="XR-KIND",type="string",JSONPath=".spec.compositeTypeRef.kind" +kubebuilder:printcolumn:name="XR-APIVERSION",type="string",JSONPath=".spec.compositeTypeRef.apiVersion" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories=crossplane
func (*Composition) DeepCopy ¶
func (in *Composition) DeepCopy() *Composition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Composition.
func (*Composition) DeepCopyInto ¶
func (in *Composition) DeepCopyInto(out *Composition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Composition) DeepCopyObject ¶
func (in *Composition) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (Composition) Hash ¶ added in v1.11.0
func (c Composition) Hash() string
Hash of the Composition.
type CompositionList ¶
type CompositionList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Composition `json:"items"` }
CompositionList contains a list of Compositions.
func (*CompositionList) DeepCopy ¶
func (in *CompositionList) DeepCopy() *CompositionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositionList.
func (*CompositionList) DeepCopyInto ¶
func (in *CompositionList) DeepCopyInto(out *CompositionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CompositionList) DeepCopyObject ¶
func (in *CompositionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CompositionReference ¶ added in v1.10.0
type CompositionReference struct { // Name of the Composition. Name string `json:"name"` }
A CompositionReference references a Composition.
func (*CompositionReference) DeepCopy ¶ added in v1.10.0
func (in *CompositionReference) DeepCopy() *CompositionReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositionReference.
func (*CompositionReference) DeepCopyInto ¶ added in v1.10.0
func (in *CompositionReference) DeepCopyInto(out *CompositionReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CompositionSpec ¶
type CompositionSpec struct { // CompositeTypeRef specifies the type of composite resource that this // composition is compatible with. // +immutable CompositeTypeRef TypeReference `json:"compositeTypeRef"` // PatchSets define a named set of patches that may be included by // any resource in this Composition. // PatchSets cannot themselves refer to other PatchSets. // +optional PatchSets []PatchSet `json:"patchSets,omitempty"` // Environment configures the environment in which resources are rendered. // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored // unless the relevant Crossplane feature flag is enabled, and may be // changed or removed without notice. // +optional Environment *EnvironmentConfiguration `json:"environment,omitempty"` // Resources is a list of resource templates that will be used when a // composite resource referring to this composition is created. At least one // of resources and functions must be specififed. If both are specified the // resources will be rendered first, then passed to the functions for // further processing. // +optional Resources []ComposedTemplate `json:"resources,omitempty"` // Functions is list of Composition Functions that will be used when a // composite resource referring to this composition is created. At least one // of resources and functions must be specified. If both are specified the // resources will be rendered first, then passed to the functions for // further processing. // // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored // unless the relevant Crossplane feature flag is enabled, and may be // changed or removed without notice. // +optional Functions []Function `json:"functions,omitempty"` // WriteConnectionSecretsToNamespace specifies the namespace in which the // connection secrets of composite resource dynamically provisioned using // this composition will be created. // This field is planned to be replaced in a future release in favor of // PublishConnectionDetailsWithStoreConfigRef. Currently, both could be // set independently and connection details would be published to both // without affecting each other as long as related fields at MR level // specified. // +optional WriteConnectionSecretsToNamespace *string `json:"writeConnectionSecretsToNamespace,omitempty"` // PublishConnectionDetailsWithStoreConfig specifies the secret store config // with which the connection details of composite resources dynamically // provisioned using this composition will be published. // // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored // unless the relevant Crossplane feature flag is enabled, and may be // changed or removed without notice. // +optional // +kubebuilder:default={"name": "default"} PublishConnectionDetailsWithStoreConfigRef *StoreConfigReference `json:"publishConnectionDetailsWithStoreConfigRef,omitempty"` }
CompositionSpec specifies desired state of a composition.
func (*CompositionSpec) DeepCopy ¶
func (in *CompositionSpec) DeepCopy() *CompositionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositionSpec.
func (*CompositionSpec) DeepCopyInto ¶
func (in *CompositionSpec) DeepCopyInto(out *CompositionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConnectionDetail ¶
type ConnectionDetail struct { // Name of the connection secret key that will be propagated to the // connection secret of the composition instance. Leave empty if you'd like // to use the same key name. // +optional Name *string `json:"name,omitempty"` // Type sets the connection detail fetching behaviour to be used. Each // connection detail type may require its own fields to be set on the // ConnectionDetail object. If the type is omitted Crossplane will attempt // to infer it based on which other fields were specified. If multiple // fields are specified the order of precedence is: // 1. FromValue // 2. FromConnectionSecretKey // 3. FromFieldPath // +optional // +kubebuilder:validation:Enum=FromConnectionSecretKey;FromFieldPath;FromValue Type *ConnectionDetailType `json:"type,omitempty"` // FromConnectionSecretKey is the key that will be used to fetch the value // from the composed resource's connection secret. // +optional FromConnectionSecretKey *string `json:"fromConnectionSecretKey,omitempty"` // FromFieldPath is the path of the field on the composed resource whose // value to be used as input. Name must be specified if the type is // FromFieldPath. // +optional FromFieldPath *string `json:"fromFieldPath,omitempty"` // Value that will be propagated to the connection secret of the composite // resource. May be set to inject a fixed, non-sensitive connection secret // value, for example a well-known port. // +optional Value *string `json:"value,omitempty"` }
ConnectionDetail includes the information about the propagation of the connection information from one secret to another.
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 ConnectionDetailType ¶ added in v1.1.0
type ConnectionDetailType string
A ConnectionDetailType is a type of connection detail.
const ( ConnectionDetailTypeFromConnectionSecretKey ConnectionDetailType = "FromConnectionSecretKey" ConnectionDetailTypeFromFieldPath ConnectionDetailType = "FromFieldPath" ConnectionDetailTypeFromValue ConnectionDetailType = "FromValue" )
ConnectionDetailType types.
type ContainerFunction ¶ added in v1.11.0
type ContainerFunction struct { // Image specifies the OCI image in which the function is packaged. The // image should include an entrypoint that reads a FunctionIO from stdin and // emits it, optionally mutated, to stdout. Image string `json:"image"` // ImagePullPolicy defines the pull policy for the function image. // +optional // +kubebuilder:default=IfNotPresent // +kubebuilder:validation:Enum="IfNotPresent";"Always";"Never" ImagePullPolicy *corev1.PullPolicy `json:"imagePullPolicy,omitempty"` // Timeout after which the Composition Function will be killed. // +optional // +kubebuilder:default="20s" Timeout *metav1.Duration `json:"timeout,omitempty"` // Network configuration for the Composition Function. // +optional Network *ContainerFunctionNetwork `json:"network,omitempty"` // Resources that may be used by the Composition Function. // +optional Resources *ContainerFunctionResources `json:"resources,omitempty"` // Runner configuration for the Composition Function. // +optional Runner *ContainerFunctionRunner `json:"runner,omitempty"` }
A ContainerFunction represents an Composition Function that is packaged as an OCI image and run in a container.
func (*ContainerFunction) DeepCopy ¶ added in v1.11.0
func (in *ContainerFunction) DeepCopy() *ContainerFunction
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerFunction.
func (*ContainerFunction) DeepCopyInto ¶ added in v1.11.0
func (in *ContainerFunction) DeepCopyInto(out *ContainerFunction)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerFunctionNetwork ¶ added in v1.11.0
type ContainerFunctionNetwork struct { // Policy specifies the network policy under which the Composition Function // will run. Defaults to 'Isolated' - i.e. no network access. Specify // 'Runner' to allow the function the same network access as // its runner. // +optional // +kubebuilder:validation:Enum="Isolated";"Runner" // +kubebuilder:default=Isolated Policy *ContainerFunctionNetworkPolicy `json:"policy,omitempty"` }
ContainerFunctionNetwork represents configuration for a Composition Function.
func (*ContainerFunctionNetwork) DeepCopy ¶ added in v1.11.0
func (in *ContainerFunctionNetwork) DeepCopy() *ContainerFunctionNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerFunctionNetwork.
func (*ContainerFunctionNetwork) DeepCopyInto ¶ added in v1.11.0
func (in *ContainerFunctionNetwork) DeepCopyInto(out *ContainerFunctionNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerFunctionNetworkPolicy ¶ added in v1.11.0
type ContainerFunctionNetworkPolicy string
A ContainerFunctionNetworkPolicy specifies the network policy under which a containerized Composition Function will run.
const ( // ContainerFunctionNetworkPolicyIsolated specifies that the Composition // Function will not have network access; i.e. invoked inside an isolated // network namespace. ContainerFunctionNetworkPolicyIsolated ContainerFunctionNetworkPolicy = "Isolated" // ContainerFunctionNetworkPolicyRunner specifies that the Composition // Function will have the same network access as its runner, i.e. share its // runner's network namespace. ContainerFunctionNetworkPolicyRunner ContainerFunctionNetworkPolicy = "Runner" )
type ContainerFunctionResourceLimits ¶ added in v1.11.0
type ContainerFunctionResourceLimits struct { // CPU, in cores. (500m = .5 cores) // +kubebuilder:default="100m" // +optional CPU *resource.Quantity `json:"cpu,omitempty"` // Memory, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) // +kubebuilder:default="128Mi" // +optional Memory *resource.Quantity `json:"memory,omitempty"` }
ContainerFunctionResourceLimits specify the maximum compute resources that may be used by a Composition Function.
func (*ContainerFunctionResourceLimits) DeepCopy ¶ added in v1.11.0
func (in *ContainerFunctionResourceLimits) DeepCopy() *ContainerFunctionResourceLimits
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerFunctionResourceLimits.
func (*ContainerFunctionResourceLimits) DeepCopyInto ¶ added in v1.11.0
func (in *ContainerFunctionResourceLimits) DeepCopyInto(out *ContainerFunctionResourceLimits)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerFunctionResources ¶ added in v1.11.0
type ContainerFunctionResources struct { // Limits specify the maximum compute resources that may be used by the // Composition Function. // +optional Limits *ContainerFunctionResourceLimits `json:"limits,omitempty"` }
ContainerFunctionResources represents compute resources that may be used by a Composition Function.
func (*ContainerFunctionResources) DeepCopy ¶ added in v1.11.0
func (in *ContainerFunctionResources) DeepCopy() *ContainerFunctionResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerFunctionResources.
func (*ContainerFunctionResources) DeepCopyInto ¶ added in v1.11.0
func (in *ContainerFunctionResources) DeepCopyInto(out *ContainerFunctionResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerFunctionRunner ¶ added in v1.11.0
type ContainerFunctionRunner struct { // Endpoint specifies how and where Crossplane should reach the runner it // uses to invoke containerized Composition Functions. // +optional // +kubebuilder:default="unix-abstract:crossplane/fn/default.sock" Endpoint *string `json:"endpoint,omitempty"` }
ContainerFunctionRunner represents runner configuration for a Composition Function.
func (*ContainerFunctionRunner) DeepCopy ¶ added in v1.11.0
func (in *ContainerFunctionRunner) DeepCopy() *ContainerFunctionRunner
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerFunctionRunner.
func (*ContainerFunctionRunner) DeepCopyInto ¶ added in v1.11.0
func (in *ContainerFunctionRunner) DeepCopyInto(out *ContainerFunctionRunner)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConvertTransform ¶
type ConvertTransform struct { // ToType is the type of the output of this transform. // +kubebuilder:validation:Enum=string;int;int64;bool;float64 ToType string `json:"toType"` // The expected input format. // // * `quantity` - parses the input as a K8s [`resource.Quantity`](https://pkg.go.dev/k8s.io/apimachinery/pkg/api/resource#Quantity). // Only used during `string -> float64` conversions. // // If this property is null, the default conversion is applied. // // +kubebuilder:validation:Enum=none;quantity // +kubebuilder:validation:Default=none Format *ConvertTransformFormat `json:"format,omitempty"` }
A ConvertTransform converts the input into a new object whose type is supplied.
func (*ConvertTransform) DeepCopy ¶
func (in *ConvertTransform) DeepCopy() *ConvertTransform
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConvertTransform.
func (*ConvertTransform) DeepCopyInto ¶
func (in *ConvertTransform) DeepCopyInto(out *ConvertTransform)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConvertTransformFormat ¶ added in v1.11.0
type ConvertTransformFormat string
ConvertTransformFormat defines the expected format of an input value of a conversion transform.
const ( ConvertTransformFormatNone ConvertTransformFormat = "none" ConvertTransformFormatQuantity ConvertTransformFormat = "quantity" )
Possible ConvertTransformFormat values.
type EnvironmentConfiguration ¶ added in v1.11.0
type EnvironmentConfiguration struct { // EnvironmentConfigs selects a list of `EnvironmentConfig`s. The resolved // resources are stored in the composite resource at // `spec.environmentConfigRefs` and is only updated if it is null. // // The list of references is used to compute an in-memory environment at // compose time. The data of all object is merged in the order they are // listed, meaning the values of EnvironmentConfigs with a larger index take // priority over ones with smaller indices. // // The computed environment can be accessed in a composition using // `FromEnvironmentFieldPath` and `CombineFromEnvironment` patches. // +optional EnvironmentConfigs []EnvironmentSource `json:"environmentConfigs,omitempty"` // Patches is a list of environment patches that are executed before a // composition's resources are composed. Patches []EnvironmentPatch `json:"patches,omitempty"` }
An EnvironmentConfiguration specifies the environment for rendering composed resources.
func (*EnvironmentConfiguration) DeepCopy ¶ added in v1.11.0
func (in *EnvironmentConfiguration) DeepCopy() *EnvironmentConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentConfiguration.
func (*EnvironmentConfiguration) DeepCopyInto ¶ added in v1.11.0
func (in *EnvironmentConfiguration) DeepCopyInto(out *EnvironmentConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvironmentPatch ¶ added in v1.11.0
type EnvironmentPatch struct { // Type sets the patching behaviour to be used. Each patch type may require // its own fields to be set on the Patch object. // +optional // +kubebuilder:validation:Enum=FromCompositeFieldPath;ToCompositeFieldPath;CombineFromComposite;CombineToComposite // +kubebuilder:default=FromCompositeFieldPath Type PatchType `json:"type,omitempty"` // FromFieldPath is the path of the field on the resource whose value is // to be used as input. Required when type is FromCompositeFieldPath or // ToCompositeFieldPath. // +optional FromFieldPath *string `json:"fromFieldPath,omitempty"` // Combine is the patch configuration for a CombineFromComposite or // CombineToComposite patch. // +optional Combine *Combine `json:"combine,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 fromFieldPath. // +optional ToFieldPath *string `json:"toFieldPath,omitempty"` // Transforms are the list of functions that are used as a FIFO pipe for the // input to be transformed. // +optional Transforms []Transform `json:"transforms,omitempty"` // Policy configures the specifics of patching behaviour. // +optional Policy *PatchPolicy `json:"policy,omitempty"` }
EnvironmentPatch is a patch for a Composition environment.
func (*EnvironmentPatch) DeepCopy ¶ added in v1.11.0
func (in *EnvironmentPatch) DeepCopy() *EnvironmentPatch
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentPatch.
func (*EnvironmentPatch) DeepCopyInto ¶ added in v1.11.0
func (in *EnvironmentPatch) DeepCopyInto(out *EnvironmentPatch)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvironmentSource ¶ added in v1.11.0
type EnvironmentSource struct { // Type specifies the way the EnvironmentConfig is selected. // Default is `Reference` // +optional // +kubebuilder:validation:Enum=Reference;Selector // +kubebuilder:default=Reference Type EnvironmentSourceType `json:"type,omitempty"` // Ref is a named reference to a single EnvironmentConfig. // Either Ref or Selector is required. // +optional Ref *EnvironmentSourceReference `json:"ref,omitempty"` // Selector selects one EnvironmentConfig via labels. // +optional Selector *EnvironmentSourceSelector `json:"selector,omitempty"` }
EnvironmentSource selects a EnvironmentConfig resource.
func (*EnvironmentSource) DeepCopy ¶ added in v1.11.0
func (in *EnvironmentSource) DeepCopy() *EnvironmentSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentSource.
func (*EnvironmentSource) DeepCopyInto ¶ added in v1.11.0
func (in *EnvironmentSource) DeepCopyInto(out *EnvironmentSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvironmentSourceReference ¶ added in v1.11.0
type EnvironmentSourceReference struct { // The name of the object. Name string `json:"name"` }
An EnvironmentSourceReference references an EnvironmentConfig by it's name.
func (*EnvironmentSourceReference) DeepCopy ¶ added in v1.11.0
func (in *EnvironmentSourceReference) DeepCopy() *EnvironmentSourceReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentSourceReference.
func (*EnvironmentSourceReference) DeepCopyInto ¶ added in v1.11.0
func (in *EnvironmentSourceReference) DeepCopyInto(out *EnvironmentSourceReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvironmentSourceSelector ¶ added in v1.11.0
type EnvironmentSourceSelector struct { // MatchLabels ensures an object with matching labels is selected. MatchLabels []EnvironmentSourceSelectorLabelMatcher `json:"matchLabels,omitempty"` }
An EnvironmentSourceSelector selects an EnvironmentConfig via labels.
func (*EnvironmentSourceSelector) DeepCopy ¶ added in v1.11.0
func (in *EnvironmentSourceSelector) DeepCopy() *EnvironmentSourceSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentSourceSelector.
func (*EnvironmentSourceSelector) DeepCopyInto ¶ added in v1.11.0
func (in *EnvironmentSourceSelector) DeepCopyInto(out *EnvironmentSourceSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvironmentSourceSelectorLabelMatcher ¶ added in v1.11.0
type EnvironmentSourceSelectorLabelMatcher struct { // Type specifies where the value for a label comes from. // +optional // +kubebuilder:validation:Enum=FromCompositeFieldPath;Value // +kubebuilder:default=FromCompositeFieldPath Type EnvironmentSourceSelectorLabelMatcherType `json:"type"` // Key of the label to match. Key string `json:"key"` // ValueFromFieldPath specifies the field path to look for the label value. ValueFromFieldPath *string `json:"valueFromFieldPath,omitempty"` // Value specifies a literal label value. Value *string `json:"value,omitempty"` }
An EnvironmentSourceSelectorLabelMatcher acts like a k8s label selector but can draw the label value from a different path.
func (*EnvironmentSourceSelectorLabelMatcher) DeepCopy ¶ added in v1.11.0
func (in *EnvironmentSourceSelectorLabelMatcher) DeepCopy() *EnvironmentSourceSelectorLabelMatcher
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentSourceSelectorLabelMatcher.
func (*EnvironmentSourceSelectorLabelMatcher) DeepCopyInto ¶ added in v1.11.0
func (in *EnvironmentSourceSelectorLabelMatcher) DeepCopyInto(out *EnvironmentSourceSelectorLabelMatcher)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvironmentSourceSelectorLabelMatcherType ¶ added in v1.11.0
type EnvironmentSourceSelectorLabelMatcherType string
EnvironmentSourceSelectorLabelMatcherType specifies where the value for a label comes from.
const ( // EnvironmentSourceSelectorLabelMatcherTypeFromCompositeFieldPath extracts // the label value from a composite fieldpath. EnvironmentSourceSelectorLabelMatcherTypeFromCompositeFieldPath EnvironmentSourceSelectorLabelMatcherType = "FromCompositeFieldPath" // EnvironmentSourceSelectorLabelMatcherTypeValue uses a literal as label // value. EnvironmentSourceSelectorLabelMatcherTypeValue EnvironmentSourceSelectorLabelMatcherType = "Value" )
type EnvironmentSourceType ¶ added in v1.11.0
type EnvironmentSourceType string
EnvironmentSourceType specifies the way the EnvironmentConfig is selected.
const ( // EnvironmentSourceTypeReference by name. EnvironmentSourceTypeReference EnvironmentSourceType = "Reference" // EnvironmentSourceTypeSelector by labels. EnvironmentSourceTypeSelector EnvironmentSourceType = "Selector" )
type FromFieldPathPolicy ¶ added in v1.1.0
type FromFieldPathPolicy string
A FromFieldPathPolicy determines how to patch from a field path.
const ( FromFieldPathPolicyOptional FromFieldPathPolicy = "Optional" FromFieldPathPolicyRequired FromFieldPathPolicy = "Required" )
FromFieldPath patch policies.
type Function ¶ added in v1.11.0
type Function struct { // Name of this function. Must be unique within its Composition. Name string `json:"name"` // Type of this function. // +kubebuilder:validation:Enum=Container Type FunctionType `json:"type"` // Config is an optional, arbitrary Kubernetes resource (i.e. a resource // with an apiVersion and kind) that will be passed to the Composition // Function as the 'config' block of its FunctionIO. // +optional // +kubebuilder:pruning:PreserveUnknownFields // +kubebuilder:validation:EmbeddedResource Config *runtime.RawExtension `json:"config,omitempty"` // Container configuration of this function. // +optional Container *ContainerFunction `json:"container,omitempty"` }
A Function represents a Composition Function.
func (*Function) DeepCopy ¶ added in v1.11.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Function.
func (*Function) DeepCopyInto ¶ added in v1.11.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FunctionType ¶ added in v1.11.0
type FunctionType string
A FunctionType is a type of Composition Function.
const ( // FunctionTypeContainer represents a Composition Function that is packaged // as an OCI image and run in a container. FunctionTypeContainer FunctionType = "Container" )
FunctionType types.
type GeneratedRevisionSpecConverter ¶ added in v1.11.0
type GeneratedRevisionSpecConverter struct{}
func (*GeneratedRevisionSpecConverter) DeepCopy ¶ added in v1.11.0
func (in *GeneratedRevisionSpecConverter) DeepCopy() *GeneratedRevisionSpecConverter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeneratedRevisionSpecConverter.
func (*GeneratedRevisionSpecConverter) DeepCopyInto ¶ added in v1.11.0
func (in *GeneratedRevisionSpecConverter) DeepCopyInto(out *GeneratedRevisionSpecConverter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GeneratedRevisionSpecConverter) FromRevisionSpec ¶ added in v1.11.0
func (c *GeneratedRevisionSpecConverter) FromRevisionSpec(source v1beta1.CompositionRevisionSpec) CompositionSpec
func (*GeneratedRevisionSpecConverter) ToRevisionSpec ¶ added in v1.11.0
func (c *GeneratedRevisionSpecConverter) ToRevisionSpec(source CompositionSpec) v1beta1.CompositionRevisionSpec
type MapTransform ¶
type MapTransform struct { // Pairs is the map that will be used for transform. // +optional Pairs map[string]extv1.JSON `json:",inline"` }
MapTransform returns a value for the input from the given map.
func (*MapTransform) DeepCopy ¶
func (in *MapTransform) DeepCopy() *MapTransform
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MapTransform.
func (*MapTransform) DeepCopyInto ¶
func (in *MapTransform) DeepCopyInto(out *MapTransform)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (MapTransform) MarshalJSON ¶
func (m MapTransform) MarshalJSON() ([]byte, error)
MarshalJSON from this MapTransform.
func (*MapTransform) UnmarshalJSON ¶
func (m *MapTransform) UnmarshalJSON(b []byte) error
UnmarshalJSON into this MapTransform.
type MatchTransform ¶ added in v1.11.0
type MatchTransform struct { // The patterns that should be tested against the input string. // Patterns are tested in order. The value of the first match is used as // result of this transform. Patterns []MatchTransformPattern `json:"patterns,omitempty"` // The fallback value that should be returned by the transform if now pattern // matches. FallbackValue extv1.JSON `json:"fallbackValue,omitempty"` }
MatchTransform is a more complex version of a map transform that matches a list of patterns.
func (*MatchTransform) DeepCopy ¶ added in v1.11.0
func (in *MatchTransform) DeepCopy() *MatchTransform
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchTransform.
func (*MatchTransform) DeepCopyInto ¶ added in v1.11.0
func (in *MatchTransform) DeepCopyInto(out *MatchTransform)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MatchTransformPattern ¶ added in v1.11.0
type MatchTransformPattern struct { // Type specifies how the pattern matches the input. // // * `literal` - the pattern value has to exactly match (case sensitive) the // input string. This is the default. // // * `regexp` - the pattern treated as a regular expression against // which the input string is tested. Crossplane will throw an error if the // key is not a valid regexp. // // +kubebuilder:validation:Enum=literal;regexp // +kubebuilder:default=literal Type MatchTransformPatternType `json:"type"` // Literal exactly matches the input string (case sensitive). // Is required if `type` is `literal`. Literal *string `json:"literal,omitempty"` // Regexp to match against the input string. // Is required if `type` is `regexp`. Regexp *string `json:"regexp,omitempty"` // The value that is used as result of the transform if the pattern matches. Result extv1.JSON `json:"result"` }
MatchTransformPattern is a transform that returns the value that matches a pattern.
func (*MatchTransformPattern) DeepCopy ¶ added in v1.11.0
func (in *MatchTransformPattern) DeepCopy() *MatchTransformPattern
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchTransformPattern.
func (*MatchTransformPattern) DeepCopyInto ¶ added in v1.11.0
func (in *MatchTransformPattern) DeepCopyInto(out *MatchTransformPattern)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MatchTransformPatternType ¶ added in v1.11.0
type MatchTransformPatternType string
MatchTransformPatternType defines the type of a MatchTransformPattern.
const ( MatchTransformPatternTypeLiteral MatchTransformPatternType = "literal" MatchTransformPatternTypeRegexp MatchTransformPatternType = "regexp" )
Valid MatchTransformPatternTypes.
type MathTransform ¶
type MathTransform struct { // Multiply the value. // +optional Multiply *int64 `json:"multiply,omitempty"` }
MathTransform conducts mathematical operations on the input with the given configuration in its properties.
func (*MathTransform) DeepCopy ¶
func (in *MathTransform) DeepCopy() *MathTransform
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MathTransform.
func (*MathTransform) DeepCopyInto ¶
func (in *MathTransform) DeepCopyInto(out *MathTransform)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Patch ¶
type Patch struct { // Type sets the patching behaviour to be used. Each patch type may require // its own fields to be set on the Patch object. // +optional // +kubebuilder:validation:Enum=FromCompositeFieldPath;FromEnvironmentFieldPath;PatchSet;ToCompositeFieldPath;ToEnvironmentFieldPath;CombineFromEnvironment;CombineFromComposite;CombineToComposite;CombineToEnvironment // +kubebuilder:default=FromCompositeFieldPath Type PatchType `json:"type,omitempty"` // FromFieldPath is the path of the field on the resource whose value is // to be used as input. Required when type is FromCompositeFieldPath, // FromEnvironmentFieldPath, ToCompositeFieldPath, ToEnvironmentFieldPath. // +optional FromFieldPath *string `json:"fromFieldPath,omitempty"` // Combine is the patch configuration for a CombineFromComposite, // CombineFromEnvironment, CombineToComposite or CombineToEnvironment patch. // +optional Combine *Combine `json:"combine,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 fromFieldPath. // +optional ToFieldPath *string `json:"toFieldPath,omitempty"` // PatchSetName to include patches from. Required when type is PatchSet. // +optional PatchSetName *string `json:"patchSetName,omitempty"` // Transforms are the list of functions that are used as a FIFO pipe for the // input to be transformed. // +optional Transforms []Transform `json:"transforms,omitempty"` // Policy configures the specifics of patching behaviour. // +optional Policy *PatchPolicy `json:"policy,omitempty"` }
Patch objects are applied between composite and composed resources. Their behaviour depends on the Type selected. The default Type, FromCompositeFieldPath, copies a value from the composite resource to the composed resource, applying any defined transformers.
func (*Patch) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Patch.
func (*Patch) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PatchPolicy ¶ added in v1.1.0
type PatchPolicy struct { // FromFieldPath specifies how to patch from a field path. The default is // 'Optional', which means the patch will be a no-op if the specified // fromFieldPath does not exist. Use 'Required' if the patch should fail if // the specified path does not exist. // +kubebuilder:validation:Enum=Optional;Required // +optional FromFieldPath *FromFieldPathPolicy `json:"fromFieldPath,omitempty"` MergeOptions *xpv1.MergeOptions `json:"mergeOptions,omitempty"` }
A PatchPolicy configures the specifics of patching behaviour.
func (*PatchPolicy) DeepCopy ¶ added in v1.1.0
func (in *PatchPolicy) DeepCopy() *PatchPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatchPolicy.
func (*PatchPolicy) DeepCopyInto ¶ added in v1.1.0
func (in *PatchPolicy) DeepCopyInto(out *PatchPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PatchSet ¶
type PatchSet struct { // Name of this PatchSet. Name string `json:"name"` // Patches will be applied as an overlay to the base resource. Patches []Patch `json:"patches"` }
A PatchSet is a set of patches that can be reused from all resources within a Composition.
func (*PatchSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatchSet.
func (*PatchSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PatchType ¶
type PatchType string
A PatchType is a type of patch.
const ( PatchTypeFromCompositeFieldPath PatchType = "FromCompositeFieldPath" // Default PatchTypeFromEnvironmentFieldPath PatchType = "FromEnvironmentFieldPath" PatchTypePatchSet PatchType = "PatchSet" PatchTypeToCompositeFieldPath PatchType = "ToCompositeFieldPath" PatchTypeToEnvironmentFieldPath PatchType = "ToEnvironmentFieldPath" PatchTypeCombineFromEnvironment PatchType = "CombineFromEnvironment" PatchTypeCombineFromComposite PatchType = "CombineFromComposite" PatchTypeCombineToComposite PatchType = "CombineToComposite" PatchTypeCombineToEnvironment PatchType = "CombineToEnvironment" )
Patch types.
type ReadinessCheck ¶
type ReadinessCheck struct { // Type indicates the type of probe you'd like to use. // +kubebuilder:validation:Enum="MatchString";"MatchInteger";"NonEmpty";"None" Type ReadinessCheckType `json:"type"` // FieldPath shows the path of the field whose value will be used. // +optional FieldPath string `json:"fieldPath,omitempty"` // MatchString is the value you'd like to match if you're using "MatchString" type. // +optional MatchString string `json:"matchString,omitempty"` // MatchInt is the value you'd like to match if you're using "MatchInt" type. // +optional MatchInteger int64 `json:"matchInteger,omitempty"` }
ReadinessCheck is used to indicate how to tell whether a resource is ready for consumption
func (*ReadinessCheck) DeepCopy ¶
func (in *ReadinessCheck) DeepCopy() *ReadinessCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadinessCheck.
func (*ReadinessCheck) DeepCopyInto ¶
func (in *ReadinessCheck) DeepCopyInto(out *ReadinessCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReadinessCheckType ¶ added in v1.1.0
type ReadinessCheckType string
ReadinessCheckType is used for readiness check types.
const ( ReadinessCheckTypeNonEmpty ReadinessCheckType = "NonEmpty" ReadinessCheckTypeMatchString ReadinessCheckType = "MatchString" ReadinessCheckTypeMatchInteger ReadinessCheckType = "MatchInteger" ReadinessCheckTypeNone ReadinessCheckType = "None" )
The possible values for readiness check type.
type RevisionSpecConverter ¶ added in v1.11.0
type RevisionSpecConverter interface { // goverter:ignore Revision ToRevisionSpec(in CompositionSpec) v1beta1.CompositionRevisionSpec FromRevisionSpec(in v1beta1.CompositionRevisionSpec) CompositionSpec }
A RevisionSpecConverter converts a CompositionSpec to the equivalent CompositionRevisionSpec.
goverter:converter goverter:name GeneratedRevisionSpecConverter goverter:extend ConvertRawExtension ConvertResourceQuantity +k8s:deepcopy-gen=false
type StoreConfigReference ¶ added in v1.10.0
type StoreConfigReference struct { // Name of the referenced StoreConfig. Name string `json:"name"` }
A StoreConfigReference references a secret store config that may be used to write connection details.
func (*StoreConfigReference) DeepCopy ¶ added in v1.10.0
func (in *StoreConfigReference) DeepCopy() *StoreConfigReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StoreConfigReference.
func (*StoreConfigReference) DeepCopyInto ¶ added in v1.10.0
func (in *StoreConfigReference) DeepCopyInto(out *StoreConfigReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StringCombine ¶ added in v1.3.0
type StringCombine struct { // Format the input using a Go format string. See // https://golang.org/pkg/fmt/ for details. Format string `json:"fmt"` }
A StringCombine combines multiple input values into a single string.
func (*StringCombine) DeepCopy ¶ added in v1.3.0
func (in *StringCombine) DeepCopy() *StringCombine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringCombine.
func (*StringCombine) DeepCopyInto ¶ added in v1.3.0
func (in *StringCombine) DeepCopyInto(out *StringCombine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StringConversionType ¶ added in v1.5.0
type StringConversionType string
StringConversionType converts a string.
const ( StringConversionTypeToUpper StringConversionType = "ToUpper" StringConversionTypeToLower StringConversionType = "ToLower" StringConversionTypeToJSON StringConversionType = "ToJson" StringConversionTypeToBase64 StringConversionType = "ToBase64" StringConversionTypeFromBase64 StringConversionType = "FromBase64" StringConversionTypeToSHA1 StringConversionType = "ToSha1" StringConversionTypeToSHA256 StringConversionType = "ToSha256" StringConversionTypeToSHA512 StringConversionType = "ToSha512" )
Accepted StringConversionTypes.
type StringTransform ¶
type StringTransform struct { // Type of the string transform to be run. // +optional // +kubebuilder:validation:Enum=Format;Convert;TrimPrefix;TrimSuffix;Regexp // +kubebuilder:default=Format Type StringTransformType `json:"type,omitempty"` // Format the input using a Go format string. See // https://golang.org/pkg/fmt/ for details. // +optional Format *string `json:"fmt,omitempty"` // Optional conversion method to be specified. // `ToUpper` and `ToLower` change the letter case of the input string. // `ToBase64` and `FromBase64` perform a base64 conversion based on the input string. // `ToJson` converts any input value into its raw JSON representation. // `ToSha1`, `ToSha256` and `ToSha512` generate a hash value based on the input // converted to JSON. // +optional // +kubebuilder:validation:Enum=ToUpper;ToLower;ToBase64;FromBase64;ToJson;ToSha1;ToSha256;ToSha512 Convert *StringConversionType `json:"convert,omitempty"` // Trim the prefix or suffix from the input // +optional Trim *string `json:"trim,omitempty"` // Extract a match from the input using a regular expression. // +optional Regexp *StringTransformRegexp `json:"regexp,omitempty"` }
A StringTransform returns a string given the supplied input.
func (*StringTransform) DeepCopy ¶
func (in *StringTransform) DeepCopy() *StringTransform
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringTransform.
func (*StringTransform) DeepCopyInto ¶
func (in *StringTransform) DeepCopyInto(out *StringTransform)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StringTransformRegexp ¶ added in v1.9.0
type StringTransformRegexp struct { // Match string. May optionally include submatches, aka capture groups. // See https://pkg.go.dev/regexp/ for details. Match string `json:"match"` // Group number to match. 0 (the default) matches the entire expression. // +optional Group *int `json:"group,omitempty"` }
A StringTransformRegexp extracts a match from the input using a regular expression.
func (*StringTransformRegexp) DeepCopy ¶ added in v1.9.0
func (in *StringTransformRegexp) DeepCopy() *StringTransformRegexp
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringTransformRegexp.
func (*StringTransformRegexp) DeepCopyInto ¶ added in v1.9.0
func (in *StringTransformRegexp) DeepCopyInto(out *StringTransformRegexp)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StringTransformType ¶ added in v1.5.0
type StringTransformType string
StringTransformType transforms a string.
const ( StringTransformTypeFormat StringTransformType = "Format" // Default StringTransformTypeConvert StringTransformType = "Convert" StringTransformTypeTrimPrefix StringTransformType = "TrimPrefix" StringTransformTypeTrimSuffix StringTransformType = "TrimSuffix" StringTransformTypeRegexp StringTransformType = "Regexp" )
Accepted StringTransformTypes.
type Transform ¶
type Transform struct { // Type of the transform to be run. // +kubebuilder:validation:Enum=map;match;math;string;convert Type TransformType `json:"type"` // Math is used to transform the input via mathematical operations such as // multiplication. // +optional Math *MathTransform `json:"math,omitempty"` // Map uses the input as a key in the given map and returns the value. // +optional Map *MapTransform `json:"map,omitempty"` // Match is a more complex version of Map that matches a list of patterns. // +optional Match *MatchTransform `json:"match,omitempty"` // String is used to transform the input into a string or a different kind // of string. Note that the input does not necessarily need to be a string. // +optional String *StringTransform `json:"string,omitempty"` // Convert is used to cast the input into the given output type. // +optional Convert *ConvertTransform `json:"convert,omitempty"` }
Transform is a unit of process whose input is transformed into an output with the supplied configuration.
func (*Transform) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Transform.
func (*Transform) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TransformType ¶
type TransformType string
TransformType is type of the transform function to be chosen.
const ( TransformTypeMap TransformType = "map" TransformTypeMatch TransformType = "match" TransformTypeMath TransformType = "math" TransformTypeString TransformType = "string" TransformTypeConvert TransformType = "convert" )
Accepted TransformTypes.
type TypeReference ¶
type TypeReference struct { // APIVersion of the type. APIVersion string `json:"apiVersion"` // Kind of the type. Kind string `json:"kind"` }
TypeReference is used to refer to a type for declaring compatibility.
func TypeReferenceTo ¶
func TypeReferenceTo(gvk schema.GroupVersionKind) TypeReference
TypeReferenceTo returns a reference to the supplied GroupVersionKind
func (*TypeReference) DeepCopy ¶
func (in *TypeReference) DeepCopy() *TypeReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TypeReference.
func (*TypeReference) DeepCopyInto ¶
func (in *TypeReference) DeepCopyInto(out *TypeReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.