upbound/platform-ref-upbound-spaces@v0.4.0
xspaces.spaces.platformref.upbound.io

xspaces.spaces.platformref.upbound.io

xspaces.spaces.platformref.upbound.io
upbound/platform-ref-upbound-spaces@v0.4.0xspaces.spaces.platformref.upbound.io
Type

Composition

Referenced XRD

XSpace

Source Codegithub.com/upbound/platform-ref-upbound-spaces
YAML
kind: Composition
apiVersion: apiextensions.crossplane.io/v1
metadata:
  name: xspaces.spaces.platformref.upbound.io
  creationTimestamp: null
spec:
  compositeTypeRef:
    apiVersion: spaces.platformref.upbound.io/v1alpha1
    kind: XSpace
  mode: Pipeline
  pipeline:
    - step: patch-and-transform
      functionRef:
        name: upboundcare-function-conditional-patch-and-transform
      input:
        apiVersion: pt.fn.crossplane.io/v1beta1
        kind: Resources
        resources:
          - base:
              apiVersion: spaces.platformref.upbound.io/v1alpha1
              kind: XCluster
            name: managed-kubernetes-cluster
            patches:
              - fromFieldPath: spec.parameters.deletionPolicy
                toFieldPath: spec.parameters.deletionPolicy
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.providerConfigName
                toFieldPath: spec.parameters.providerConfigName
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.cloud
                toFieldPath: spec.parameters.cloud
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.id
                toFieldPath: spec.parameters.id
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.region
                toFieldPath: spec.parameters.region
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.version
                toFieldPath: spec.parameters.version
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.iam
                toFieldPath: spec.parameters.iam
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.nodes
                toFieldPath: spec.parameters.nodes
                type: FromCompositeFieldPath
          - base:
              apiVersion: spaces.platformref.upbound.io/v1alpha1
              kind: XInit
            name: spaces-init
            patches:
              - fromFieldPath: spec.parameters.id
                toFieldPath: spec.parameters.providerConfigName
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.operators.certmanager
                toFieldPath: spec.parameters.operators.certmanager
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.operators.ingressnginx
                toFieldPath: spec.parameters.operators.ingressnginx
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.operators.externaldns
                toFieldPath: spec.parameters.operators.externaldns
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.operators.crossplane
                toFieldPath: spec.parameters.operators.crossplane
                type: FromCompositeFieldPath
          - base:
              apiVersion: spaces.platformref.upbound.io/v1alpha1
              kind: XCore
            name: spaces-core
            patches:
              - fromFieldPath: spec.parameters.id
                toFieldPath: spec.parameters.providerConfigName
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.spaces
                toFieldPath: spec.parameters.spaces
                type: FromCompositeFieldPath
          - base:
              apiVersion: apiextensions.crossplane.io/v1alpha1
              kind: Usage
              spec:
                by:
                  apiVersion: spaces.platformref.upbound.io/v1alpha1
                  kind: XCore
                  resourceSelector:
                    matchControllerRef: true
                of:
                  apiVersion: spaces.platformref.upbound.io/v1alpha1
                  kind: XInit
                  resourceSelector:
                    matchControllerRef: true
            name: usageXInitByXCore
            readinessChecks:
              - type: None
          - base:
              apiVersion: apiextensions.crossplane.io/v1alpha1
              kind: Usage
              spec:
                by:
                  apiVersion: spaces.platformref.upbound.io/v1alpha1
                  kind: XInit
                  resourceSelector:
                    matchControllerRef: true
                of:
                  apiVersion: spaces.platformref.upbound.io/v1alpha1
                  kind: XCluster
                  resourceSelector:
                    matchControllerRef: true
            name: usageXClusterByXInit
            readinessChecks:
              - type: None
          - base:
              apiVersion: gitops.platform.upbound.io/v1alpha1
              kind: XArgo
            condition: >
              "argocd" in observed.composite.resource.spec.parameters.operators
              &&

              observed.composite.resource.spec.parameters.operators.argocd.enabled == true
            name: argocd
            patches:
              - fromFieldPath: spec.parameters.id
                toFieldPath: spec.parameters.providerConfigName
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.operators.argocd.ingressUrl
                toFieldPath: spec.parameters.ingressUrl
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.operators.argocd.git
                toFieldPath: spec.parameters.source.git
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.operators.argocd.resourceExclusions
                toFieldPath: spec.parameters.resourceExclusions
                type: FromCompositeFieldPath
              - fromFieldPath: spec.parameters.operators.argocd.resourceInclusions
                toFieldPath: spec.parameters.resourceInclusions
                type: FromCompositeFieldPath
          - base:
              apiVersion: apiextensions.crossplane.io/v1alpha1
              kind: Usage
              spec:
                by:
                  apiVersion: gitops.platform.upbound.io/v1alpha1
                  kind: XArgo
                  resourceSelector:
                    matchControllerRef: true
                of:
                  apiVersion: spaces.platformref.upbound.io/v1alpha1
                  kind: XCluster
                  resourceSelector:
                    matchControllerRef: true
            condition: >
              "argocd" in observed.composite.resource.spec.parameters.operators
              &&

              observed.composite.resource.spec.parameters.operators.argocd.enabled == true
            name: usageXClusterByXArgo
    - step: ordered-creation
      functionRef:
        name: crossplane-contrib-function-sequencer
      input:
        apiVersion: template.fn.crossplane.io/v1beta1
        kind: Input
        rules:
          - sequence:
              - managed-kubernetes-cluster
              - spaces-init
          - sequence:
              - spaces-init
              - spaces-core
          - sequence:
              - spaces-core
              - argocd
          - sequence:
              - spaces-core
              - usageXClusterByXArgo
  writeConnectionSecretsToNamespace: upbound-system
Discover the building blocks for your internal cloud platform.
© 2025 Upbound, Inc.
Solutions