Skip to content

apiextensions.v1.composition

"A Composition specifies how a composite resource should be composed."

Index

Fields

fn new

new(name)

new returns an instance of Composition

fn fromXRD

fromXRD(name, namespace, provider, xrdRef, xrdVersion)

Create a Composition based on an XRD.

Attributes: - name of the composition - namespace where connectionDetails are propagated too, commonly the the management namespace (ie. crossplane) - provider of the resources in this composition - xrdRef XRD object with which this composition is compatible - xrdVersion Version of XRD object with which this composition is compatible

obj metadata

"ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create."

fn metadata.withAnnotations

withAnnotations(annotations)

"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"

fn metadata.withAnnotationsMixin

withAnnotationsMixin(annotations)

"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"

Note: This function appends passed data to existing values

fn metadata.withClusterName

withClusterName(clusterName)

"The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request."

fn metadata.withCreationTimestamp

withCreationTimestamp(creationTimestamp)

"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."

fn metadata.withDeletionGracePeriodSeconds

withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)

"Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only."

fn metadata.withDeletionTimestamp

withDeletionTimestamp(deletionTimestamp)

"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."

fn metadata.withFinalizers

withFinalizers(finalizers)

"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."

fn metadata.withFinalizersMixin

withFinalizersMixin(finalizers)

"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."

Note: This function appends passed data to existing values

fn metadata.withGenerateName

withGenerateName(generateName)

"GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency"

fn metadata.withGeneration

withGeneration(generation)

"A sequence number representing a specific generation of the desired state. Populated by the system. Read-only."

fn metadata.withLabels

withLabels(labels)

"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"

fn metadata.withLabelsMixin

withLabelsMixin(labels)

"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"

Note: This function appends passed data to existing values

fn metadata.withName

withName(name)

"Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names"

fn metadata.withNamespace

withNamespace(namespace)

"Namespace defines the space within which each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces"

fn metadata.withOwnerReferences

withOwnerReferences(ownerReferences)

"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."

fn metadata.withOwnerReferencesMixin

withOwnerReferencesMixin(ownerReferences)

"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."

Note: This function appends passed data to existing values

fn metadata.withResourceVersion

withResourceVersion(resourceVersion)

"An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency"

withSelfLink(selfLink)

"SelfLink is a URL representing this object. Populated by the system. Read-only.\n\nDEPRECATED Kubernetes will stop propagating this field in 1.20 release and the field is planned to be removed in 1.21 release."

fn metadata.withUid

withUid(uid)

"UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids"

obj spec

"CompositionSpec specifies desired state of a composition."

fn spec.withFunctions

withFunctions(functions)

"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. \n 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."

fn spec.withFunctionsMixin

withFunctionsMixin(functions)

"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. \n 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."

Note: This function appends passed data to existing values

fn spec.withPatchSets

withPatchSets(patchSets)

"PatchSets define a named set of patches that may be included by any resource in this Composition. PatchSets cannot themselves refer to other PatchSets."

fn spec.withPatchSetsMixin

withPatchSetsMixin(patchSets)

"PatchSets define a named set of patches that may be included by any resource in this Composition. PatchSets cannot themselves refer to other PatchSets."

Note: This function appends passed data to existing values

fn spec.withResources

withResources(resources)

"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."

fn spec.withResourcesMixin

withResourcesMixin(resources)

"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."

Note: This function appends passed data to existing values

fn spec.withWriteConnectionSecretsToNamespace

withWriteConnectionSecretsToNamespace(writeConnectionSecretsToNamespace)

"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."

obj spec.compositeTypeRef

"CompositeTypeRef specifies the type of composite resource that this composition is compatible with."

fn spec.compositeTypeRef.withApiVersion

withApiVersion(apiVersion)

"APIVersion of the type."

fn spec.compositeTypeRef.withKind

withKind(kind)

"Kind of the type."

obj spec.environment

"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."

fn spec.environment.withEnvironmentConfigs

withEnvironmentConfigs(environmentConfigs)

"EnvironmentConfigs selects a list of EnvironmentConfigs. The resolved resources are stored in the composite resource at spec.environmentConfigRefs and is only updated if it is null. \n 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. \n The computed environment can be accessed in a composition using FromEnvironmentFieldPath and CombineFromEnvironment patches."

fn spec.environment.withEnvironmentConfigsMixin

withEnvironmentConfigsMixin(environmentConfigs)

"EnvironmentConfigs selects a list of EnvironmentConfigs. The resolved resources are stored in the composite resource at spec.environmentConfigRefs and is only updated if it is null. \n 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. \n The computed environment can be accessed in a composition using FromEnvironmentFieldPath and CombineFromEnvironment patches."

Note: This function appends passed data to existing values

fn spec.environment.withPatches

withPatches(patches)

"Patches is a list of environment patches that are executed before a composition's resources are composed."

fn spec.environment.withPatchesMixin

withPatchesMixin(patches)

"Patches is a list of environment patches that are executed before a composition's resources are composed."

Note: This function appends passed data to existing values

obj spec.environment.environmentConfigs

"EnvironmentConfigs selects a list of EnvironmentConfigs. The resolved resources are stored in the composite resource at spec.environmentConfigRefs and is only updated if it is null. \n 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. \n The computed environment can be accessed in a composition using FromEnvironmentFieldPath and CombineFromEnvironment patches."

fn spec.environment.environmentConfigs.withType

withType(type)

"Type specifies the way the EnvironmentConfig is selected. Default is Reference"

obj spec.environment.environmentConfigs.ref

"Ref is a named reference to a single EnvironmentConfig. Either Ref or Selector is required."

fn spec.environment.environmentConfigs.ref.withName

withName(name)

"The name of the object."

obj spec.environment.environmentConfigs.selector

"Selector selects EnvironmentConfig(s) via labels."

fn spec.environment.environmentConfigs.selector.withMatchLabels

withMatchLabels(matchLabels)

"MatchLabels ensures an object with matching labels is selected."

fn spec.environment.environmentConfigs.selector.withMatchLabelsMixin

withMatchLabelsMixin(matchLabels)

"MatchLabels ensures an object with matching labels is selected."

Note: This function appends passed data to existing values

fn spec.environment.environmentConfigs.selector.withMaxMatch

withMaxMatch(maxMatch)

"MaxMatch specifies the number of extracted EnvironmentConfigs in Multiple mode, extracts all if nil."

fn spec.environment.environmentConfigs.selector.withMode

withMode(mode)

"Mode specifies retrieval strategy: \"Single\" or \"Multiple\"."

fn spec.environment.environmentConfigs.selector.withSortByFieldPath

withSortByFieldPath(sortByFieldPath)

"SortByFieldPath is the path to the field based on which list of EnvironmentConfigs is alphabetically sorted."

obj spec.environment.environmentConfigs.selector.matchLabels

"MatchLabels ensures an object with matching labels is selected."

fn spec.environment.environmentConfigs.selector.matchLabels.withKey

withKey(key)

"Key of the label to match."

fn spec.environment.environmentConfigs.selector.matchLabels.withType

withType(type)

"Type specifies where the value for a label comes from."

fn spec.environment.environmentConfigs.selector.matchLabels.withValue

withValue(value)

"Value specifies a literal label value."

fn spec.environment.environmentConfigs.selector.matchLabels.withValueFromFieldPath

withValueFromFieldPath(valueFromFieldPath)

"ValueFromFieldPath specifies the field path to look for the label value."

obj spec.environment.patches

"Patches is a list of environment patches that are executed before a composition's resources are composed."

fn spec.environment.patches.withFromFieldPath

withFromFieldPath(fromFieldPath)

"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."

fn spec.environment.patches.withToFieldPath

withToFieldPath(toFieldPath)

"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."

fn spec.environment.patches.withTransforms

withTransforms(transforms)

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

fn spec.environment.patches.withTransformsMixin

withTransformsMixin(transforms)

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

Note: This function appends passed data to existing values

fn spec.environment.patches.withType

withType(type)

"Type sets the patching behaviour to be used. Each patch type may require its own fields to be set on the Patch object."

obj spec.environment.patches.combine

"Combine is the patch configuration for a CombineFromComposite or CombineToComposite patch."

fn spec.environment.patches.combine.withStrategy

withStrategy(strategy)

"Strategy defines the strategy to use to combine the input variable values. Currently only string is supported."

fn spec.environment.patches.combine.withVariables

withVariables(variables)

"Variables are the list of variables whose values will be retrieved and combined."

fn spec.environment.patches.combine.withVariablesMixin

withVariablesMixin(variables)

"Variables are the list of variables whose values will be retrieved and combined."

Note: This function appends passed data to existing values

obj spec.environment.patches.combine.string

"String declares that input variables should be combined into a single string, using the relevant settings for formatting purposes."

fn spec.environment.patches.combine.string.withFmt

withFmt(fmt)

"Format the input using a Go format string. See https://golang.org/pkg/fmt/ for details."

obj spec.environment.patches.combine.variables

"Variables are the list of variables whose values will be retrieved and combined."

fn spec.environment.patches.combine.variables.withFromFieldPath

withFromFieldPath(fromFieldPath)

"FromFieldPath is the path of the field on the source whose value is to be used as input."

obj spec.environment.patches.policy

"Policy configures the specifics of patching behaviour."

fn spec.environment.patches.policy.withFromFieldPath

withFromFieldPath(fromFieldPath)

"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."

obj spec.environment.patches.policy.mergeOptions

"MergeOptions Specifies merge options on a field path"

fn spec.environment.patches.policy.mergeOptions.withAppendSlice

withAppendSlice(appendSlice)

"Specifies that already existing elements in a merged slice should be preserved"

fn spec.environment.patches.policy.mergeOptions.withKeepMapValues

withKeepMapValues(keepMapValues)

"Specifies that already existing values in a merged map should be preserved"

obj spec.environment.patches.transforms

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

fn spec.environment.patches.transforms.withMap

withMap(map)

"Map uses the input as a key in the given map and returns the value."

fn spec.environment.patches.transforms.withMapMixin

withMapMixin(map)

"Map uses the input as a key in the given map and returns the value."

Note: This function appends passed data to existing values

fn spec.environment.patches.transforms.withType

withType(type)

"Type of the transform to be run."

obj spec.environment.patches.transforms.convert

"Convert is used to cast the input into the given output type."

fn spec.environment.patches.transforms.convert.withFormat

withFormat(format)

"The expected input format. \n * quantity - parses the input as a K8s resource.Quantity. Only used during string -> float64 conversions. \n If this property is null, the default conversion is applied."

fn spec.environment.patches.transforms.convert.withToType

withToType(toType)

"ToType is the type of the output of this transform."

obj spec.environment.patches.transforms.match

"Match is a more complex version of Map that matches a list of patterns."

fn spec.environment.patches.transforms.match.withFallbackTo

withFallbackTo(fallbackTo)

"Determines to what value the transform should fallback if no pattern matches."

fn spec.environment.patches.transforms.match.withFallbackValue

withFallbackValue(fallbackValue)

"The fallback value that should be returned by the transform if now pattern matches."

fn spec.environment.patches.transforms.match.withPatterns

withPatterns(patterns)

"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."

fn spec.environment.patches.transforms.match.withPatternsMixin

withPatternsMixin(patterns)

"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."

Note: This function appends passed data to existing values

obj spec.environment.patches.transforms.match.patterns

"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."

fn spec.environment.patches.transforms.match.patterns.withLiteral

withLiteral(literal)

"Literal exactly matches the input string (case sensitive). Is required if type is literal."

fn spec.environment.patches.transforms.match.patterns.withRegexp

withRegexp(regexp)

"Regexp to match against the input string. Is required if type is regexp."

fn spec.environment.patches.transforms.match.patterns.withResult

withResult(result)

"The value that is used as result of the transform if the pattern matches."

fn spec.environment.patches.transforms.match.patterns.withType

withType(type)

"Type specifies how the pattern matches the input. \n * literal - the pattern value has to exactly match (case sensitive) the input string. This is the default. \n * 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."

obj spec.environment.patches.transforms.math

"Math is used to transform the input via mathematical operations such as multiplication."

fn spec.environment.patches.transforms.math.withClampMax

withClampMax(clampMax)

"ClampMax makes sure that the value is not bigger than the given value."

fn spec.environment.patches.transforms.math.withClampMin

withClampMin(clampMin)

"ClampMin makes sure that the value is not smaller than the given value."

fn spec.environment.patches.transforms.math.withMultiply

withMultiply(multiply)

"Multiply the value."

fn spec.environment.patches.transforms.math.withType

withType(type)

"Type of the math transform to be run."

obj spec.environment.patches.transforms.string

"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."

fn spec.environment.patches.transforms.string.withConvert

withConvert(convert)

"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."

fn spec.environment.patches.transforms.string.withFmt

withFmt(fmt)

"Format the input using a Go format string. See https://golang.org/pkg/fmt/ for details."

fn spec.environment.patches.transforms.string.withTrim

withTrim(trim)

"Trim the prefix or suffix from the input"

fn spec.environment.patches.transforms.string.withType

withType(type)

"Type of the string transform to be run."

obj spec.environment.patches.transforms.string.regexp

"Extract a match from the input using a regular expression."

fn spec.environment.patches.transforms.string.regexp.withGroup

withGroup(group)

"Group number to match. 0 (the default) matches the entire expression."

fn spec.environment.patches.transforms.string.regexp.withMatch

withMatch(match)

"Match string. May optionally include submatches, aka capture groups. See https://pkg.go.dev/regexp/ for details."

obj spec.environment.policy

"Policy represents the Resolve and Resolution policies which apply to all EnvironmentSourceReferences in EnvironmentConfigs list."

fn spec.environment.policy.withResolution

withResolution(resolution)

"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."

fn spec.environment.policy.withResolve

withResolve(resolve)

"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."

obj spec.functions

"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. \n 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."

fn spec.functions.withConfig

withConfig(config)

"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."

fn spec.functions.withConfigMixin

withConfigMixin(config)

"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."

Note: This function appends passed data to existing values

fn spec.functions.withName

withName(name)

"Name of this function. Must be unique within its Composition."

fn spec.functions.withType

withType(type)

"Type of this function."

obj spec.functions.container

"Container configuration of this function."

fn spec.functions.container.withImage

withImage(image)

"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."

fn spec.functions.container.withImagePullPolicy

withImagePullPolicy(imagePullPolicy)

"ImagePullPolicy defines the pull policy for the function image."

fn spec.functions.container.withImagePullSecrets

withImagePullSecrets(imagePullSecrets)

"ImagePullSecrets are used to pull images from private OCI registries."

fn spec.functions.container.withImagePullSecretsMixin

withImagePullSecretsMixin(imagePullSecrets)

"ImagePullSecrets are used to pull images from private OCI registries."

Note: This function appends passed data to existing values

fn spec.functions.container.withTimeout

withTimeout(timeout)

"Timeout after which the Composition Function will be killed."

obj spec.functions.container.imagePullSecrets

"ImagePullSecrets are used to pull images from private OCI registries."

fn spec.functions.container.imagePullSecrets.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"

obj spec.functions.container.network

"Network configuration for the Composition Function."

fn spec.functions.container.network.withPolicy

withPolicy(policy)

"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."

obj spec.functions.container.resources

"Resources that may be used by the Composition Function."

obj spec.functions.container.resources.limits

"Limits specify the maximum compute resources that may be used by the Composition Function."

fn spec.functions.container.resources.limits.withCpu

withCpu(cpu)

"CPU, in cores. (500m = .5 cores)"

fn spec.functions.container.resources.limits.withMemory

withMemory(memory)

"Memory, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024)"

obj spec.functions.container.runner

"Runner configuration for the Composition Function."

fn spec.functions.container.runner.withEndpoint

withEndpoint(endpoint)

"Endpoint specifies how and where Crossplane should reach the runner it uses to invoke containerized Composition Functions."

obj spec.patchSets

"PatchSets define a named set of patches that may be included by any resource in this Composition. PatchSets cannot themselves refer to other PatchSets."

fn spec.patchSets.withName

withName(name)

"Name of this PatchSet."

fn spec.patchSets.withPatches

withPatches(patches)

"Patches will be applied as an overlay to the base resource."

fn spec.patchSets.withPatchesMixin

withPatchesMixin(patches)

"Patches will be applied as an overlay to the base resource."

Note: This function appends passed data to existing values

obj spec.patchSets.patches

"Patches will be applied as an overlay to the base resource."

fn spec.patchSets.patches.withFromFieldPath

withFromFieldPath(fromFieldPath)

"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."

fn spec.patchSets.patches.withPatchSetName

withPatchSetName(patchSetName)

"PatchSetName to include patches from. Required when type is PatchSet."

fn spec.patchSets.patches.withToFieldPath

withToFieldPath(toFieldPath)

"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."

fn spec.patchSets.patches.withTransforms

withTransforms(transforms)

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

fn spec.patchSets.patches.withTransformsMixin

withTransformsMixin(transforms)

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

Note: This function appends passed data to existing values

fn spec.patchSets.patches.withType

withType(type)

"Type sets the patching behaviour to be used. Each patch type may require its own fields to be set on the Patch object."

obj spec.patchSets.patches.combine

"Combine is the patch configuration for a CombineFromComposite, CombineFromEnvironment, CombineToComposite or CombineToEnvironment patch."

fn spec.patchSets.patches.combine.withStrategy

withStrategy(strategy)

"Strategy defines the strategy to use to combine the input variable values. Currently only string is supported."

fn spec.patchSets.patches.combine.withVariables

withVariables(variables)

"Variables are the list of variables whose values will be retrieved and combined."

fn spec.patchSets.patches.combine.withVariablesMixin

withVariablesMixin(variables)

"Variables are the list of variables whose values will be retrieved and combined."

Note: This function appends passed data to existing values

obj spec.patchSets.patches.combine.string

"String declares that input variables should be combined into a single string, using the relevant settings for formatting purposes."

fn spec.patchSets.patches.combine.string.withFmt

withFmt(fmt)

"Format the input using a Go format string. See https://golang.org/pkg/fmt/ for details."

obj spec.patchSets.patches.combine.variables

"Variables are the list of variables whose values will be retrieved and combined."

fn spec.patchSets.patches.combine.variables.withFromFieldPath

withFromFieldPath(fromFieldPath)

"FromFieldPath is the path of the field on the source whose value is to be used as input."

obj spec.patchSets.patches.policy

"Policy configures the specifics of patching behaviour."

fn spec.patchSets.patches.policy.withFromFieldPath

withFromFieldPath(fromFieldPath)

"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."

obj spec.patchSets.patches.policy.mergeOptions

"MergeOptions Specifies merge options on a field path"

fn spec.patchSets.patches.policy.mergeOptions.withAppendSlice

withAppendSlice(appendSlice)

"Specifies that already existing elements in a merged slice should be preserved"

fn spec.patchSets.patches.policy.mergeOptions.withKeepMapValues

withKeepMapValues(keepMapValues)

"Specifies that already existing values in a merged map should be preserved"

obj spec.patchSets.patches.transforms

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

fn spec.patchSets.patches.transforms.withMap

withMap(map)

"Map uses the input as a key in the given map and returns the value."

fn spec.patchSets.patches.transforms.withMapMixin

withMapMixin(map)

"Map uses the input as a key in the given map and returns the value."

Note: This function appends passed data to existing values

fn spec.patchSets.patches.transforms.withType

withType(type)

"Type of the transform to be run."

obj spec.patchSets.patches.transforms.convert

"Convert is used to cast the input into the given output type."

fn spec.patchSets.patches.transforms.convert.withFormat

withFormat(format)

"The expected input format. \n * quantity - parses the input as a K8s resource.Quantity. Only used during string -> float64 conversions. \n If this property is null, the default conversion is applied."

fn spec.patchSets.patches.transforms.convert.withToType

withToType(toType)

"ToType is the type of the output of this transform."

obj spec.patchSets.patches.transforms.match

"Match is a more complex version of Map that matches a list of patterns."

fn spec.patchSets.patches.transforms.match.withFallbackTo

withFallbackTo(fallbackTo)

"Determines to what value the transform should fallback if no pattern matches."

fn spec.patchSets.patches.transforms.match.withFallbackValue

withFallbackValue(fallbackValue)

"The fallback value that should be returned by the transform if now pattern matches."

fn spec.patchSets.patches.transforms.match.withPatterns

withPatterns(patterns)

"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."

fn spec.patchSets.patches.transforms.match.withPatternsMixin

withPatternsMixin(patterns)

"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."

Note: This function appends passed data to existing values

obj spec.patchSets.patches.transforms.match.patterns

"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."

fn spec.patchSets.patches.transforms.match.patterns.withLiteral

withLiteral(literal)

"Literal exactly matches the input string (case sensitive). Is required if type is literal."

fn spec.patchSets.patches.transforms.match.patterns.withRegexp

withRegexp(regexp)

"Regexp to match against the input string. Is required if type is regexp."

fn spec.patchSets.patches.transforms.match.patterns.withResult

withResult(result)

"The value that is used as result of the transform if the pattern matches."

fn spec.patchSets.patches.transforms.match.patterns.withType

withType(type)

"Type specifies how the pattern matches the input. \n * literal - the pattern value has to exactly match (case sensitive) the input string. This is the default. \n * 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."

obj spec.patchSets.patches.transforms.math

"Math is used to transform the input via mathematical operations such as multiplication."

fn spec.patchSets.patches.transforms.math.withClampMax

withClampMax(clampMax)

"ClampMax makes sure that the value is not bigger than the given value."

fn spec.patchSets.patches.transforms.math.withClampMin

withClampMin(clampMin)

"ClampMin makes sure that the value is not smaller than the given value."

fn spec.patchSets.patches.transforms.math.withMultiply

withMultiply(multiply)

"Multiply the value."

fn spec.patchSets.patches.transforms.math.withType

withType(type)

"Type of the math transform to be run."

obj spec.patchSets.patches.transforms.string

"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."

fn spec.patchSets.patches.transforms.string.withConvert

withConvert(convert)

"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."

fn spec.patchSets.patches.transforms.string.withFmt

withFmt(fmt)

"Format the input using a Go format string. See https://golang.org/pkg/fmt/ for details."

fn spec.patchSets.patches.transforms.string.withTrim

withTrim(trim)

"Trim the prefix or suffix from the input"

fn spec.patchSets.patches.transforms.string.withType

withType(type)

"Type of the string transform to be run."

obj spec.patchSets.patches.transforms.string.regexp

"Extract a match from the input using a regular expression."

fn spec.patchSets.patches.transforms.string.regexp.withGroup

withGroup(group)

"Group number to match. 0 (the default) matches the entire expression."

fn spec.patchSets.patches.transforms.string.regexp.withMatch

withMatch(match)

"Match string. May optionally include submatches, aka capture groups. See https://pkg.go.dev/regexp/ for details."

obj spec.publishConnectionDetailsWithStoreConfigRef

"PublishConnectionDetailsWithStoreConfig specifies the secret store config with which the connection details of composite resources dynamically provisioned using this composition will be published. \n 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."

fn spec.publishConnectionDetailsWithStoreConfigRef.withName

withName(name)

"Name of the referenced StoreConfig."

obj spec.resources

"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."

fn spec.resources.withBase

withBase(base)

"Base is the target resource that the patches will be applied on."

fn spec.resources.withBaseMixin

withBaseMixin(base)

"Base is the target resource that the patches will be applied on."

Note: This function appends passed data to existing values

fn spec.resources.withConnectionDetails

withConnectionDetails(connectionDetails)

"ConnectionDetails lists the propagation secret keys from this target resource to the composition instance connection secret."

fn spec.resources.withConnectionDetailsMixin

withConnectionDetailsMixin(connectionDetails)

"ConnectionDetails lists the propagation secret keys from this target resource to the composition instance connection secret."

Note: This function appends passed data to existing values

fn spec.resources.withName

withName(name)

"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."

fn spec.resources.withPatches

withPatches(patches)

"Patches will be applied as overlay to the base resource."

fn spec.resources.withPatchesMixin

withPatchesMixin(patches)

"Patches will be applied as overlay to the base resource."

Note: This function appends passed data to existing values

fn spec.resources.withReadinessChecks

withReadinessChecks(readinessChecks)

"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\"."

fn spec.resources.withReadinessChecksMixin

withReadinessChecksMixin(readinessChecks)

"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\"."

Note: This function appends passed data to existing values

obj spec.resources.connectionDetails

"ConnectionDetails lists the propagation secret keys from this target resource to the composition instance connection secret."

fn spec.resources.connectionDetails.withFromConnectionSecretKey

withFromConnectionSecretKey(fromConnectionSecretKey)

"FromConnectionSecretKey is the key that will be used to fetch the value from the composed resource's connection secret."

fn spec.resources.connectionDetails.withFromFieldPath

withFromFieldPath(fromFieldPath)

"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."

fn spec.resources.connectionDetails.withName

withName(name)

"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."

fn spec.resources.connectionDetails.withType

withType(type)

"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"

fn spec.resources.connectionDetails.withValue

withValue(value)

"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."

obj spec.resources.patches

"Patches will be applied as overlay to the base resource."

fn spec.resources.patches.withFromFieldPath

withFromFieldPath(fromFieldPath)

"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."

fn spec.resources.patches.withPatchSetName

withPatchSetName(patchSetName)

"PatchSetName to include patches from. Required when type is PatchSet."

fn spec.resources.patches.withToFieldPath

withToFieldPath(toFieldPath)

"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."

fn spec.resources.patches.withTransforms

withTransforms(transforms)

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

fn spec.resources.patches.withTransformsMixin

withTransformsMixin(transforms)

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

Note: This function appends passed data to existing values

fn spec.resources.patches.withType

withType(type)

"Type sets the patching behaviour to be used. Each patch type may require its own fields to be set on the Patch object."

obj spec.resources.patches.combine

"Combine is the patch configuration for a CombineFromComposite, CombineFromEnvironment, CombineToComposite or CombineToEnvironment patch."

fn spec.resources.patches.combine.withStrategy

withStrategy(strategy)

"Strategy defines the strategy to use to combine the input variable values. Currently only string is supported."

fn spec.resources.patches.combine.withVariables

withVariables(variables)

"Variables are the list of variables whose values will be retrieved and combined."

fn spec.resources.patches.combine.withVariablesMixin

withVariablesMixin(variables)

"Variables are the list of variables whose values will be retrieved and combined."

Note: This function appends passed data to existing values

obj spec.resources.patches.combine.string

"String declares that input variables should be combined into a single string, using the relevant settings for formatting purposes."

fn spec.resources.patches.combine.string.withFmt

withFmt(fmt)

"Format the input using a Go format string. See https://golang.org/pkg/fmt/ for details."

obj spec.resources.patches.combine.variables

"Variables are the list of variables whose values will be retrieved and combined."

fn spec.resources.patches.combine.variables.withFromFieldPath

withFromFieldPath(fromFieldPath)

"FromFieldPath is the path of the field on the source whose value is to be used as input."

obj spec.resources.patches.policy

"Policy configures the specifics of patching behaviour."

fn spec.resources.patches.policy.withFromFieldPath

withFromFieldPath(fromFieldPath)

"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."

obj spec.resources.patches.policy.mergeOptions

"MergeOptions Specifies merge options on a field path"

fn spec.resources.patches.policy.mergeOptions.withAppendSlice

withAppendSlice(appendSlice)

"Specifies that already existing elements in a merged slice should be preserved"

fn spec.resources.patches.policy.mergeOptions.withKeepMapValues

withKeepMapValues(keepMapValues)

"Specifies that already existing values in a merged map should be preserved"

obj spec.resources.patches.transforms

"Transforms are the list of functions that are used as a FIFO pipe for the input to be transformed."

fn spec.resources.patches.transforms.withMap

withMap(map)

"Map uses the input as a key in the given map and returns the value."

fn spec.resources.patches.transforms.withMapMixin

withMapMixin(map)

"Map uses the input as a key in the given map and returns the value."

Note: This function appends passed data to existing values

fn spec.resources.patches.transforms.withType

withType(type)

"Type of the transform to be run."

obj spec.resources.patches.transforms.convert

"Convert is used to cast the input into the given output type."

fn spec.resources.patches.transforms.convert.withFormat

withFormat(format)

"The expected input format. \n * quantity - parses the input as a K8s resource.Quantity. Only used during string -> float64 conversions. \n If this property is null, the default conversion is applied."

fn spec.resources.patches.transforms.convert.withToType

withToType(toType)

"ToType is the type of the output of this transform."

obj spec.resources.patches.transforms.match

"Match is a more complex version of Map that matches a list of patterns."

fn spec.resources.patches.transforms.match.withFallbackTo

withFallbackTo(fallbackTo)

"Determines to what value the transform should fallback if no pattern matches."

fn spec.resources.patches.transforms.match.withFallbackValue

withFallbackValue(fallbackValue)

"The fallback value that should be returned by the transform if now pattern matches."

fn spec.resources.patches.transforms.match.withPatterns

withPatterns(patterns)

"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."

fn spec.resources.patches.transforms.match.withPatternsMixin

withPatternsMixin(patterns)

"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."

Note: This function appends passed data to existing values

obj spec.resources.patches.transforms.match.patterns

"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."

fn spec.resources.patches.transforms.match.patterns.withLiteral

withLiteral(literal)

"Literal exactly matches the input string (case sensitive). Is required if type is literal."

fn spec.resources.patches.transforms.match.patterns.withRegexp

withRegexp(regexp)

"Regexp to match against the input string. Is required if type is regexp."

fn spec.resources.patches.transforms.match.patterns.withResult

withResult(result)

"The value that is used as result of the transform if the pattern matches."

fn spec.resources.patches.transforms.match.patterns.withType

withType(type)

"Type specifies how the pattern matches the input. \n * literal - the pattern value has to exactly match (case sensitive) the input string. This is the default. \n * 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."

obj spec.resources.patches.transforms.math

"Math is used to transform the input via mathematical operations such as multiplication."

fn spec.resources.patches.transforms.math.withClampMax

withClampMax(clampMax)

"ClampMax makes sure that the value is not bigger than the given value."

fn spec.resources.patches.transforms.math.withClampMin

withClampMin(clampMin)

"ClampMin makes sure that the value is not smaller than the given value."

fn spec.resources.patches.transforms.math.withMultiply

withMultiply(multiply)

"Multiply the value."

fn spec.resources.patches.transforms.math.withType

withType(type)

"Type of the math transform to be run."

obj spec.resources.patches.transforms.string

"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."

fn spec.resources.patches.transforms.string.withConvert

withConvert(convert)

"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."

fn spec.resources.patches.transforms.string.withFmt

withFmt(fmt)

"Format the input using a Go format string. See https://golang.org/pkg/fmt/ for details."

fn spec.resources.patches.transforms.string.withTrim

withTrim(trim)

"Trim the prefix or suffix from the input"

fn spec.resources.patches.transforms.string.withType

withType(type)

"Type of the string transform to be run."

obj spec.resources.patches.transforms.string.regexp

"Extract a match from the input using a regular expression."

fn spec.resources.patches.transforms.string.regexp.withGroup

withGroup(group)

"Group number to match. 0 (the default) matches the entire expression."

fn spec.resources.patches.transforms.string.regexp.withMatch

withMatch(match)

"Match string. May optionally include submatches, aka capture groups. See https://pkg.go.dev/regexp/ for details."

obj spec.resources.readinessChecks

"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\"."

fn spec.resources.readinessChecks.withFieldPath

withFieldPath(fieldPath)

"FieldPath shows the path of the field whose value will be used."

fn spec.resources.readinessChecks.withMatchInteger

withMatchInteger(matchInteger)

"MatchInt is the value you'd like to match if you're using \"MatchInt\" type."

fn spec.resources.readinessChecks.withMatchString

withMatchString(matchString)

"MatchString is the value you'd like to match if you're using \"MatchString\" type."

fn spec.resources.readinessChecks.withType

withType(type)

"Type indicates the type of probe you'd like to use."

obj spec.resources.readinessChecks.matchCondition

"MatchCondition specifies the condition you'd like to match if you're using \"MatchCondition\" type."

fn spec.resources.readinessChecks.matchCondition.withType

withType(type)

"Type indicates the type of condition you'd like to use."