Workflow: openshift-e2e-vsphere-csi

The Openshift E2E vSphere `csi` workflow executes the `openshift/csi` end-to-end test suite on vSphere CSI driver that was installed during cluster setup.

Pre Steps

Name Description
ipi-vsphere-pre The IPI setup step contains all steps that provision an OpenShift cluster with a default configuration on vSphere.
storage-conf-csi-vsphere The csi-vsphere step creates ${SHARED_DIR}/${TEST_CSI_DRIVER_MANIFEST} for vSphere CSI driver, which is consumed by openshift-e2e-test step to run CSI driver certification suite.
storage-obj-save This step saves existing storage objects (PVs, StorageClasses, CSIDrivers) after cluster installation. These objects are used by storage-obj-check step to tell which of them existed before e2e tests started and which are leftovers of the e2e tests.

Test Steps

Name Description
openshift-e2e-test The Openshift E2E step executes the common end-to-end test suite.

Post Steps

Name Description
storage-obj-check This step compares existing storage objects (PVs, StorageClasses, CSIDrivers) in the cluster with objects saved in storage-obj-save step to ensure that e2e tests don't leave any stray objects behind and all volumes are deleted.
gather-core-dump The network step runs the must gather network tool to gather core dumps.
ipi-vsphere-post The IPI cleanup step contains all steps that deprovision an OpenShift cluster on vSphere, provisioned by the `ipi-vsphere-pre` chain.

Dependencies

Image Exposed As Override[?] Required By Steps
release:latest OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE no ipi-install-install
OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE no openshift-e2e-test
RELEASE_IMAGE_LATEST no ipi-install-install

Environment

In addition to the default environment, the following variables are consumed through this workflow

Variable Name Variable Content Consumed By Steps
FIPS_ENABLED (default: false) ipi-conf
OPENSHIFT_INSTALL_EXPERIMENTAL_DUAL_STACK Using experimental Azure dual-stack support (default: false) ipi-install-install
OPENSHIFT_INSTALL_PRESERVE_BOOTSTRAP Keep bootstrap resources after install. Warning: this should only be used for debugging purposes, and poses a risk to cluster stability. ipi-install-install
TEST_ARGS Additional arguments to be passed to 'openshift-test' openshift-e2e-test
TEST_CSI_DRIVER_MANIFEST The CSI driver manifest to create. Used by the `openshift-tests` as a manifest for openshift/csi tests. The file must be in ${SHARED_DIR}. storage-conf-csi-vsphere openshift-e2e-test
TEST_INSTALL_CSI_DRIVERS The CSI driver(s) to use. Used by the `openshift-tests` program, see its documentation for details. openshift-e2e-test
TEST_REQUIRES_SSH If the test suite requires SSH access, setting this variable will install a bastion and configure the Kube e2e test infrastructure to use the bastion. Otherwise, tests that require SSH will fail because OpenShift does not expose SSH to nodes by default. openshift-e2e-test
TEST_SKIPS Regular expression (POSIX basic regular expression) of tests to skip. It is suggested to test the regex to make sure that it matches with the available tests. Tests can be listed by using 'openshift-tests run --dry-run (...)'. Sometimes, the tests that are printed in Prow won't exactly match the list returned by openshift-tests. openshift-e2e-test
TEST_SUITE The test suite to run. Use 'openshift-test run --help' to list available suites. (default: openshift/conformance/parallel) openshift-e2e-test
TEST_TYPE The type of test to perform. * 'suite' - Run the test suite defined by TEST_SUITE. By default this executes the OpenShift parallel conformance suite. All product components must run the default suite on pull requests prior to merge. * 'suite-conformance' - Runs the test suite defined by TEST_SUITE, then runs the product conformance suite to verify the cluster is still functional. This is typically used for testing disruption from one suite, then confirming that the disruption did not degrade the product. * 'upgrade' - Perform an upgrade to the image defined by OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE. The TEST_UPGRADE_OPTIONS flag may be optionally set. All product components must run the default upgrade test (verify an upgrade completes) on pull requests prior to merge. * 'upgrade-conformance' - Performs the 'upgrade' test and then executes the full conformance suite after upgrade completes. Does not honor TEST_SUITE but will respect TEST_UPGRADE_OPTIONS. All product releases must pass the conformance suite after an upgrade completes or have explicit logic in their test to tolerate behavior after upgrade. * 'upgrade-paused' - Perform an upgrade to the images defined by OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE with paused worker pool. (default: suite) openshift-e2e-test
TEST_UPGRADE_OPTIONS Options controlling how an upgrade is performed. See `openshift-test run-upgrade --help` for more details. openshift-e2e-test
TEST_UPGRADE_SUITE The test suite to run in upgrade tests. Use 'openshift-test run --help' to list available suites. (default: all) openshift-e2e-test

Step Graph

Webreg Workflow "openshift-e2e-vsphere-csi" cluster_3 Pre cluster_2 ipi-vsphere-pre cluster_0 ipi-conf-vsphere cluster_1 ipi-install-vsphere cluster_4 Test cluster_8 Post cluster_5 gather-core-dump cluster_7 ipi-vsphere-post cluster_6 gather 0 ipi-conf-vsphere-check 1 ipi-conf-vsphere-vips 0->1 2 ipi-conf-vsphere-lb 1->2 3 ipi-conf-vsphere-dns 2->3 4 ipi-conf 3->4 5 ipi-conf-vsphere 4->5 6 ipi-install-monitoringpvc 5->6 7 ipi-install-rbac 6->7 8 openshift-cluster-bot-rbac 7->8 9 ipi-install-install 8->9 10 ipi-install-vsphere-registry 9->10 11 storage-conf-csi-vsphere 10->11 12 storage-obj-save 11->12 13 openshift-e2e-test 12->13 14 storage-obj-check 13->14 15 gather-core-dump 14->15 16 gather-must-gather 15->16 17 gather-extra 16->17 18 gather-audit-logs 17->18 19 ipi-deprovision-vsphere-diags 18->19 20 ipi-deprovision-deprovision 19->20 21 ipi-deprovision-vsphere-dns 20->21 22 ipi-deprovision-vsphere-lb 21->22

GitHub Link:

https://github.com/openshift/release/blob/master/ci-operator/step-registry/openshift/e2e/vsphere/csi/openshift-e2e-vsphere-csi-workflow.yaml

Owners:

Approvers:

Reviewers:

Source code for this page located on GitHub