diff --git a/.gitignore b/.gitignore index 2f22dc158d..1e0ca8c622 100644 --- a/.gitignore +++ b/.gitignore @@ -15,11 +15,16 @@ _artifacts/ # E2E test templates -#!test/e2e/data/infrastructure-vsphere/v*/base/cluster-template.yaml -test/e2e/data/infrastructure-vsphere/main/**/clusterclass-quick-start.yaml -test/e2e/data/infrastructure-vsphere/main/**/cluster-template*.yaml -test/e2e/data/infrastructure-vsphere/*/cluster-template*.yaml -test/e2e/data/infrastructure-vsphere/*/clusterclass-quick-start.yaml +#!test/e2e/data/infrastructure-vsphere-govmomi/v*/base/cluster-template.yaml +test/e2e/data/infrastructure-vsphere-govmomi/main/**/clusterclass-quick-start.yaml +test/e2e/data/infrastructure-vsphere-govmomi/main/**/cluster-template*.yaml +test/e2e/data/infrastructure-vsphere-govmomi/*/cluster-template*.yaml +test/e2e/data/infrastructure-vsphere-govmomi/*/clusterclass-quick-start.yaml + +test/e2e/data/infrastructure-vsphere-supervisor/main/**/clusterclass-quick-start-supervisor.yaml +test/e2e/data/infrastructure-vsphere-supervisor/main/**/cluster-template*.yaml +test/e2e/data/infrastructure-vsphere-supervisor/*/cluster-template*.yaml +test/e2e/data/infrastructure-vsphere-supervisor/*/clusterclass-quick-start-supervisor.yaml # env vars file used in getting-started.md and manifests generation envvars.txt diff --git a/Makefile b/Makefile index ac371d9843..fdfce2b6b8 100644 --- a/Makefile +++ b/Makefile @@ -86,7 +86,9 @@ E2E_CAPV_MODE ?= govmomi E2E_TARGET_TYPE ?= vcenter E2E_IPAM_KUBECONFIG ?= INTEGRATION_CONF_FILE ?= $(abspath test/integration/integration-dev.yaml) -E2E_TEMPLATE_DIR := $(abspath test/e2e/data/infrastructure-vsphere/) +E2E_TEMPLATE_DIR := $(abspath test/e2e/data/) +E2E_GOVMOMI_TEMPLATE_DIR := $(E2E_TEMPLATE_DIR)/infrastructure-vsphere-govmomi +E2E_SUPERVISOR_TEMPLATE_DIR := $(E2E_TEMPLATE_DIR)/infrastructure-vsphere-supervisor SKIP_RESOURCE_CLEANUP ?= false USE_EXISTING_CLUSTER ?= false GINKGO_NOCOLOR ?= false @@ -336,41 +338,48 @@ generate-e2e-templates: $(KUSTOMIZE) $(addprefix generate-e2e-templates-, v1.8 v .PHONY: generate-e2e-templates-main generate-e2e-templates-main: $(KUSTOMIZE) ## Generate test templates for the main branch $(MAKE) e2e-flavors-main - cp "$(RELEASE_DIR)/main/cluster-template.yaml" "$(E2E_TEMPLATE_DIR)/main/base/cluster-template.yaml" - cp "$(RELEASE_DIR)/main/cluster-template-ignition.yaml" "$(E2E_TEMPLATE_DIR)/main/base/cluster-template-ignition.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/base" > "$(E2E_TEMPLATE_DIR)/main/cluster-template.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/hw-upgrade" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-hw-upgrade.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/storage-policy" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-storage-policy.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/conformance" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-conformance.yaml" + cp "$(RELEASE_DIR)/main/cluster-template.yaml" "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/base/cluster-template.yaml" + cp "$(RELEASE_DIR)/main/cluster-template-ignition.yaml" "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/base/cluster-template-ignition.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/base" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/hw-upgrade" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-hw-upgrade.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/storage-policy" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-storage-policy.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/conformance" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-conformance.yaml" # Since CAPI uses different flavor names for KCP and MD remediation using MHC - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/mhc-remediation/kcp" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-kcp-remediation.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/mhc-remediation/md" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-md-remediation.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/node-drain" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-node-drain.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/ignition" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-ignition.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/mhc-remediation/kcp" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-kcp-remediation.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/mhc-remediation/md" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-md-remediation.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/node-drain" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-node-drain.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/ignition" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-ignition.yaml" # generate clusterclass and cluster topology - cp "$(RELEASE_DIR)/main/clusterclass-template.yaml" "$(E2E_TEMPLATE_DIR)/main/clusterclass/clusterclass-quick-start.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/clusterclass" > "$(E2E_TEMPLATE_DIR)/main/clusterclass-quick-start.yaml" - cp "$(RELEASE_DIR)/main/cluster-template-topology.yaml" "$(E2E_TEMPLATE_DIR)/main/topology/cluster-template-topology.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/topology" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-topology.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/remote-management" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-remote-management.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/install-on-bootstrap" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-install-on-bootstrap.yaml" + cp "$(RELEASE_DIR)/main/clusterclass-template.yaml" "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/clusterclass/clusterclass-quick-start.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/clusterclass" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/clusterclass-quick-start.yaml" + cp "$(RELEASE_DIR)/main/cluster-template-topology.yaml" "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/topology/cluster-template-topology.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/topology" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-topology.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/remote-management" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-remote-management.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/install-on-bootstrap" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-install-on-bootstrap.yaml" # for PCI passthrough template - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/pci" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-pci.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/pci" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-pci.yaml" # for DHCP overrides - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/dhcp-overrides" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-dhcp-overrides.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/ownerrefs-finalizers" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-ownerrefs-finalizers.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/dhcp-overrides" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-dhcp-overrides.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/ownerrefs-finalizers" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-ownerrefs-finalizers.yaml" # for IPAM tests - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/main/ipam" > "$(E2E_TEMPLATE_DIR)/main/cluster-template-ipam.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/ipam" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-ipam.yaml" + # generate supervisor templates + cp "$(RELEASE_DIR)/main/cluster-template-supervisor.yaml" "$(E2E_SUPERVISOR_TEMPLATE_DIR)/main/base/cluster-template-supervisor.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/base" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/main/cluster-template-supervisor.yaml" + cp "$(RELEASE_DIR)/main/clusterclass-template-supervisor.yaml" "$(E2E_SUPERVISOR_TEMPLATE_DIR)/main/clusterclass/clusterclass-quick-start-supervisor.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_SUPERVISOR_TEMPLATE_DIR)/main/clusterclass" > "$(E2E_SUPERVISOR_TEMPLATE_DIR)/main/clusterclass-quick-start-supervisor.yaml" + cp "$(RELEASE_DIR)/main/cluster-template-topology-supervisor.yaml" "$(E2E_SUPERVISOR_TEMPLATE_DIR)/main/topology/cluster-template-topology-supervisor.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_SUPERVISOR_TEMPLATE_DIR)/main/topology" > "$(E2E_SUPERVISOR_TEMPLATE_DIR)/main/cluster-template-topology-supervisor.yaml" .PHONY: generate-e2e-templates-v1.9 generate-e2e-templates-v1.9: $(KUSTOMIZE) - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/v1.9/clusterclass" > "$(E2E_TEMPLATE_DIR)/v1.9/clusterclass-quick-start.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/v1.9/workload" > "$(E2E_TEMPLATE_DIR)/v1.9/cluster-template-workload.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/v1.9/clusterclass" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/v1.9/clusterclass-quick-start.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/v1.9/workload" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/v1.9/cluster-template-workload.yaml" .PHONY: generate-e2e-templates-v1.8 generate-e2e-templates-v1.8: $(KUSTOMIZE) - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/v1.8/clusterclass" > "$(E2E_TEMPLATE_DIR)/v1.8/clusterclass-quick-start.yaml" - "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_TEMPLATE_DIR)/v1.8/workload" > "$(E2E_TEMPLATE_DIR)/v1.8/cluster-template-workload.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/v1.8/clusterclass" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/v1.8/clusterclass-quick-start.yaml" + "$(KUSTOMIZE)" --load-restrictor LoadRestrictionsNone build "$(E2E_GOVMOMI_TEMPLATE_DIR)/v1.8/workload" > "$(E2E_GOVMOMI_TEMPLATE_DIR)/v1.8/cluster-template-workload.yaml" .PHONY: generate-test-infra-prowjobs generate-test-infra-prowjobs: $(PROWJOB_GEN) ## Generates the prowjob configurations in test-infra diff --git a/test/e2e/config/vsphere.yaml b/test/e2e/config/vsphere.yaml index 6eb994d42b..0133a40db0 100644 --- a/test/e2e/config/vsphere.yaml +++ b/test/e2e/config/vsphere.yaml @@ -122,22 +122,25 @@ providers: contract: v1beta1 files: # Add a cluster template - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-conformance.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-dhcp-overrides.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-hw-upgrade.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-ignition.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-install-on-bootstrap.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-ipam.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-kcp-remediation.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-md-remediation.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-node-drain.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-ownerrefs-finalizers.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-pci.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-remote-management.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-storage-policy.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template-topology.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/cluster-template.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/main/clusterclass-quick-start.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-conformance.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-dhcp-overrides.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-hw-upgrade.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-ignition.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-install-on-bootstrap.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-ipam.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-kcp-remediation.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-md-remediation.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-node-drain.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-ownerrefs-finalizers.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-pci.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-remote-management.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-storage-policy.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template-topology.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/cluster-template.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass-quick-start.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-supervisor/main/cluster-template-topology-supervisor.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-supervisor/main/cluster-template-supervisor.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass-quick-start-supervisor.yaml" - sourcePath: "../data/shared/main/v1beta1_provider/metadata.yaml" - name: v1.9.0 # Use manifest from source files @@ -146,8 +149,8 @@ providers: contract: v1beta1 files: # Add a cluster template - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/v1.9/cluster-template-workload.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/v1.9/clusterclass-quick-start.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/v1.9/cluster-template-workload.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass-quick-start.yaml" - sourcePath: "../data/shared/v1.9/v1beta1_provider/metadata.yaml" - name: v1.8.4 # Use manifest from source files @@ -156,8 +159,8 @@ providers: contract: v1beta1 files: # Add a cluster template - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/v1.8/cluster-template-workload.yaml" - - sourcePath: "../../../test/e2e/data/infrastructure-vsphere/v1.8/clusterclass-quick-start.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/v1.8/cluster-template-workload.yaml" + - sourcePath: "../../../test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass-quick-start.yaml" - sourcePath: "../data/shared/v1.8/v1beta1_provider/metadata.yaml" variables: diff --git a/test/e2e/data/infrastructure-vsphere/main/base/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/base/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/base/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/base/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/clusterclass/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/clusterclass/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/clusterclass/patch-namingstrategy.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass/patch-namingstrategy.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/clusterclass/patch-namingstrategy.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass/patch-namingstrategy.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/clusterclass/patch-prekubeadmscript.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass/patch-prekubeadmscript.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/clusterclass/patch-prekubeadmscript.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass/patch-prekubeadmscript.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/clusterclass/patch-vsphere-template.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass/patch-vsphere-template.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/clusterclass/patch-vsphere-template.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/clusterclass/patch-vsphere-template.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/commons/cluster-network-CIDR.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/commons/cluster-network-CIDR.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/commons/cluster-network-CIDR.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/commons/cluster-network-CIDR.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/commons/cluster-resource-set-csi-insecure.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/commons/cluster-resource-set-csi-insecure.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/commons/cluster-resource-set-csi-insecure.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/commons/cluster-resource-set-csi-insecure.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/commons/cluster-resource-set-label.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/commons/cluster-resource-set-label.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/commons/cluster-resource-set-label.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/commons/cluster-resource-set-label.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/commons/cluster-resource-set.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/commons/cluster-resource-set.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/commons/cluster-resource-set.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/commons/cluster-resource-set.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/commons/remove-storage-policy.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/commons/remove-storage-policy.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/commons/remove-storage-policy.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/commons/remove-storage-policy.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/commons/vcpu.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/commons/vcpu.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/commons/vcpu.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/commons/vcpu.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/conformance/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/conformance/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/conformance/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/conformance/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/conformance/worker-node-size.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/conformance/worker-node-size.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/conformance/worker-node-size.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/conformance/worker-node-size.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/dhcp-overrides/dhcp-overrides.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/dhcp-overrides/dhcp-overrides.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/dhcp-overrides/dhcp-overrides.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/dhcp-overrides/dhcp-overrides.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/dhcp-overrides/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/dhcp-overrides/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/dhcp-overrides/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/dhcp-overrides/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/hw-upgrade/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/hw-upgrade/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/hw-upgrade/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/hw-upgrade/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ignition/flatcar.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ignition/flatcar.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ignition/flatcar.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ignition/flatcar.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ignition/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ignition/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ignition/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ignition/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/install-on-bootstrap/inject-install-on-bootstrap.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/install-on-bootstrap/inject-install-on-bootstrap.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/install-on-bootstrap/inject-install-on-bootstrap.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/install-on-bootstrap/inject-install-on-bootstrap.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/install-on-bootstrap/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/install-on-bootstrap/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/install-on-bootstrap/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/install-on-bootstrap/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ipam/ipam-patch.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ipam/ipam-patch.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ipam/ipam-patch.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ipam/ipam-patch.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ipam/ippool.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ipam/ippool.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ipam/ippool.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ipam/ippool.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ipam/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ipam/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ipam/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ipam/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/mhc-remediation/kcp/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/kcp/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/mhc-remediation/kcp/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/kcp/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/mhc-remediation/kcp/mhc.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/kcp/mhc.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/mhc-remediation/kcp/mhc.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/kcp/mhc.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/mhc-remediation/md/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/md/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/mhc-remediation/md/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/md/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/mhc-remediation/md/mhc-label.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/md/mhc-label.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/mhc-remediation/md/mhc-label.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/md/mhc-label.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/mhc-remediation/md/mhc.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/md/mhc.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/mhc-remediation/md/mhc.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/mhc-remediation/md/mhc.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/node-drain/kcp-drain.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/node-drain/kcp-drain.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/node-drain/kcp-drain.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/node-drain/kcp-drain.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/node-drain/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/node-drain/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/node-drain/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/node-drain/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/node-drain/md-drain.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/node-drain/md-drain.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/node-drain/md-drain.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/node-drain/md-drain.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/cluster-identity.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/cluster-identity.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/cluster-identity.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/cluster-identity.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/drop-existing-identity-secret.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/drop-existing-identity-secret.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/drop-existing-identity-secret.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/drop-existing-identity-secret.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/failure-domains.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/failure-domains.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/failure-domains.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/failure-domains.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/vsphereclusteridentity.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/vsphereclusteridentity.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/ownerrefs-finalizers/vsphereclusteridentity.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/ownerrefs-finalizers/vsphereclusteridentity.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/pci/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/pci/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/pci/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/pci/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/pci/pci-device-template.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/pci/pci-device-template.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/pci/pci-device-template.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/pci/pci-device-template.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/remote-management/image-injection.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/remote-management/image-injection.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/remote-management/image-injection.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/remote-management/image-injection.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/remote-management/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/remote-management/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/remote-management/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/remote-management/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/storage-policy/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/storage-policy/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/storage-policy/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/storage-policy/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/main/topology/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/main/topology/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/main/topology/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/main/topology/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/base/cluster-template-topology.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/base/cluster-template-topology.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/base/cluster-template-topology.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/base/cluster-template-topology.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/clusterclass/clusterclass-quick-start.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass/clusterclass-quick-start.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/clusterclass/clusterclass-quick-start.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass/clusterclass-quick-start.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/clusterclass/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/clusterclass/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/clusterclass/patch-prekubeadmscript.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass/patch-prekubeadmscript.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/clusterclass/patch-prekubeadmscript.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass/patch-prekubeadmscript.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/clusterclass/patch-vsphere-template.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass/patch-vsphere-template.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/clusterclass/patch-vsphere-template.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/clusterclass/patch-vsphere-template.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/commons/cluster-network-CIDR.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/cluster-network-CIDR.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/commons/cluster-network-CIDR.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/cluster-network-CIDR.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/commons/cluster-resource-set-csi-insecure.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/cluster-resource-set-csi-insecure.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/commons/cluster-resource-set-csi-insecure.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/cluster-resource-set-csi-insecure.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/commons/cluster-resource-set-label.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/cluster-resource-set-label.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/commons/cluster-resource-set-label.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/cluster-resource-set-label.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/commons/cluster-resource-set.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/cluster-resource-set.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/commons/cluster-resource-set.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/cluster-resource-set.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/commons/remove-storage-policy.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/remove-storage-policy.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/commons/remove-storage-policy.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/commons/remove-storage-policy.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/topology/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/topology/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/topology/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/topology/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/workload/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/workload/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/workload/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/workload/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.8/workload/workload-control-plane-endpoint-ip.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.8/workload/workload-control-plane-endpoint-ip.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.8/workload/workload-control-plane-endpoint-ip.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.8/workload/workload-control-plane-endpoint-ip.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/base/cluster-template.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/base/cluster-template.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/base/cluster-template.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/base/cluster-template.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/base/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/base/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/base/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/base/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/clusterclass-quick-start.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/clusterclass-quick-start.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/clusterclass-quick-start.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/clusterclass-quick-start.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/patch-namingstrategy.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/patch-namingstrategy.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/patch-namingstrategy.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/patch-namingstrategy.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/patch-prekubeadmscript.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/patch-prekubeadmscript.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/patch-prekubeadmscript.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/patch-prekubeadmscript.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/patch-vsphere-template.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/patch-vsphere-template.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/clusterclass/patch-vsphere-template.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/clusterclass/patch-vsphere-template.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/commons/cluster-network-CIDR.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/cluster-network-CIDR.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/commons/cluster-network-CIDR.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/cluster-network-CIDR.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/commons/cluster-resource-set-csi-insecure.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/cluster-resource-set-csi-insecure.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/commons/cluster-resource-set-csi-insecure.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/cluster-resource-set-csi-insecure.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/commons/cluster-resource-set-label.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/cluster-resource-set-label.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/commons/cluster-resource-set-label.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/cluster-resource-set-label.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/commons/cluster-resource-set.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/cluster-resource-set.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/commons/cluster-resource-set.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/cluster-resource-set.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/commons/remove-storage-policy.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/remove-storage-policy.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/commons/remove-storage-policy.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/commons/remove-storage-policy.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/topology/cluster-template-topology.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/topology/cluster-template-topology.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/topology/cluster-template-topology.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/topology/cluster-template-topology.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/topology/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/topology/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/topology/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/topology/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/workload/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/workload/kustomization.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/workload/kustomization.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/workload/kustomization.yaml diff --git a/test/e2e/data/infrastructure-vsphere/v1.9/workload/workload-control-plane-endpoint-ip.yaml b/test/e2e/data/infrastructure-vsphere-govmomi/v1.9/workload/workload-control-plane-endpoint-ip.yaml similarity index 100% rename from test/e2e/data/infrastructure-vsphere/v1.9/workload/workload-control-plane-endpoint-ip.yaml rename to test/e2e/data/infrastructure-vsphere-govmomi/v1.9/workload/workload-control-plane-endpoint-ip.yaml diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/base/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/base/kustomization.yaml new file mode 100644 index 0000000000..a94fe51137 --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/base/kustomization.yaml @@ -0,0 +1,15 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - cluster-template-supervisor.yaml + - ../commons/cluster-resource-set.yaml +patchesStrategicMerge: + - ../commons/cluster-resource-set-label.yaml + - ../commons/cluster-network-CIDR.yaml + - ../commons/cluster-resource-set-csi-insecure.yaml +patches: + # We are dropping storage policy so we also have test coverage + # for normal provisioning via data stores. + - target: + kind: VSphereMachineTemplate + path: ../commons/remove-storage-policy.yaml diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/kustomization.yaml new file mode 100644 index 0000000000..bab4a05d78 --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/kustomization.yaml @@ -0,0 +1,14 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: +- ./clusterclass-quick-start-supervisor.yaml +patches: + - target: + kind: ClusterClass + path: ./patch-vsphere-template.yaml + - target: + kind: ClusterClass + path: ./patch-prekubeadmscript.yaml + - target: + kind: ClusterClass + path: ./patch-namingstrategy.yaml diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-namingstrategy.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-namingstrategy.yaml new file mode 100644 index 0000000000..1877801c3c --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-namingstrategy.yaml @@ -0,0 +1,8 @@ +- op: add + path: /spec/controlPlane/namingStrategy + value: + template: '{{ .cluster.name }}-cp-{{ .random }}' +- op: add + path: /spec/workers/machineDeployments/0/namingStrategy + value: + template: '{{ .cluster.name }}-md-{{ .machineDeployment.topologyName }}-{{ .random }}' diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-prekubeadmscript.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-prekubeadmscript.yaml new file mode 100644 index 0000000000..04771c3d48 --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-prekubeadmscript.yaml @@ -0,0 +1,51 @@ +- op: add + path: /spec/patches/- + value: + definitions: + - jsonPatches: + - op: add + path: /spec/template/spec/kubeadmConfigSpec/preKubeadmCommands/0 + value: "/opt/prekubeadmscript.sh" + - op: add + path: /spec/template/spec/kubeadmConfigSpec/files/- + valueFrom: + template: | + owner: root:root + path: "/opt/prekubeadmscript.sh" + permissions: "0755" + content: {{ printf "%q" (regexReplaceAll "(KUBERNETES_VERSION=.*)" .preKubeadmScript (printf "KUBERNETES_VERSION=%s" .builtin.controlPlane.version)) }} + selector: + apiVersion: controlplane.cluster.x-k8s.io/v1beta1 + kind: KubeadmControlPlaneTemplate + matchResources: + controlPlane: true + - jsonPatches: + - op: add + path: /spec/template/spec/preKubeadmCommands/0 + value: "/opt/prekubeadmscript.sh" + - op: add + path: /spec/template/spec/files/- + valueFrom: + template: | + owner: root:root + path: "/opt/prekubeadmscript.sh" + permissions: "0755" + content: {{ printf "%q" (regexReplaceAll "(KUBERNETES_VERSION=.*)" .preKubeadmScript (printf "KUBERNETES_VERSION=%s" .builtin.machineDeployment.version)) }} + selector: + apiVersion: bootstrap.cluster.x-k8s.io/v1beta1 + kind: KubeadmConfigTemplate + matchResources: + machineDeploymentClass: + names: + - ${CLUSTER_CLASS_NAME}-worker + enabledIf: '{{ if .preKubeadmScript }}true{{ end }}' + name: preKubeadmScript +- op: add + path: /spec/variables/- + value: + name: preKubeadmScript + required: false + schema: + openAPIV3Schema: + type: string + description: Script to run in preKubeadmCommands. diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-vsphere-template.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-vsphere-template.yaml new file mode 100644 index 0000000000..9bef1c7ff7 --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/clusterclass/patch-vsphere-template.yaml @@ -0,0 +1,45 @@ +- op: add + path: /spec/patches/- + value: + definitions: + - jsonPatches: + - op: replace + path: /spec/template/spec/template + valueFrom: + # We have to fall back to v1.29.0 for the conformance latest ci test which uses + # versions without corresponding templates like "v1.30.0-alpha.0.525+09a5049ca78502". + template: |- + {{- if eq .builtin.controlPlane.version "v1.28.0" -}} + ubuntu-2204-kube-v1.28.0 + {{- else -}}{{- if eq .builtin.controlPlane.version "v1.29.0" -}} + ubuntu-2204-kube-v1.29.0 + {{- else -}} + ubuntu-2204-kube-v1.29.0 + {{- end -}}{{- end -}} + selector: + apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 + kind: VSphereMachineTemplate + matchResources: + controlPlane: true + - jsonPatches: + - op: replace + path: /spec/template/spec/template + valueFrom: + # We have to fall back to v1.29.0 for the conformance latest ci test which uses + # versions without corresponding templates like "v1.30.0-alpha.0.525+09a5049ca78502". + template: |- + {{- if eq .builtin.machineDeployment.version "v1.28.0" -}} + ubuntu-2204-kube-v1.28.0 + {{- else -}}{{- if eq .builtin.machineDeployment.version "v1.29.0" -}} + ubuntu-2204-kube-v1.29.0 + {{- else -}} + ubuntu-2204-kube-v1.29.0 + {{- end -}}{{- end -}} + selector: + apiVersion: infrastructure.cluster.x-k8s.io/v1beta1 + kind: VSphereMachineTemplate + matchResources: + machineDeploymentClass: + names: + - ${CLUSTER_CLASS_NAME}-worker + name: vSphereTemplate diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-network-CIDR.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-network-CIDR.yaml new file mode 100644 index 0000000000..24d0253cef --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-network-CIDR.yaml @@ -0,0 +1,10 @@ +apiVersion: cluster.x-k8s.io/v1beta1 +kind: Cluster +metadata: + name: '${CLUSTER_NAME}' + namespace: '${NAMESPACE}' +spec: + clusterNetwork: + pods: + cidrBlocks: + - 192.168.30.0/24 diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set-csi-insecure.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set-csi-insecure.yaml new file mode 100644 index 0000000000..c22ddb314b --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set-csi-insecure.yaml @@ -0,0 +1,27 @@ +apiVersion: v1 +kind: Secret +metadata: + name: vsphere-config-secret + namespace: '${NAMESPACE}' +stringData: + data: | + apiVersion: v1 + kind: Secret + metadata: + name: vsphere-config-secret + namespace: vmware-system-csi + stringData: + csi-vsphere.conf: |+ + [Global] + + [VirtualCenter "${VSPHERE_SERVER}"] + insecure-flag = "${VSPHERE_INSECURE_CSI}" + user = "${VSPHERE_USERNAME}" + password = "${VSPHERE_PASSWORD}" + datacenters = "${VSPHERE_DATACENTER}" + + [Network] + public-network = "${VSPHERE_NETWORK}" + + type: Opaque +type: addons.cluster.x-k8s.io/resource-set diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set-label.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set-label.yaml new file mode 100644 index 0000000000..1447050b04 --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set-label.yaml @@ -0,0 +1,7 @@ +apiVersion: cluster.x-k8s.io/v1beta1 +kind: Cluster +metadata: + name: '${CLUSTER_NAME}' + namespace: '${NAMESPACE}' + labels: + cni: "${CLUSTER_NAME}-crs-cni" diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set.yaml new file mode 100644 index 0000000000..6507eed65e --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/cluster-resource-set.yaml @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: "cni-${CLUSTER_NAME}-crs-cni" +data: ${CNI_RESOURCES} +--- +apiVersion: addons.cluster.x-k8s.io/v1beta1 +kind: ClusterResourceSet +metadata: + name: "${CLUSTER_NAME}-crs-cni" +spec: + strategy: ApplyOnce + clusterSelector: + matchLabels: + cni: "${CLUSTER_NAME}-crs-cni" + resources: + - name: "cni-${CLUSTER_NAME}-crs-cni" + kind: ConfigMap diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/remove-storage-policy.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/remove-storage-policy.yaml new file mode 100644 index 0000000000..4777dcaa03 --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/commons/remove-storage-policy.yaml @@ -0,0 +1,2 @@ +- op: remove + path: /spec/template/spec/storagePolicyName \ No newline at end of file diff --git a/test/e2e/data/infrastructure-vsphere-supervisor/main/topology/kustomization.yaml b/test/e2e/data/infrastructure-vsphere-supervisor/main/topology/kustomization.yaml new file mode 100644 index 0000000000..2bcd486217 --- /dev/null +++ b/test/e2e/data/infrastructure-vsphere-supervisor/main/topology/kustomization.yaml @@ -0,0 +1,9 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - cluster-template-topology-supervisor.yaml + - ../commons/cluster-resource-set.yaml +patchesStrategicMerge: + - ../commons/cluster-resource-set-label.yaml + - ../commons/cluster-network-CIDR.yaml + - ../commons/cluster-resource-set-csi-insecure.yaml