sigs.k8s.io/cluster-api-provider-azure@v1.14.3/templates/flavors/clusterclass/clusterclass.yaml (about)

     1  apiVersion: cluster.x-k8s.io/v1beta1
     2  kind: ClusterClass
     3  metadata:
     4    name: ${CLUSTER_CLASS_NAME}
     5    namespace: default
     6  spec:
     7    controlPlane:
     8      machineInfrastructure:
     9        ref:
    10          kind: AzureMachineTemplate
    11          apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    12          name: ${CLUSTER_NAME}-control-plane
    13      ref:
    14        apiVersion: controlplane.cluster.x-k8s.io/v1beta1
    15        kind: KubeadmControlPlaneTemplate
    16        name: ${CLUSTER_NAME}-control-plane
    17    infrastructure:
    18      ref:
    19        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    20        kind: AzureClusterTemplate
    21        name: ${CLUSTER_NAME}-azure-cluster
    22    workers:
    23      machineDeployments:
    24      - class: ${CLUSTER_NAME}-worker
    25        template:
    26          bootstrap:
    27            ref:
    28              apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
    29              kind: KubeadmConfigTemplate
    30              name: ${CLUSTER_NAME}-md-0
    31          infrastructure:
    32            ref:
    33              apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
    34              kind: AzureMachineTemplate
    35              name: ${CLUSTER_NAME}-md-0
    36    patches:
    37      - definitions:
    38        - jsonPatches:
    39          - op: add
    40            path: /spec/template/spec/kubeadmConfigSpec/clusterConfiguration/controllerManager/extraArgs/cluster-name
    41            valueFrom:
    42              variable: builtin.cluster.name
    43          - op: replace
    44            path: /spec/template/spec/kubeadmConfigSpec/files
    45            valueFrom:
    46              template: |
    47                - contentFrom:
    48                    secret:
    49                      key: control-plane-azure.json
    50                      name: "{{ .builtin.controlPlane.machineTemplate.infrastructureRef.name }}-azure-json"
    51                  owner: root:root
    52                  path: /etc/kubernetes/azure.json
    53                  permissions: "0644"
    54          selector:
    55            apiVersion: controlplane.cluster.x-k8s.io/v1beta1
    56            kind: KubeadmControlPlaneTemplate
    57            matchResources:
    58              controlPlane: true
    59        name: controlPlaneAzureJsonSecretName
    60      - definitions:
    61        - jsonPatches:
    62          - op: replace
    63            path: /spec/template/spec/files
    64            valueFrom:
    65              template: |
    66                - contentFrom:
    67                    secret:
    68                      key: worker-node-azure.json
    69                      name: "{{ .builtin.machineDeployment.infrastructureRef.name }}-azure-json"
    70                  owner: root:root
    71                  path: /etc/kubernetes/azure.json
    72                  permissions: "0644"
    73          selector:
    74            apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
    75            kind: KubeadmConfigTemplate
    76            matchResources:
    77              machineDeploymentClass:
    78                names:
    79                - ${CLUSTER_NAME}-worker
    80        name: workerAzureJsonSecretName