Documentation ¶
Overview ¶
Package v1alpha1 contains API types that extend the Crossplane API. v1alpha1 composition revision schema is identical to v1beta1 +kubebuilder:object:generate=true +groupName=apiextensions.crossplane.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type Combine
- type CombineStrategy
- type CombineVariable
- type ComposedTemplate
- type CompositionRevision
- type CompositionRevisionList
- type CompositionRevisionSpec
- type CompositionRevisionStatus
- type ConnectionDetail
- type ConnectionDetailType
- type ContainerFunction
- type ContainerFunctionNetwork
- type ContainerFunctionNetworkPolicy
- type ContainerFunctionResourceLimits
- type ContainerFunctionResources
- type ContainerFunctionRunner
- type ConvertTransform
- type ConvertTransformFormat
- type ConvertTransformType
- type EnvironmentConfig
- type EnvironmentConfigList
- type EnvironmentConfiguration
- type EnvironmentPatch
- type EnvironmentSource
- type EnvironmentSourceReference
- type EnvironmentSourceSelector
- type EnvironmentSourceSelectorLabelMatcher
- type EnvironmentSourceSelectorLabelMatcherType
- type EnvironmentSourceType
- type FromFieldPathPolicy
- type Function
- type FunctionType
- type MapTransform
- type MatchFallbackTo
- type MatchTransform
- type MatchTransformPattern
- type MatchTransformPatternType
- type MathTransform
- type MathTransformType
- type Patch
- type PatchPolicy
- type PatchSet
- type PatchType
- type ReadinessCheck
- type ReadinessCheckType
- type StoreConfigReference
- type StringCombine
- type StringConversionType
- type StringTransform
- type StringTransformRegexp
- type StringTransformType
- type Transform
- type TransformType
- type TypeReference
Constants ¶
const ( Group = "apiextensions.crossplane.io" Version = "v1alpha1" )
Package type metadata.
const ( // LabelCompositionName is the name of the Composition used to create // this CompositionRevision. LabelCompositionName = "crossplane.io/composition-name" // LabelCompositionHash is a hash of the Composition label, annotation // and spec used to create this CompositionRevision. Used to identify // identical revisions. LabelCompositionHash = "crossplane.io/composition-hash" )
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 ( EnvironmentConfigKind = reflect.TypeOf(EnvironmentConfig{}).Name() EnvironmentConfigGroupKind = schema.GroupKind{Group: Group, Kind: EnvironmentConfigKind}.String() EnvironmentConfigKindAPIVersion = EnvironmentConfigKind + "." + SchemeGroupVersion.String() EnvironmentConfigGroupVersionKind = SchemeGroupVersion.WithKind(EnvironmentConfigKind) )
Composition type metadata.
Functions ¶
This section is empty.
Types ¶
type Combine ¶ added in v1.4.0
type Combine struct { // Variables are the list of variables whose values will be retrieved and // combined. // +kubebuilder:validation:MinItems=1 // +immutable 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 // +immutable Strategy CombineStrategy `json:"strategy"` // String declares that input variables should be combined into a single // string, using the relevant settings for formatting purposes. // +optional // +immutable 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.4.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Combine.
func (*Combine) DeepCopyInto ¶ added in v1.4.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CombineStrategy ¶ added in v1.4.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.4.0
type CombineVariable struct { // FromFieldPath is the path of the field on the source whose value is // to be used as input. // +immutable 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.4.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.4.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 // +immutable Name *string `json:"name,omitempty"` // Base is the target resource that the patches will be applied on. // +kubebuilder:pruning:PreserveUnknownFields // +kubebuilder:validation:EmbeddedResource // +immutable Base runtime.RawExtension `json:"base"` // Patches will be applied as overlay to the base resource. // +optional // +immutable Patches []Patch `json:"patches,omitempty"` // ConnectionDetails lists the propagation secret keys from this target // resource to the composition instance connection secret. // +optional // +immutable 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 // +immutable 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 CompositionRevision ¶ added in v1.4.0
type CompositionRevision struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CompositionRevisionSpec `json:"spec,omitempty"` Status CompositionRevisionStatus `json:"status,omitempty"` }
A CompositionRevision represents a revision in time of a Composition. Revisions are created by Crossplane; they should be treated as immutable. +kubebuilder:printcolumn:name="REVISION",type="string",JSONPath=".spec.revision" +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 +kubebuilder:subresource:status
func (*CompositionRevision) DeepCopy ¶ added in v1.4.0
func (in *CompositionRevision) DeepCopy() *CompositionRevision
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositionRevision.
func (*CompositionRevision) DeepCopyInto ¶ added in v1.4.0
func (in *CompositionRevision) DeepCopyInto(out *CompositionRevision)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CompositionRevision) DeepCopyObject ¶ added in v1.4.0
func (in *CompositionRevision) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CompositionRevisionList ¶ added in v1.4.0
type CompositionRevisionList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []CompositionRevision `json:"items"` }
CompositionRevisionList contains a list of CompositionRevisions.
func (*CompositionRevisionList) DeepCopy ¶ added in v1.4.0
func (in *CompositionRevisionList) DeepCopy() *CompositionRevisionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositionRevisionList.
func (*CompositionRevisionList) DeepCopyInto ¶ added in v1.4.0
func (in *CompositionRevisionList) DeepCopyInto(out *CompositionRevisionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CompositionRevisionList) DeepCopyObject ¶ added in v1.4.0
func (in *CompositionRevisionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CompositionRevisionSpec ¶ added in v1.4.0
type CompositionRevisionSpec 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. // +optional Environment *EnvironmentConfiguration `json:"environment,omitempty"` // Resources is the list of resource templates that will be used when a // composite resource referring to this composition is created. // +optional Resources []ComposedTemplate `json:"resources"` // 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. // +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 removed 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. // +optional // +kubebuilder:default={"name": "default"} PublishConnectionDetailsWithStoreConfigRef *StoreConfigReference `json:"publishConnectionDetailsWithStoreConfigRef,omitempty"` // Revision number. Newer revisions have larger numbers. // +immutable Revision int64 `json:"revision"` }
CompositionRevisionSpec specifies the desired state of the composition revision.
func (*CompositionRevisionSpec) DeepCopy ¶ added in v1.4.0
func (in *CompositionRevisionSpec) DeepCopy() *CompositionRevisionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositionRevisionSpec.
func (*CompositionRevisionSpec) DeepCopyInto ¶ added in v1.4.0
func (in *CompositionRevisionSpec) DeepCopyInto(out *CompositionRevisionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CompositionRevisionStatus ¶ added in v1.4.0
type CompositionRevisionStatus struct {
xpv1.ConditionedStatus `json:",inline"`
}
CompositionRevisionStatus shows the observed state of the composition revision.
func (*CompositionRevisionStatus) DeepCopy ¶ added in v1.4.0
func (in *CompositionRevisionStatus) DeepCopy() *CompositionRevisionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositionRevisionStatus.
func (*CompositionRevisionStatus) DeepCopyInto ¶ added in v1.4.0
func (in *CompositionRevisionStatus) DeepCopyInto(out *CompositionRevisionStatus)
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 // +immutable 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. // +optional // +immutable // +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 given target resource's secret. // +optional // +immutable 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 is specified. // +optional // +immutable FromFieldPath *string `json:"fromFieldPath,omitempty"` // Value that will be propagated to the connection secret of the composition // instance. Typically you should use FromConnectionSecretKey instead, but // an explicit value may be set to inject a fixed, non-sensitive connection // secret values, for example a well-known port. Supercedes // FromConnectionSecretKey when set. // +optional // +immutable 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.4.0
type ConnectionDetailType string
A ConnectionDetailType is a type of connection detail.
const ( ConnectionDetailTypeUnknown ConnectionDetailType = "Unknown" 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:///@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 ¶ added in v1.4.0
type ConvertTransform struct { // ToType is the type of the output of this transform. // +kubebuilder:validation:Enum=string;int;int64;bool;float64 ToType ConvertTransformType `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=quantity Format *ConvertTransformFormat `json:"format,omitempty"` }
A ConvertTransform converts the input into a new object whose type is supplied.
func (*ConvertTransform) DeepCopy ¶ added in v1.4.0
func (in *ConvertTransform) DeepCopy() *ConvertTransform
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConvertTransform.
func (*ConvertTransform) DeepCopyInto ¶ added in v1.4.0
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 ConvertTransformType ¶ added in v1.12.0
type ConvertTransformType string
A ConvertTransformType defines the type of a conversion transform.
const ( TransformIOTypeString ConvertTransformType = "string" TransformIOTypeBool ConvertTransformType = "bool" TransformIOTypeInt ConvertTransformType = "int" TransformIOTypeInt64 ConvertTransformType = "int64" TransformIOTypeFloat64 ConvertTransformType = "float64" )
The list of supported ConvertTransform input and output types.
type EnvironmentConfig ¶ added in v1.11.0
type EnvironmentConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // The data of this EnvironmentConfig. // This may contain any kind of structure that can be serialized into JSON. // +optional Data map[string]extv1.JSON `json:"data,omitempty"` }
A EnvironmentConfig contains a set of arbitrary, unstructured values. +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories=crossplane
func (*EnvironmentConfig) DeepCopy ¶ added in v1.11.0
func (in *EnvironmentConfig) DeepCopy() *EnvironmentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentConfig.
func (*EnvironmentConfig) DeepCopyInto ¶ added in v1.11.0
func (in *EnvironmentConfig) DeepCopyInto(out *EnvironmentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EnvironmentConfig) DeepCopyObject ¶ added in v1.11.0
func (in *EnvironmentConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EnvironmentConfigList ¶ added in v1.11.0
type EnvironmentConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []EnvironmentConfig `json:"items"` }
EnvironmentConfigList contains a list of EnvironmentConfigs.
func (*EnvironmentConfigList) DeepCopy ¶ added in v1.11.0
func (in *EnvironmentConfigList) DeepCopy() *EnvironmentConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentConfigList.
func (*EnvironmentConfigList) DeepCopyInto ¶ added in v1.11.0
func (in *EnvironmentConfigList) DeepCopyInto(out *EnvironmentConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EnvironmentConfigList) DeepCopyObject ¶ added in v1.11.0
func (in *EnvironmentConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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.4.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 MapTransform ¶
type MapTransform struct { // Pairs is the map that will be used for transform. // +optional // +immutable 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 ¶ added in v0.11.0
func (m MapTransform) MarshalJSON() ([]byte, error)
MarshalJSON from this MapTransform.
func (*MapTransform) Resolve ¶
func (m *MapTransform) Resolve(input any) (any, error)
Resolve runs the Map transform.
func (*MapTransform) UnmarshalJSON ¶ added in v0.11.0
func (m *MapTransform) UnmarshalJSON(b []byte) error
UnmarshalJSON into this MapTransform.
type MatchFallbackTo ¶ added in v1.12.0
type MatchFallbackTo string
MatchFallbackTo defines how a match operation will fallback.
const ( MatchFallbackToTypeValue MatchFallbackTo = "Value" MatchFallbackToTypeInput MatchFallbackTo = "Input" )
Valid MatchFallbackTo.
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"` // Determines to what value the transform should fallback if no pattern matches. // +optional // +kubebuilder:validation:Enum=Value;Input // +kubebuilder:default=Value FallbackTo MatchFallbackTo `json:"fallbackTo,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 { // Type of the math transform to be run. // +optional // +kubebuilder:validation:Enum=Multiply;ClampMin;ClampMax // +kubebuilder:default=Multiply Type MathTransformType `json:"type,omitempty"` // Multiply the value. // +optional Multiply *int64 `json:"multiply,omitempty"` // ClampMin makes sure that the value is not smaller than the given value. // +optional ClampMin *int64 `json:"clampMin,omitempty"` // ClampMax makes sure that the value is not bigger than the given value. // +optional ClampMax *int64 `json:"clampMax,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 MathTransformType ¶ added in v1.12.0
type MathTransformType string
MathTransformType conducts mathematical operations.
const ( MathTransformTypeMultiply MathTransformType = "Multiply" // Default MathTransformTypeClampMin MathTransformType = "ClampMin" MathTransformTypeClampMax MathTransformType = "ClampMax" )
Accepted MathTransformType.
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 // +immutable // +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 or // ToCompositeFieldPath. // +optional // +immutable FromFieldPath *string `json:"fromFieldPath,omitempty"` // Combine is the patch configuration for a CombineFromComposite or // CombineToComposite patch. // +optional // +immutable 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 // +immutable 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 // +immutable Transforms []Transform `json:"transforms,omitempty"` // Policy configures the specifics of patching behaviour. // +optional // +immutable 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.4.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 // +immutable 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.4.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.4.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 ¶ added in v1.4.0
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 ¶ added in v1.4.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatchSet.
func (*PatchSet) DeepCopyInto ¶ added in v1.4.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PatchType ¶ added in v1.4.0
type PatchType string
A PatchType is a type of patch.
const ( PatchTypeFromCompositeFieldPath PatchType = "FromCompositeFieldPath" // Default PatchTypePatchSet PatchType = "PatchSet" PatchTypeToCompositeFieldPath PatchType = "ToCompositeFieldPath" PatchTypeCombineFromComposite PatchType = "CombineFromComposite" PatchTypeCombineToComposite PatchType = "CombineToComposite" )
Patch types.
type ReadinessCheck ¶ added in v0.13.0
type ReadinessCheck struct { // Type indicates the type of probe you'd like to use. // +kubebuilder:validation:Enum="MatchString";"MatchInteger";"NonEmpty";"None" // +immutable Type ReadinessCheckType `json:"type"` // FieldPath shows the path of the field whose value will be used. // +optional // +immutable FieldPath string `json:"fieldPath,omitempty"` // MatchString is the value you'd like to match if you're using "MatchString" type. // +optional // +immutable MatchString string `json:"matchString,omitempty"` // MatchInt is the value you'd like to match if you're using "MatchInt" type. // +optional // +immutable MatchInteger int64 `json:"matchInteger,omitempty"` }
ReadinessCheck is used to indicate how to tell whether a resource is ready for consumption
func (*ReadinessCheck) DeepCopy ¶ added in v0.13.0
func (in *ReadinessCheck) DeepCopy() *ReadinessCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadinessCheck.
func (*ReadinessCheck) DeepCopyInto ¶ added in v0.13.0
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.4.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 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.4.0
type StringCombine struct { // Format the input using a Go format string. See // https://golang.org/pkg/fmt/ for details. // +immutable Format string `json:"fmt"` }
A StringCombine combines multiple input values into a single string.
func (*StringCombine) DeepCopy ¶ added in v1.4.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.4.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.7.3
type StringConversionType string
A 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.7.3
type StringTransformType string
A 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 // +immutable Type TransformType `json:"type"` // Math is used to transform the input via mathematical operations such as // multiplication. // +optional // +immutable Math *MathTransform `json:"math,omitempty"` // Map uses the input as a key in the given map and returns the value. // +optional // +immutable 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 // +immutable String *StringTransform `json:"string,omitempty"` // Convert is used to cast the input into the given output type. // +optional // +immutable 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 ¶ added in v0.14.0
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.