# Utilize tripleo-operator-ansible roles in CI ###### tags: `Design` Currently, we are using various bash script in CI to do a full Openstack deployment. With tripleo-operator-ansible roles we should be able to replace the bash scripts with tripleo-operator-ansible roles. ## Overall status | Task | Status | | ---------- | --------- | | Overcloud Node Import | :checkered_flag: | | Undercloud Deploy | :checkered_flag: | | Build Overcloud Images| | | Overcloud Image upload | :checkered_flag: | | Overcloud Node Introspect | :checkered_flag: | | Network Provision| :checkered_flag: | | Network VIP Provision | :checkered_flag: | Baremetal node Provision | :checkered_flag: | | Overcloud deploy | [InProgress Amol](https://review.opendev.org/c/openstack/tripleo-quickstart-extras/+/800338) | | Overcloud delete | :checkered_flag: | ## Other improvements made during this work * [Improve introspect operator to support log file](https://review.opendev.org/c/openstack/tripleo-operator-ansible/+/800210) * [Old code cleanup for image upload script](https://review.opendev.org/c/openstack/tripleo-quickstart-extras/+/800617) ## Overcloud Node Import - Done * Earlier provisioned via shell command in [Overcloud node import script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-import-nodes.sh.txt.gz) ~~~ openstack overcloud node import instackenv.json ~~~ * Replaced with: [tripleo_overcloud_node_import](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_node_import) * Status: **Done** #### Investigate why two scripts are still present:- * [overcloud-import-nodes.sh.txt.gz](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-import-nodes.sh.txt.gz) * [tripleo_overcloud_node_import.sh.txt.gz](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/tripleo_overcloud_node_import.sh.txt.gz) ## Undercloud Deploy - Done * Earlier deployed via [Undercloud deploy script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/undercloud-install.sh.txt.gz) ~~~ openstack undercloud install ~~~ * Replaced with: https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_undercloud_install * Status: **Done** #### Investigate why two undercloud install scripts are still present * [tripleo_undercloud_install.sh.txt.gz](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/tripleo_undercloud_install.sh.txt.gz) * [undercloud-install.sh.txt.gz](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/undercloud-install.sh.txt.gz) ## Build Overcloud Images * Currently provisioned via shell command in [build_images script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/build_images.sh.txt.gz) ~~~ openstack --debug overcloud image build \ $CONFIG_FILES > /home/zuul/build.log 2> /home/zuul/build-err.log RESULT=$? ~~~ * Replacement: [tripleo_overcloud_image_build](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_image_build) ## Overcloud Image upload * Currently provisioned via shell command in [Image upload script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-image-upload.sh.txt.gz) ~~~ #!/bin/bash set -eux source /home/zuul/stackrc openstack overcloud image upload --http-boot=/var/lib/ironic/httpboot --local ~~~ * Noticed redundant script [here](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-prep-images.sh.txt.gz) * Replacement: [tripleo_overcloud_image_upload](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_image_upload) ## Overcloud Node Introspect * Currently provisioned via shell command in [Overcloud introspect script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-introspect.sh.txt.gz) ~~~ set -eux source /home/zuul/stackrc ack overcloud node introspect --all-manageable openstack overcloud node provide --all-manageable ~~~ * Noticed redundant script [here](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-prep-images.sh.txt.gz) * Replacement: [tripleo_overcloud_node_introspect](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_node_introspect) * Patch: https://review.opendev.org/c/openstack/tripleo-quickstart-extras/+/800215 * Posted an Improvement as well: https://review.opendev.org/c/openstack/tripleo-operator-ansible/+/800210 ## Network Provision * Currently provisioned via shell command in [Overcloud deploy script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-deploy.sh.txt.gz) ~~~ openstack overcloud network provision \ --output /home/zuul/overcloud-networks-deployed.yaml \ /usr/share/openstack-tripleo-heat-templates/ci/network_data.yaml if [ $? -ne 0 ]; then exit 1 ~~~ * Replacement [tripleo_overcloud_network_provision](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_network_provision) ## Network VIP Provision * Currently provisioned via shell command in [Overcloud deploy script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-deploy.sh.txt.gz) ~~~ openstack overcloud network vip provision \ --output /home/zuul/overcloud-vips-deployed.yaml \ --stack overcloud \ /usr/share/openstack-tripleo-heat-templates/ci/vip_data.yaml if [ $? -ne 0 ]; then exit 1 fi ~~~ * Replacement [tripleo_overcloud_network_vip_provision](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_network_vip_provision) ## Baremetal node Provision * Currently provisioned via shell command in [Overcloud deploy script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-deploy.sh.txt.gz) ~~~ openstack overcloud node provision \ --network-ports \ --stack overcloud \ --output /home/zuul/overcloud-baremetal-deployed.yaml /home/zuul/overcloud_baremetal_deploy.yaml if [ $? -ne 0 ]; then exit 1 fi ~~~ * Replacement [tripleo_overcloud_node_provision](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_node_provision) ## Overcloud deploy * Currently provisioned via shell command in [Overcloud deploy script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-deploy.sh.txt.gz) ~~~ openstack overcloud deploy --stack overcloud \ --skip-nodes-and-networks \ --override-ansible-cfg /home/zuul/custom_ansible.cfg \ --heat-type installed --templates /usr/share/openstack-tripleo-heat-templates \ --libvirt-type qemu --timeout 120 --ntp-server 0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org,3.pool.ntp.org -e /home/zuul/cloud-names.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/deployed-server-environment.yaml -e /home/zuul/overcloud-baremetal-deployed.yaml --deployed-server -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml -e /home/zuul/containers-prepare-parameter.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml --networks-file /usr/share/openstack-tripleo-heat-templates/ci/network_data.yaml -e /home/zuul/overcloud-networks-deployed.yaml -e /home/zuul/overcloud-vips-deployed.yaml -e /usr/share/openstack-tripleo-heat-templates/ci/environments/network/multiple-nics/network-environment.yaml -e /home/zuul/overcloud_network_params.yaml -e /home/zuul/overcloud_storage_params.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/low-memory-usage.yaml -e /home/zuul/src/opendev.org/openstack/tripleo-ci/test-environments/worker-config.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/debug.yaml -e /home/zuul/enable-tls.yaml -e /usr/share/openstack-tripleo-heat-templates/environments/ssl/tls-endpoints-public-ip.yaml -e /home/zuul/inject-trust-anchor.yaml --validation-warnings-fatal -e /home/zuul/overcloud-topology-config.yaml -e /home/zuul/overcloud-selinux-config.yaml -e /usr/share/openstack-tripleo-heat-templates/ci/environments/ovb-ha.yaml --disable-validations \ "$@" && status_code=0 || status_code=$? ~~~ * Replacement [tripleo_overcloud_deploy](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_deploy) * We will need to capture failure logs separetely. ## Overcloud delete * Currently provisioned via shell command in [overcloud delete script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-1ctlr_1comp-featureset002-master/9f1c2af/logs/undercloud/home/zuul/overcloud-delete.sh.txt.gz) ~~~ openstack stack delete --yes "$OVERCLOUD_NAME" ~~~ * Replacement: [tripleo_overcloud_delete](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_overcloud_delete) ## Repo setup * Currently provisioned via shell command in [Repo setup Script](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/repo_setup.sh.txt.gz) * Possible Replacement: [tripleo-repos](https://github.com/openstack/tripleo-operator-ansible/tree/master/roles/tripleo_repos) ### Other points * [overcloud-deploy-post.sh.txt.gz](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-deploy-post.sh.txt.gz) doesn't contains much - Check if we can remove this. * Investigate if [undercloud-sanity-check.sh.txt.gz](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/undercloud-sanity-check.sh.txt.gz) is still relevant * Investigate if [install-upstream-ipxe.sh.txt.gz](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/install-upstream-ipxe.sh.txt.gz) is still relevant * Investigate if [overcloud-prep-network.sh.txt.gz](https://logserver.rdoproject.org/openstack-periodic-integration-main/opendev.org/openstack/tripleo-ci/master/periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master/6fa7419/logs/undercloud/home/zuul/overcloud-prep-network.sh.txt.gz) is still relevant *
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up