Skip to content

Commit 0ea69f4

Browse files
committed
bump CAPD to v1beta2
1 parent 3dc581b commit 0ea69f4

File tree

112 files changed

+5682
-825
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

112 files changed

+5682
-825
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ hack/tools/bin
1414
test/e2e/data/infrastructure-docker/v1alpha3/cluster-template*.yaml
1515
test/e2e/data/infrastructure-docker/v1alpha4/cluster-template*.yaml
1616
test/e2e/data/infrastructure-docker/v1beta1/cluster-template*.yaml
17+
test/e2e/data/infrastructure-docker/v1beta2/cluster-template*.yaml
1718

1819
# E2e test extension deployment
1920
test/e2e/data/test-extension/deployment.yaml

.golangci.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,13 +128,17 @@ linters-settings:
128128
- pkg: sigs.k8s.io/cluster-api/test/infrastructure/docker/api/v1alpha4
129129
alias: infrav1alpha4
130130
- pkg: sigs.k8s.io/cluster-api/test/infrastructure/docker/api/v1beta1
131+
alias: infrav1beta1
132+
- pkg: sigs.k8s.io/cluster-api/test/infrastructure/docker/api/v1beta2
131133
alias: infrav1
132134
# CAPD exp
133135
- pkg: sigs.k8s.io/cluster-api/test/infrastructure/docker/exp/api/v1alpha3
134136
alias: infraexpv1alpha3
135137
- pkg: sigs.k8s.io/cluster-api/test/infrastructure/docker/exp/api/v1alpha4
136138
alias: infraexpv1alpha4
137139
- pkg: sigs.k8s.io/cluster-api/test/infrastructure/docker/exp/api/v1beta1
140+
alias: infraexpv1beta1
141+
- pkg: sigs.k8s.io/cluster-api/test/infrastructure/docker/exp/api/v1beta2
138142
alias: infraexpv1
139143
nolintlint:
140144
allow-unused: false

Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -410,11 +410,14 @@ generate-go-conversions-capd: $(CONVERSION_GEN) ## Generate conversions go code
410410
cd $(CAPD_DIR); $(CONVERSION_GEN) \
411411
--input-dirs=./api/v1alpha3 \
412412
--input-dirs=./api/v1alpha4 \
413+
--input-dirs=./api/v1beta1 \
413414
--input-dirs=./$(EXP_DIR)/api/v1alpha3 \
414415
--input-dirs=./$(EXP_DIR)/api/v1alpha4 \
416+
--input-dirs=./$(EXP_DIR)/api/v1beta1 \
415417
--build-tag=ignore_autogenerated_capd \
416418
--extra-peer-dirs=sigs.k8s.io/cluster-api/api/v1alpha3 \
417419
--extra-peer-dirs=sigs.k8s.io/cluster-api/api/v1alpha4 \
420+
--extra-peer-dirs=sigs.k8s.io/cluster-api/api/v1beta1 \
418421
--output-file-base=zz_generated.conversion $(CONVERSION_GEN_OUTPUT_BASE_CAPD) \
419422
--go-header-file=../../../hack/boilerplate/boilerplate.generatego.txt
420423

test/e2e/Makefile

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ $(KUSTOMIZE_BIN): $(KUSTOMIZE) ## Build a local copy of kustomize
6666
DOCKER_TEMPLATES := $(REPO_ROOT)/test/e2e/data/infrastructure-docker
6767

6868
.PHONY: cluster-templates
69-
cluster-templates: $(KUSTOMIZE) cluster-templates-v1alpha3 cluster-templates-v1alpha4 cluster-templates-v1beta1 ## Generate cluster templates for all versions
69+
cluster-templates: $(KUSTOMIZE) cluster-templates-v1alpha3 cluster-templates-v1alpha4 cluster-templates-v1beta1 cluster-templates-v1beta2 ## Generate cluster templates for all versions
7070

7171
cluster-templates-v1alpha3: $(KUSTOMIZE) ## Generate cluster templates for v1alpha3
7272
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1alpha3/cluster-template --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1alpha3/cluster-template.yaml
@@ -101,6 +101,24 @@ cluster-templates-v1beta1: $(KUSTOMIZE) ## Generate cluster templates for v1beta
101101
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta1/cluster-template-topology --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta1/cluster-template-topology.yaml
102102
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta1/cluster-template-ignition --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta1/cluster-template-ignition.yaml
103103

104+
cluster-templates-v1beta2: $(KUSTOMIZE) ## Generate cluster templates for v1beta2
105+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template.yaml
106+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-md-remediation --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-md-remediation.yaml
107+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-remediation --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-remediation.yaml
108+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-adoption/step1 --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-adoption.yaml
109+
echo "---" >> $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-adoption.yaml
110+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-adoption/step2 --load-restrictor LoadRestrictionsNone >> $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-adoption.yaml
111+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-machine-pool --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-machine-pool.yaml
112+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-node-drain --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-node-drain.yaml
113+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-upgrades --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-upgrades.yaml
114+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-upgrades-cgroupfs --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-upgrades-cgroupfs.yaml
115+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-upgrades-runtimesdk --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-upgrades-runtimesdk.yaml
116+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-upgrades-runtimesdk-cgroupfs --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-upgrades-runtimesdk-cgroupfs.yaml
117+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-scale-in --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-kcp-scale-in.yaml
118+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-ipv6 --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-ipv6.yaml
119+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-topology --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-topology.yaml
120+
$(KUSTOMIZE) build $(DOCKER_TEMPLATES)/v1beta2/cluster-template-ignition --load-restrictor LoadRestrictionsNone > $(DOCKER_TEMPLATES)/v1beta2/cluster-template-ignition.yaml
121+
104122
test-extension-deployment: $(KUSTOMIZE) ## Generate deployment for test extension
105123
mkdir -p $(REPO_ROOT)/test/e2e/data/test-extension
106124
$(KUSTOMIZE) build $(REPO_ROOT)/test/extension/config/default > $(REPO_ROOT)/test/e2e/data/test-extension/deployment.yaml

test/e2e/config/docker.yaml

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -182,22 +182,22 @@ providers:
182182
new: "--metrics-bind-addr=:8080\n - --logging-format=json"
183183
files:
184184
# Add cluster templates
185-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template.yaml"
186-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-md-remediation.yaml"
187-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-kcp-remediation.yaml"
188-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-kcp-adoption.yaml"
189-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-machine-pool.yaml"
190-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-node-drain.yaml"
191-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-upgrades.yaml"
192-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-upgrades-cgroupfs.yaml"
193-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-upgrades-runtimesdk.yaml"
194-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-kcp-scale-in.yaml"
195-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-ipv6.yaml"
196-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-topology.yaml"
197-
- sourcePath: "../data/infrastructure-docker/v1beta1/cluster-template-ignition.yaml"
198-
- sourcePath: "../data/infrastructure-docker/v1beta1/clusterclass-quick-start.yaml"
199-
- sourcePath: "../data/infrastructure-docker/v1beta1/clusterclass-quick-start-runtimesdk.yaml"
200-
- sourcePath: "../data/shared/v1beta1/metadata.yaml"
185+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template.yaml"
186+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-md-remediation.yaml"
187+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-kcp-remediation.yaml"
188+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-kcp-adoption.yaml"
189+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-machine-pool.yaml"
190+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-node-drain.yaml"
191+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-upgrades.yaml"
192+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-upgrades-cgroupfs.yaml"
193+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-upgrades-runtimesdk.yaml"
194+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-kcp-scale-in.yaml"
195+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-ipv6.yaml"
196+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-topology.yaml"
197+
- sourcePath: "../data/infrastructure-docker/v1beta2/cluster-template-ignition.yaml"
198+
- sourcePath: "../data/infrastructure-docker/v1beta2/clusterclass-quick-start.yaml"
199+
- sourcePath: "../data/infrastructure-docker/v1beta2/clusterclass-quick-start-runtimesdk.yaml"
200+
- sourcePath: "../data/shared/v1beta2/metadata.yaml"
201201

202202
variables:
203203
# Default variables for the e2e test; those values could be overridden via env variables, thus
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
---
2+
# DockerCluster object referenced by the Cluster object
3+
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
4+
kind: DockerCluster
5+
metadata:
6+
name: '${CLUSTER_NAME}'
7+
spec:
8+
failureDomains:
9+
fd1:
10+
controlPlane: true
11+
fd2:
12+
controlPlane: true
13+
fd3:
14+
controlPlane: true
15+
fd4:
16+
controlPlane: false
17+
fd5:
18+
controlPlane: false
19+
fd6:
20+
controlPlane: false
21+
fd7:
22+
controlPlane: false
23+
fd8:
24+
controlPlane: false
25+
---
26+
# Cluster object with
27+
# - Reference to the KubeadmControlPlane object
28+
# - the label cni=${CLUSTER_NAME}-crs-0, so the cluster can be selected by the ClusterResourceSet.
29+
apiVersion: cluster.x-k8s.io/v1beta1
30+
kind: Cluster
31+
metadata:
32+
name: '${CLUSTER_NAME}'
33+
labels:
34+
cni: "${CLUSTER_NAME}-crs-0"
35+
spec:
36+
clusterNetwork:
37+
services:
38+
cidrBlocks: ['${DOCKER_SERVICE_CIDRS}']
39+
pods:
40+
cidrBlocks: ['${DOCKER_POD_CIDRS}']
41+
serviceDomain: '${DOCKER_SERVICE_DOMAIN}'
42+
infrastructureRef:
43+
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
44+
kind: DockerCluster
45+
name: '${CLUSTER_NAME}'
46+
controlPlaneRef:
47+
kind: KubeadmControlPlane
48+
apiVersion: controlplane.cluster.x-k8s.io/v1beta1
49+
name: "${CLUSTER_NAME}-control-plane"
50+
---
51+
# DockerMachineTemplate object referenced by the KubeadmControlPlane object
52+
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
53+
kind: DockerMachineTemplate
54+
metadata:
55+
name: "${CLUSTER_NAME}-control-plane"
56+
spec:
57+
template:
58+
spec:
59+
extraMounts:
60+
- containerPath: "/var/run/docker.sock"
61+
hostPath: "/var/run/docker.sock"
62+
---
63+
# KubeadmControlPlane referenced by the Cluster object with
64+
# - the label kcp-adoption.step2, because it should be created in the second step of the kcp-adoption test.
65+
kind: KubeadmControlPlane
66+
apiVersion: controlplane.cluster.x-k8s.io/v1beta1
67+
metadata:
68+
name: "${CLUSTER_NAME}-control-plane"
69+
labels:
70+
kcp-adoption.step2: ""
71+
spec:
72+
replicas: ${CONTROL_PLANE_MACHINE_COUNT}
73+
machineTemplate:
74+
infrastructureRef:
75+
kind: DockerMachineTemplate
76+
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
77+
name: "${CLUSTER_NAME}-control-plane"
78+
kubeadmConfigSpec:
79+
clusterConfiguration:
80+
controllerManager:
81+
extraArgs: {enable-hostpath-provisioner: 'true'}
82+
apiServer:
83+
# host.docker.internal is required by kubetest when running on MacOS because of the way ports are proxied.
84+
certSANs: [localhost, 127.0.0.1, 0.0.0.0, host.docker.internal]
85+
initConfiguration:
86+
nodeRegistration:
87+
criSocket: unix:///var/run/containerd/containerd.sock
88+
kubeletExtraArgs:
89+
eviction-hard: 'nodefs.available<0%,nodefs.inodesFree<0%,imagefs.available<0%'
90+
joinConfiguration:
91+
nodeRegistration:
92+
criSocket: unix:///var/run/containerd/containerd.sock
93+
kubeletExtraArgs:
94+
eviction-hard: 'nodefs.available<0%,nodefs.inodesFree<0%,imagefs.available<0%'
95+
version: "${KUBERNETES_VERSION}"
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
apiVersion: cluster.x-k8s.io/v1beta1
2+
kind: Cluster
3+
metadata:
4+
name: '${CLUSTER_NAME}'
5+
namespace: default
6+
labels:
7+
cni: "${CLUSTER_NAME}-crs-0"
8+
spec:
9+
clusterNetwork:
10+
services:
11+
cidrBlocks: ['${DOCKER_SERVICE_CIDRS}']
12+
pods:
13+
cidrBlocks: ['${DOCKER_POD_CIDRS}']
14+
serviceDomain: '${DOCKER_SERVICE_DOMAIN}'
15+
topology:
16+
class: "quick-start"
17+
version: "${KUBERNETES_VERSION}"
18+
controlPlane:
19+
metadata: {}
20+
replicas: ${CONTROL_PLANE_MACHINE_COUNT}
21+
workers:
22+
machineDeployments:
23+
- class: "default-worker"
24+
name: "md-0"
25+
replicas: ${WORKER_MACHINE_COUNT}
26+
failureDomain: fd4
27+
variables:
28+
# The imageRepository variable is defaulted by the Cluster webhook.
29+
#- name: imageRepository
30+
# value: k8s.gcr.io
31+
- name: etcdImageTag
32+
# We set an empty value to use the default tag kubeadm init is using.
33+
value: ""
34+
- name: coreDNSImageTag
35+
# We set an empty value to use the default tag kubeadm init is using.
36+
value: ""
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
# ConfigMap object referenced by the ClusterResourceSet object and with
3+
# the CNI resource defined in the test config file
4+
apiVersion: v1
5+
kind: ConfigMap
6+
metadata:
7+
name: "cni-${CLUSTER_NAME}-crs-0"
8+
data: ${CNI_RESOURCES}
9+
binaryData:
10+
---
11+
# ClusterResourceSet object with
12+
# a selector that targets all the Cluster with label cni=${CLUSTER_NAME}-crs-0
13+
apiVersion: addons.cluster.x-k8s.io/v1beta1
14+
kind: ClusterResourceSet
15+
metadata:
16+
name: "${CLUSTER_NAME}-crs-0"
17+
spec:
18+
strategy: ApplyOnce
19+
clusterSelector:
20+
matchLabels:
21+
cni: "${CLUSTER_NAME}-crs-0"
22+
resources:
23+
- name: "cni-${CLUSTER_NAME}-crs-0"
24+
kind: ConfigMap
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
---
2+
# DockerMachineTemplate referenced by the MachineDeployment and with
3+
# - extraMounts for the docker sock, thus allowing self-hosting test
4+
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
5+
kind: DockerMachineTemplate
6+
metadata:
7+
name: "${CLUSTER_NAME}-md-0"
8+
spec:
9+
template:
10+
spec:
11+
extraMounts:
12+
- containerPath: "/var/run/docker.sock"
13+
hostPath: "/var/run/docker.sock"
14+
---
15+
# KubeadmConfigTemplate referenced by the MachineDeployment
16+
apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
17+
kind: KubeadmConfigTemplate
18+
metadata:
19+
name: "${CLUSTER_NAME}-md-0"
20+
spec:
21+
template:
22+
spec:
23+
joinConfiguration:
24+
nodeRegistration:
25+
criSocket: unix:///var/run/containerd/containerd.sock
26+
kubeletExtraArgs:
27+
eviction-hard: 'nodefs.available<0%,nodefs.inodesFree<0%,imagefs.available<0%'
28+
---
29+
# MachineDeployment object
30+
apiVersion: cluster.x-k8s.io/v1beta1
31+
kind: MachineDeployment
32+
metadata:
33+
name: "${CLUSTER_NAME}-md-0"
34+
spec:
35+
clusterName: "${CLUSTER_NAME}"
36+
replicas: ${WORKER_MACHINE_COUNT}
37+
selector:
38+
matchLabels:
39+
template:
40+
spec:
41+
clusterName: "${CLUSTER_NAME}"
42+
version: "${KUBERNETES_VERSION}"
43+
bootstrap:
44+
configRef:
45+
name: "${CLUSTER_NAME}-md-0"
46+
apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
47+
kind: KubeadmConfigTemplate
48+
infrastructureRef:
49+
name: "${CLUSTER_NAME}-md-0"
50+
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
51+
kind: DockerMachineTemplate
52+
failureDomain: fd4
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
# MachinePool which references the DockerMachinePool and KubeadmConfigTemplate below
3+
apiVersion: cluster.x-k8s.io/v1beta1
4+
kind: MachinePool
5+
metadata:
6+
name: "${CLUSTER_NAME}-mp-0"
7+
spec:
8+
clusterName: '${CLUSTER_NAME}'
9+
replicas: ${WORKER_MACHINE_COUNT}
10+
template:
11+
spec:
12+
bootstrap:
13+
configRef:
14+
apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
15+
kind: KubeadmConfig
16+
name: "${CLUSTER_NAME}-mp-0-config"
17+
clusterName: '${CLUSTER_NAME}'
18+
infrastructureRef:
19+
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
20+
kind: DockerMachinePool
21+
name: "${CLUSTER_NAME}-dmp-0"
22+
version: "${KUBERNETES_VERSION}"
23+
failureDomains:
24+
- fd4
25+
- fd5
26+
- fd6
27+
- fd7
28+
- fd8
29+
---
30+
# DockerMachinePool using default values referenced by the MachinePool
31+
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
32+
kind: DockerMachinePool
33+
metadata:
34+
name: "${CLUSTER_NAME}-dmp-0"
35+
---
36+
# KubeadmConfigTemplate referenced by the MachinePool
37+
apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
38+
kind: KubeadmConfig
39+
metadata:
40+
name: "${CLUSTER_NAME}-mp-0-config"
41+
spec:
42+
joinConfiguration:
43+
nodeRegistration:
44+
kubeletExtraArgs:
45+
eviction-hard: nodefs.available<0%,nodefs.inodesFree<0%,imagefs.available<0%
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
kind: KubeadmControlPlane
2+
apiVersion: controlplane.cluster.x-k8s.io/v1beta1
3+
metadata:
4+
name: "${CLUSTER_NAME}-control-plane"
5+
spec:
6+
kubeadmConfigSpec:
7+
format: ignition
8+
---
9+
apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
10+
kind: KubeadmConfigTemplate
11+
metadata:
12+
name: "${CLUSTER_NAME}-md-0"
13+
spec:
14+
template:
15+
spec:
16+
format: ignition
17+
ignition:
18+
containerLinuxConfig:
19+
additionalConfig: |
20+
storage:
21+
files:
22+
- path: /opt/foo
23+
filesystem: root
24+
contents:
25+
inline: Howdy!
26+
mode: 0644

0 commit comments

Comments
 (0)