Workflow: ipi-openstack

The IPI-OPENSTACK workflow provides pre- and post- steps that provision and deprovision an OpenShift cluster with a default configuration on OpenStack, allowing job authors to inject their own end-to-end test logic. All modifications to this workflow should be done by modifying the `ipi-openstack-{pre,post}` chains to allow other workflows to mimic and extend this base workflow without a need to backport changes.

Pre Steps

Name Description
ipi-openstack-pre The ipi-openstck-pre chain contains the necessary refs and chains to prepare the system to run ipi install on OpenStack.

Test Steps

No test steps configured.

Post Steps

Name Description
ipi-openstack-post The ipi-openstack-post chain inludes all the refs and chains necessary to tear down an ipi installation of OpenShift on Openstack.

Dependencies

Image Exposed As Override[?] Required By Steps
release:latest OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE no ipi-install-install
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
ADDITIONAL_WORKERS_NETWORKS Space-separated list of Neutron network names that will be connected to the worker nodes. openstack-conf-generateconfig
ALLOCATION_POOL_END (default: 172.16.0.254) openstack-provision-machinesubnet
ALLOCATION_POOL_START (default: 172.16.0.10) openstack-provision-machinesubnet
API_VIP (default: 172.16.0.5) openstack-provision-machinesubnet
APPLICATION_CREDENTIALS If this variable is not empty, the provided clouds.yaml will contain ephemeral application credentials. openstack-conf-clouds
APPLICATION_CREDENTIALS_EXPIRATION When to set the expiration of the application credentials. Use a format that `date -d` would understand. This variable has no effect if APPLICATION_CREDENTIALS is empty. (default: 5 hours) openstack-conf-clouds
BASE_DOMAIN openstack-conf-generateconfig openstack-conf-creatednsrecords ipi-conf-openstack-precheck openstack-deprovision-deletednsrecords
BASTION_FLAVOR The flavor of the bastion machine. Defaults to the value in "${SHARED_DIR}/BASTION_FLAVOR" openstack-provision-bastionproxy
BASTION_IMAGE The image of the bastion machine (default: centos8-stream) openstack-provision-bastionproxy
BASTION_SUBNET_RANGE (default: 10.0.0.0/16) openstack-provision-machinesubnet
BASTION_USER The user of the bastion machine (default: centos) openstack-provision-bastionproxy openstack-deprovision-bastionproxy
CLUSTER_TYPE_OVERRIDE This will override CLUSTER_TYPE in the `commands` file if set. openstack-conf-clouds openstack-conf-resourcenames
CONFIG_TYPE The type of config for the environment to deploy. * 'minimal' - Configure the install-config with the minimal options to make it work on our tests, which requires the usage of floating IPs. This config type doesn't require a proxy server to be deployed. * 'byon' - Configure the install-config to use a pre-created network (BYON) so it wouln't require the usage of floating IPs. This config type will require a proxy server to be deployed. * 'proxy' - Configure the install-config to use a pre-created restricted network (BYON) and a Cluster Proxy. openstack-provision-machinesubnet openstack-provision-bastionproxy openstack-conf-createfips openstack-conf-generateconfig openstack-conf-generateconfig openstack-conf-creatednsrecords openstack-deprovision-bastionproxy openstack-deprovision-machinesubnet
DNS_IP (default: 1.1.1.1) openstack-provision-machinesubnet
FIPS_ENABLED (default: false) openstack-conf-generateconfig
IGNITIONVERSION ignition version to use for mco. (default: 3.1.0) ipi-conf-etcd-on-ramfs
INGRESS_VIP (default: 172.16.0.7) openstack-provision-machinesubnet
NETWORK_TYPE The Network type used during the installation (default: OpenShiftSDN) openstack-provision-bastionproxy openstack-conf-generateconfig
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
OPENSTACK_COMPUTE_FLAVOR If not passed, the command script chooses the value based on CLUSTER_TYPE. openstack-conf-resourcenames openstack-conf-generateconfig
OPENSTACK_CONTROLPLANE_FLAVOR If not passed, the command script chooses the value based on CLUSTER_TYPE. openstack-conf-resourcenames openstack-conf-generateconfig
OPENSTACK_EXTERNAL_NETWORK If not passed, the command script chooses the value based on CLUSTER_TYPE. openstack-conf-resourcenames openstack-provision-machinesubnet openstack-provision-bastionproxy openstack-conf-createfips openstack-conf-generateconfig
OPENSTACK_PROVIDER_NETWORK Name of the OpenStack provider network if any. openstack-provision-machinesubnet openstack-conf-generateconfig openstack-deprovision-machinesubnet
OS_CLOUD name of cloud to use from clouds.yaml (default: openstack) openstack-gather openstack-conf-clouds openstack-provision-machinesubnet openstack-provision-bastionproxy openstack-provision-proxyconf openstack-conf-createfips openstack-conf-generateconfig openstack-conf-exportcindercredentials openstack-deprovision-bastionproxy openstack-deprovision-deletefips openstack-deprovision-machinesubnet
SUBNET_RANGE (default: 172.16.0.0/24) openstack-provision-machinesubnet
TRY_COUNT number of times to retry (default: 5) ipi-conf-openstack-precheck
WAIT_TIME number of seconds to wait before trying. (default: 60) ipi-conf-openstack-precheck
ZONES If not passed, the command script chooses the value based on CLUSTER_TYPE. openstack-conf-resourcenames openstack-conf-generateconfig
ZONES_COUNT The number of AZs to present in the cluster. Accepted values are 0 and 1. (default: 0) openstack-provision-machinesubnet openstack-provision-bastionproxy openstack-conf-generateconfig

Step Graph

Webreg Workflow "ipi-openstack" cluster_3 Pre cluster_2 ipi-openstack-pre cluster_0 ipi-conf-openstack cluster_1 ipi-install cluster_4 Test cluster_9 Post cluster_8 ipi-openstack-post cluster_6 ipi-deprovision cluster_5 gather cluster_7 ipi-deprovision-openstack 0 openstack-conf-clouds 1 openstack-conf-resourcenames 0->1 2 openstack-provision-machinesubnet 1->2 3 openstack-provision-bastionproxy 2->3 4 openstack-provision-proxyconf 3->4 5 openstack-conf-createfips 4->5 6 openstack-conf-generateconfig 5->6 7 openstack-conf-creatednsrecords 6->7 8 openstack-conf-exportcindercredentials 7->8 9 ipi-conf-etcd-on-ramfs 8->9 10 ipi-conf-openstack-precheck 9->10 11 ipi-install-monitoringpvc 10->11 12 ipi-install-rbac 11->12 13 openshift-cluster-bot-rbac 12->13 14 ipi-install-install 13->14 15 ipi-install-times-collection 14->15 16 Intentionally left blank 15->16 17 openstack-gather 16->17 18 gather-must-gather 17->18 19 gather-extra 18->19 20 gather-audit-logs 19->20 21 ipi-deprovision-deprovision 20->21 22 openstack-deprovision-deletednsrecords 21->22 23 openstack-deprovision-bastionproxy 22->23 24 openstack-deprovision-deletefips 23->24 25 openstack-deprovision-machinesubnet 24->25

GitHub Link:

https://github.com/openshift/release/blob/master/ci-operator/step-registry/ipi/openstack/ipi-openstack-workflow.yaml

Owners:

Approvers:

Reviewers:

Source code for this page located on GitHub