-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add e2e test to reproduce SSA apiVersion issue
Signed-off-by: Stefan Büringer buringerst@vmware.com
- Loading branch information
1 parent
6249008
commit 2ce619a
Showing
13 changed files
with
756 additions
and
210 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
87 changes: 87 additions & 0 deletions
87
test/e2e/data/infrastructure-docker/v0.4/bases/cluster-with-kcp.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
--- | ||
# DockerCluster object referenced by the Cluster object | ||
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha4 | ||
kind: DockerCluster | ||
metadata: | ||
name: '${CLUSTER_NAME}' | ||
--- | ||
# Cluster object with | ||
# - Reference to the KubeadmControlPlane object | ||
# - the label cni=${CLUSTER_NAME}-crs-0, so the cluster can be selected by the ClusterResourceSet. | ||
apiVersion: cluster.x-k8s.io/v1alpha4 | ||
kind: Cluster | ||
metadata: | ||
name: '${CLUSTER_NAME}' | ||
labels: | ||
cni: "${CLUSTER_NAME}-crs-0" | ||
spec: | ||
clusterNetwork: | ||
services: | ||
cidrBlocks: ['${DOCKER_SERVICE_CIDRS}'] | ||
pods: | ||
cidrBlocks: ['${DOCKER_POD_CIDRS}'] | ||
serviceDomain: '${DOCKER_SERVICE_DOMAIN}' | ||
infrastructureRef: | ||
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha4 | ||
kind: DockerCluster | ||
name: '${CLUSTER_NAME}' | ||
controlPlaneRef: | ||
kind: KubeadmControlPlane | ||
apiVersion: controlplane.cluster.x-k8s.io/v1alpha4 | ||
name: "${CLUSTER_NAME}-control-plane" | ||
--- | ||
# DockerMachineTemplate object referenced by the KubeadmControlPlane object | ||
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha4 | ||
kind: DockerMachineTemplate | ||
metadata: | ||
name: "${CLUSTER_NAME}-control-plane" | ||
spec: | ||
template: | ||
spec: | ||
# NOTE: If the Kubernetes version is changed in `clusterctl_upgrade_test.go` the image and SHA must be updated here. | ||
customImage: "kindest/node:v1.23.17@sha256:f77f8cf0b30430ca4128cc7cfafece0c274a118cd0cdb251049664ace0dee4ff" | ||
extraMounts: | ||
- containerPath: "/var/run/docker.sock" | ||
hostPath: "/var/run/docker.sock" | ||
--- | ||
# KubeadmControlPlane referenced by the Cluster object with | ||
# - the label kcp-adoption.step2, because it should be created in the second step of the kcp-adoption test. | ||
kind: KubeadmControlPlane | ||
apiVersion: controlplane.cluster.x-k8s.io/v1alpha4 | ||
metadata: | ||
name: "${CLUSTER_NAME}-control-plane" | ||
labels: | ||
kcp-adoption.step2: "" | ||
spec: | ||
replicas: ${CONTROL_PLANE_MACHINE_COUNT} | ||
machineTemplate: | ||
infrastructureRef: | ||
kind: DockerMachineTemplate | ||
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha4 | ||
name: "${CLUSTER_NAME}-control-plane" | ||
kubeadmConfigSpec: | ||
clusterConfiguration: | ||
controllerManager: | ||
extraArgs: {enable-hostpath-provisioner: 'true'} | ||
apiServer: | ||
# host.docker.internal is required by kubetest when running on MacOS because of the way ports are proxied. | ||
certSANs: [localhost, 127.0.0.1, 0.0.0.0, host.docker.internal] | ||
initConfiguration: | ||
nodeRegistration: | ||
criSocket: unix:///var/run/containerd/containerd.sock | ||
kubeletExtraArgs: | ||
# We have to pin the cgroupDriver to cgroupfs for Kubernetes < v1.24 because kind does not support systemd for those versions, but kubeadm >= 1.21 defaults to systemd. | ||
# This cluster is used in tests where the Kubernetes version is < 1.24 | ||
cgroup-driver: cgroupfs | ||
eviction-hard: 'nodefs.available<0%,nodefs.inodesFree<0%,imagefs.available<0%' | ||
fail-swap-on: "false" | ||
joinConfiguration: | ||
nodeRegistration: | ||
criSocket: unix:///var/run/containerd/containerd.sock | ||
kubeletExtraArgs: | ||
# We have to pin the cgroupDriver to cgroupfs for Kubernetes < v1.24 because kind does not support systemd for those versions, but kubeadm >= 1.21 defaults to systemd. | ||
# This cluster is used in tests where the Kubernetes version is < 1.24 | ||
cgroup-driver: cgroupfs | ||
eviction-hard: 'nodefs.available<0%,nodefs.inodesFree<0%,imagefs.available<0%' | ||
fail-swap-on: "false" | ||
version: "${KUBERNETES_VERSION}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
--- | ||
# ConfigMap object referenced by the ClusterResourceSet object and with | ||
# the CNI resource defined in the test config file | ||
apiVersion: v1 | ||
kind: ConfigMap | ||
metadata: | ||
name: "cni-${CLUSTER_NAME}-crs-0" | ||
data: ${CNI_RESOURCES} | ||
binaryData: | ||
--- | ||
# ClusterResourceSet object with | ||
# a selector that targets all the Cluster with label cni=${CLUSTER_NAME}-crs-0 | ||
apiVersion: addons.cluster.x-k8s.io/v1alpha4 | ||
kind: ClusterResourceSet | ||
metadata: | ||
name: "${CLUSTER_NAME}-crs-0" | ||
spec: | ||
strategy: ApplyOnce | ||
clusterSelector: | ||
matchLabels: | ||
cni: "${CLUSTER_NAME}-crs-0" | ||
resources: | ||
- name: "cni-${CLUSTER_NAME}-crs-0" | ||
kind: ConfigMap |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
--- | ||
# DockerMachineTemplate referenced by the MachineDeployment and with | ||
# - extraMounts for the docker sock, thus allowing self-hosting test | ||
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha4 | ||
kind: DockerMachineTemplate | ||
metadata: | ||
name: "${CLUSTER_NAME}-md-0" | ||
spec: | ||
template: | ||
spec: | ||
# NOTE: If the Kubernetes version is changed in `clusterctl_upgrade_test.go` the image and SHA must be updated here. | ||
customImage: "kindest/node:v1.23.17@sha256:f77f8cf0b30430ca4128cc7cfafece0c274a118cd0cdb251049664ace0dee4ff" | ||
extraMounts: | ||
- containerPath: "/var/run/docker.sock" | ||
hostPath: "/var/run/docker.sock" | ||
--- | ||
# KubeadmConfigTemplate referenced by the MachineDeployment | ||
apiVersion: bootstrap.cluster.x-k8s.io/v1alpha4 | ||
kind: KubeadmConfigTemplate | ||
metadata: | ||
name: "${CLUSTER_NAME}-md-0" | ||
spec: | ||
template: | ||
spec: | ||
joinConfiguration: | ||
nodeRegistration: | ||
criSocket: unix:///var/run/containerd/containerd.sock | ||
kubeletExtraArgs: | ||
# We have to pin the cgroupDriver to cgroupfs for Kubernetes < v1.24 because kind does not support systemd for those versions, but kubeadm >= 1.21 defaults to systemd. | ||
# This cluster is used in tests where the Kubernetes version is < 1.24 | ||
cgroup-driver: cgroupfs | ||
eviction-hard: 'nodefs.available<0%,nodefs.inodesFree<0%,imagefs.available<0%' | ||
fail-swap-on: "false" | ||
--- | ||
# MachineDeployment object | ||
apiVersion: cluster.x-k8s.io/v1alpha4 | ||
kind: MachineDeployment | ||
metadata: | ||
name: "${CLUSTER_NAME}-md-0" | ||
spec: | ||
clusterName: "${CLUSTER_NAME}" | ||
replicas: ${WORKER_MACHINE_COUNT} | ||
selector: | ||
matchLabels: | ||
template: | ||
spec: | ||
clusterName: "${CLUSTER_NAME}" | ||
version: "${KUBERNETES_VERSION}" | ||
bootstrap: | ||
configRef: | ||
name: "${CLUSTER_NAME}-md-0" | ||
apiVersion: bootstrap.cluster.x-k8s.io/v1alpha4 | ||
kind: KubeadmConfigTemplate | ||
infrastructureRef: | ||
name: "${CLUSTER_NAME}-md-0" | ||
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha4 | ||
kind: DockerMachineTemplate |
4 changes: 4 additions & 0 deletions
4
test/e2e/data/infrastructure-docker/v0.4/cluster-template/kustomization.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
bases: | ||
- ../bases/cluster-with-kcp.yaml | ||
- ../bases/md.yaml | ||
- ../bases/crs.yaml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
apiVersion: clusterctl.cluster.x-k8s.io/v1alpha3 | ||
kind: Metadata | ||
releaseSeries: | ||
- major: 0 | ||
minor: 4 | ||
contract: v1alpha4 | ||
- major: 0 | ||
minor: 3 | ||
contract: v1alpha3 | ||
- major: 0 | ||
minor: 2 | ||
contract: v1alpha2 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.