183 lines
4.7 KiB
YAML
183 lines
4.7 KiB
YAML
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
apiVersion: airshipit.org/v1alpha1
|
|
kind: ReplacementTransformer
|
|
metadata:
|
|
annotations:
|
|
config.kubernetes.io/function: |-
|
|
container:
|
|
image: quay.io/airshipit/replacement-transformer:latest
|
|
name: cluster-controlplane-replacements
|
|
replacements:
|
|
# Kind Cluster replacements
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.clusterName
|
|
target:
|
|
objref:
|
|
kind: Cluster
|
|
fieldrefs: ["metadata.name"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.clusterName
|
|
target:
|
|
objref:
|
|
kind: Cluster
|
|
fieldrefs: ["spec.infrastructureRef.name"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.controlPlaneName
|
|
target:
|
|
objref:
|
|
kind: Cluster
|
|
fieldrefs: ["spec.controlPlaneRef.name"]
|
|
|
|
# Kind AzureCluster replacements
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.clusterName
|
|
target:
|
|
objref:
|
|
kind: AzureCluster
|
|
fieldrefs: ["metadata.name"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.subscriptionID
|
|
target:
|
|
objref:
|
|
kind: AzureCluster
|
|
fieldrefs: ["spec.subscriptionID"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.resourceGroup
|
|
target:
|
|
objref:
|
|
kind: AzureCluster
|
|
fieldrefs: ["spec.resourceGroup"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.virtualNet
|
|
target:
|
|
objref:
|
|
kind: AzureCluster
|
|
fieldrefs: ["spec.networkSpec.vnet.name"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.location
|
|
target:
|
|
objref:
|
|
kind: AzureCluster
|
|
fieldrefs: ["spec.location"]
|
|
|
|
# KubeadmControlPlane replacements
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.controlPlaneName
|
|
target:
|
|
objref:
|
|
kind: KubeadmControlPlane
|
|
fieldrefs: ["metadata.name"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.controlPlaneName
|
|
target:
|
|
objref:
|
|
kind: KubeadmControlPlane
|
|
fieldrefs: ["spec.infrastructureTemplate.name"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.controlPlaneReplicas
|
|
target:
|
|
objref:
|
|
kind: KubeadmControlPlane
|
|
fieldrefs: ["spec.replicas"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.k8sVersion
|
|
target:
|
|
objref:
|
|
kind: KubeadmControlPlane
|
|
fieldrefs: ["spec.version"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.clusterName
|
|
target:
|
|
objref:
|
|
kind: KubeadmControlPlane
|
|
fieldrefs: ["spec.kubeadmConfigSpec.controllerManager.extraArgs.cluster-name"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.kubeadmSecretName
|
|
target:
|
|
objref:
|
|
kind: KubeadmControlPlane
|
|
fieldrefs: ["spec.kubeadmConfigSpec.files.0.contentFrom.secret.name"]
|
|
|
|
# AzureMachineTemplate replacements
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.controlPlaneName
|
|
target:
|
|
objref:
|
|
kind: AzureMachineTemplate
|
|
fieldrefs: ["metadata.name"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.location
|
|
target:
|
|
objref:
|
|
kind: AzureMachineTemplate
|
|
fieldrefs: ["spec.template.spec.location"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.controlPlaneVMSize
|
|
target:
|
|
objref:
|
|
kind: AzureMachineTemplate
|
|
fieldrefs: ["spec.template.spec.vmSize"]
|
|
- source:
|
|
objref:
|
|
name: cluster-catalogue
|
|
fieldref: kubernetes.sshPublicKey
|
|
target:
|
|
objref:
|
|
kind: AzureMachineTemplate
|
|
fieldrefs: ["spec.template.spec.sshPublicKey"]
|
|
|
|
# Dex Secrets for Certificates
|
|
- source:
|
|
objref:
|
|
name: dex-catalogue
|
|
fieldref: dex.tls.crt
|
|
target:
|
|
objref:
|
|
kind: Secret
|
|
name: target-cluster-control-plane-dex-crt
|
|
fieldrefs: ["data.dex-cert"]
|