Documentation ¶
Overview ¶
Package v1alpha1 contains API types that extend the Crossplane API. +kubebuilder:object:generate=true +groupName=apiextensions.crossplane.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- func CompositionSpecDiffers() xpv1.Condition
- func CompositionSpecMatches() xpv1.Condition
- type Combine
- type CombineStrategy
- type CombineVariable
- type ComposedTemplate
- type CompositionRevision
- type CompositionRevisionList
- type CompositionRevisionSpec
- type CompositionRevisionStatus
- type ConnectionDetail
- type ConnectionDetailType
- type ConvertTransform
- type FromFieldPathPolicy
- type MapTransform
- type MathTransform
- type Patch
- type PatchPolicy
- type PatchSet
- type PatchType
- type ReadinessCheck
- type ReadinessCheckType
- type StringCombine
- type StringConversionType
- type StringTransform
- type StringTransformType
- type Transform
- type TransformType
- type TypeReference
Constants ¶
const ( ReasonCompositionSpecMatches xpv1.ConditionReason = "CompositionSpecMatches" ReasonCompositionSpecDiffers xpv1.ConditionReason = "CompositionSpecDiffers" )
Reasons a package is or is not current.
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" // LabelCompositionSpecHash is a hash of the Composition spec used to // create this CompositionRevision. Used to identify identical // revisions. LabelCompositionSpecHash = "crossplane.io/composition-spec-hash" )
const ( ConvertTransformTypeString = "string" ConvertTransformTypeBool = "bool" ConvertTransformTypeInt = "int" ConvertTransformTypeInt64 = "int64" ConvertTransformTypeFloat64 = "float64" )
The list of supported ConvertTransform input and output types.
const ( // TypeCurrent indicates whether a CompositionRevision is 'current' - // i.e. whether it matches the current state of its Composition. TypeCurrent xpv1.ConditionType = "Current" )
Condition types.
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 ( CompositionRevisionKind = reflect.TypeOf(CompositionRevision{}).Name() CompositionRevisionGroupKind = schema.GroupKind{Group: Group, Kind: CompositionRevisionKind}.String() CompositionRevisionKindAPIVersion = CompositionRevisionKind + "." + SchemeGroupVersion.String() CompositionRevisionGroupVersionKind = SchemeGroupVersion.WithKind(CompositionRevisionKind) )
Composition type metadata.
Functions ¶
func CompositionSpecDiffers ¶ added in v1.4.0
CompositionSpecDiffers indicates that a revision is current because its spec differs from the Composition's.
func CompositionSpecMatches ¶ added in v1.4.0
CompositionSpecMatches indicates that a revision is current because its spec matches the Composition's.
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="CURRENT",type="string",JSONPath=".status.conditions[?(@.type=='Current')].status" +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"` // Resources is the list of resource templates that will be used when a // composite resource referring to this composition is created. Resources []ComposedTemplate `json:"resources"` // 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 secrets of composite resource dynamically // provisioned using this composition will be published. // +optional // +kubebuilder:default={"name": "default"} PublishConnectionDetailsWithStoreConfigRef *xpv1.Reference `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 ConvertTransform ¶ added in v1.4.0
type ConvertTransform struct { // ToType is the type of the output of this transform. // +immutable // +kubebuilder:validation:Enum=string;int;int64;bool;float64 ToType string `json:"toType"` }
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 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 MapTransform ¶
type MapTransform struct { // Pairs is the map that will be used for transform. // +optional // +immutable Pairs map[string]string `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 interface{}) (interface{}, 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 MathTransform ¶
type MathTransform struct { // Multiply the value. // +optional // +immutable 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 // +immutable // +kubebuilder:validation:Enum=FromCompositeFieldPath;PatchSet;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 // +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"` }
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 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" StringConversionTypeToBase64 StringConversionType = "ToBase64" StringConversionTypeFromBase64 StringConversionType = "FromBase64" )
Accepted StringConversionTypes.
type StringTransform ¶
type StringTransform struct { // Type of the string transform to be run. // +optional // +kubebuilder:validation:Enum=Format;Convert;TrimPrefix;TrimSuffix // +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 // +immutable Format *string `json:"fmt,omitempty"` // Convert the type of conversion to Upper/Lower case. // +optional // +kubebuilder:validation:Enum=ToUpper;ToLower;ToBase64;FromBase64 Convert *StringConversionType `json:"convert,omitempty"` // Trim the prefix or suffix from the input // +optional Trim *string `json:"trim,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 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" )
Accepted StringTransformTypes.
type Transform ¶
type Transform struct { // Type of the transform to be run. // +kubebuilder:validation:Enum=map;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"` // 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" 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.