# Deploy TripleO on CentOS Stream-9 in CI for master & wallaby ###### tags: `Design` ## Repos and DLRN API ENDPOINT ### DLRN repos * https://trunk.rdoproject.org/centos9-master/ * Current Using consistent repos ### DLRN API ENDPOINT * https://review.rdoproject.org/r/c/rdo-infra/ci-config/+/36156 * API endpoint testing in progress ### CentOS Composes * https://composes.stream.centos.org/production/ ### Container-tools * container-tools:latest ### CentOS stream 9 package Koji * https://kojihub.stream.centos.org/koji/index ### Code review topic Use topic or hashtag: "cs9" * https://review.opendev.org/q/(topic:%2522cs9%2522+OR+hashtag:cs9) ## Current Status * https://review.opendev.org/c/openstack/tripleo-common/+/800580/comment/cdc0104d_55ca030d/ * ## Build Container Pipeline GOAL: Build containers in integration line ### Reviews * Added support for CentOS stream 9 container build - https://review.opendev.org/c/openstack/tripleo-ci/+/800577 (chandan) - READY * Update tcib for CentOS Stream 9 - https://review.opendev.org/c/openstack/tripleo-common/+/800580 (chandan) - READY * DNM: Trying out CentOS Stream 9 container build - https://review.rdoproject.org/r/c/testproject/+/18953 * Switch to mariadb:10.5 module - https://review.opendev.org/c/openstack/tripleo-common/+/808009 * openstack-periodic-integration-main-cs9 pipeline - https://review.rdoproject.org/r/c/config/+/35817 * Adds component criteria for master on c9 stream - https://review.rdoproject.org/r/c/rdo-infra/ci-config/+/35832 * Adding pipeline and jobs for c9 stream - https://review.rdoproject.org/r/c/rdo-jobs/+/35831 ### TODO: * release[distro] skiplist design for container build ( keep in mind the promoter) ### Tasks remaining here: * Add a new pipeline to trigger cs9 jobs - Ananya (Done) * Add a job to promote content from consistent to tripleo-ci-testing - Ananya * Add the container-build job definition - Ananya * Enable container-build in the new pipeline - Ananya * Start looking into downstream container-build on RHEL9 (ysandeep) * Add support for CentOS stream 9 in tripleo-repos (existing tooling) ## Image Build Pipeline GOAL: Build overcloud and IPA images in integration line marios looking here until sagi is back ### hackmd (Sagi's Work) * https://hackmd.io/@rh-openstack-ci/rJeaXyVZK ### Reviews * Add configs for CentOS 9 image - https://review.opendev.org/c/openstack/tripleo-common/+/806018 * Preliminary work to support CentOS 9 Stream - https://review.opendev.org/c/openstack/ironic-python-agent-builder/+/806809 * Correct path for CentOS 9 stream base image - https://review.opendev.org/c/openstack/diskimage-builder/+/806819 * Add support for CentOS Stream 9 - https://review.opendev.org/c/openstack/tripleo-ci/+/808177 * Overcloud Image build - https://review.rdoproject.org/r/c/testproject/+/35465 * [WIP] Add support for CentOS Stream 9 in DIB - https://review.opendev.org/c/openstack/diskimage-builder/+/811392 (alfredo) * Bunch of patches from Steve - https://review.opendev.org/q/topic:%22grubenv%22+(status:open%20OR%20status:merged) ### Tasks Remaining (marios) * Finish Diskimage builder support for cs9 * Add the image build job definition * Enable image build in the new pipeline ## Run Standalone and Undercloud GOAL: Enable standalone and undercloud job ### Reviews * [WIP] centos 9 periodic release file - https://review.opendev.org/c/openstack/tripleo-quickstart/+/806910 * DNM: Trying out CentOS Stream 9 standalone job | https://review.rdoproject.org/r/c/testproject/+/35229 * Remove fetch-zuul-cloner https://review.rdoproject.org/r/c/config/+/36113 * update endpoint and baseurl https://review.rdoproject.org/r/c/rdo-infra/ci-config/+/3615 I am currently promoting hashes till tripleo-ci-tesing * virtualenv https://review.rdoproject.org/r/c/rdo-infra/ci-config/+/36158 * Correct location of component criteria: https://review.rdoproject.org/r/c/rdo-infra/ci-config/+/36174 ### Tasks Remaining (sandeep) * Consume current containers in undercloud and standalone jobs * Make sure IPA job and fs039 job works with mariadb:10.5 ## Bugs 1. https://bugzilla.redhat.com/show_bug.cgi?id=1996616 - nothing provides ansible-core needed by ansible-freeipa-0.3.8-3.el9.noarch 2. https://bugzilla.redhat.com/show_bug.cgi?id=1997069 - packages requiring "python3dist(ansible)" fails to install with ansible-core 3. https://issues.redhat.com/browse/RHELBU-1226 - Ansible Execution Environment and RPM in RHEL 4. https://bugzilla.redhat.com/show_bug.cgi?id=2003556 - mariadb-server in centos9 stream is not shipping wsrep_sst_rsync_tunnel Informational: https://wiki.centos.org/QaWiki/AutomatedTests/WritingTests/t_functional 5. https://bugs.launchpad.net/tripleo/+bug/1946461 - CentOS Stream 9 missing packages tracker for container build 6. https://bugs.launchpad.net/tripleo/+bug/1947181 - C9 Standalone deploy fails on build-test-package dependency install task because of missing Mock package. 7. https://bugs.launchpad.net/bugs/1946822 - Standalone deployment on Centos9 failing during python3-tripleoclient dependencies install, nothing provides genisoimage needed by python3-ironicclient-4.8.0-0.20210921104434.b5df386.el9.noarch 8. https://bugs.launchpad.net/tripleo/+bug/1947193 - Centos9 standalone deployment failing with error: "heat.common.exception.StackValidationFailed: Property error: resources.AnsibleGroupVars.properties.value: Incorrect arguments: Items to merge must be maps." ## Stream Pinning Tasks ## Cockpit Design for Centos 9 and RHEL 9 * pages/columns/graphs need to be added * Component Pipeline Wallaby c9 * Component Pipeline Master c9 * Component Pipeline RHOS 17 RHEL 9 * Upstream promotions c9 for Wallaby and Master * ruck-rover tool and any data that needs to updated * Ruck-rover tool already support c9 * New overarching design * Wallaby Component Pipeline page * On this page we point to Centos 8 and Centos 9 with a status (red or green) for each * Might also have a comparison: * Latest promotion * Components * c8 And c9 * Setup failrues to shows up first in the list of jobs * On the component promotion, setup colors if the difference between the days are too high * less than 1 day = green * 1 day = orange * 2 days = Red * general info ## Promoter Changes for c9/RHEL 9 * new config * new RHOS-17 config ## Tempest Tasks ## Emit releases # Single Source of truth - While working on CS9 we should have single source of truth. We need to keep track of the jobs which are there for CS9. ## Process - Add jobs - Add it to criteria - Whatever jobs are present in the criteria are the valid jobs rest we don't know. # Component pipeline * Jobs to add: * promote-consistent-to-component-ci-testing - DONE * promote-to-promoted-components - DONE * standalone component jobs - DONE * scenario001-standalone-component - WIP - POOJA * https://review.rdoproject.org/r/c/rdo-jobs/+/36959/1/zuul.d/component-jobs-master-centos9.yaml * scenario002-standalone-component jobs - Rafael * scenario003-standalone-component jobs - Rafael * scenario004-standalone-component jobs - POOJA * scenario007-standalone-component jobs - POOJA * scenario010-standalone-component jobs - POOJA * scenario010-kvm-standalone-component jobs - POOJA * scenario012-standalone-component jobs - POOJA * Update and Upgrade jobs - POOJA * standalone-upgrade jobs - POOJA * standalone-full-tempest-api-component jobs -BHAGYASHRI * standalone-full-tempest-scenario-component jobs - BHAGYASHRI * standalone-on-multinode-ipa jobs - BHAGYASHRI * ovb component promotion jobs - fs001 - BHAGYASHRI * multinode component jobs - BHAGYASHRI Note: * From above refences added jira tickets/sub tasks under sub-story: https://issues.redhat.com/browse/TRIPLEOCI-675 * First add definations like https://review.rdoproject.org/r/c/rdo-jobs/+/36959/1/zuul.d/component-jobs-master-centos9.yaml * Second test those jobs using testproject patch * Once testproject passes add jobs in the integration line likbe this https://review.rdoproject.org/r/c/rdo-jobs/+/36959/1/zuul.d/component-pipeline-main-centos9.yaml * Add all the passing jobs in the promotion criteria ## OVB JOB * periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset035-master * periodic-tripleo-ci-centos-8-ovb-1ctlr_2comp-featureset020-master * periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-master * periodic-tripleo-ci-centos-8-ovb-1ctlr_1comp-featureset002-master * periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp_1supp-featureset039-master * periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001-rbac-master * periodic-tripleo-ci-centos-8-ovb-1ctlr_2comp-featureset020-rbac-master * periodic-tripleo-ci-centos-8-ovb-3ctlr_1comp_1supp-featureset064-master ## CS9 upstream check and gate jobs * https://opendev.org/openstack/tripleo-ci/src/branch/master/zuul.d/content-provider.yaml * https://opendev.org/openstack/tripleo-ci/src/branch/master/zuul.d/standalone-jobs.yaml * https://opendev.org/openstack/tripleo-ci/src/branch/master/zuul.d/multinode-jobs.yaml ## CS9 wallaby * https://review.rdoproject.org/r/q/topic:%22c9-wallaby%22+(status:open%20OR%20status:merged)