From fc2dda1d8682e30f445e93052a364e7087d30c25 Mon Sep 17 00:00:00 2001 From: Jakob Meng Date: Wed, 13 Jul 2022 12:13:19 +0200 Subject: [PATCH] Refactored TripleO jobs, e.g. to use latest openstacksdk RPM Build and install latest RPM for openstacksdk from its master branch instead of using the (pinned) RPM from RDO. This is necessary because openstacksdk in RDO is currently pinned to <0.99.0 for all RDO releases. Variable artg_change_list is used to define what code is being build from source. The RPM of the Ansible OpenStack collection does not have build from source because TripleO Quickstart installs the collection from job.required-projects [1]. The latter shadows the RPM release which is installed later by TripleO because it has a higher precedence in ansible.cfg [2][3]. Changed the job hierarchy to other base jobs tripleo-ci-centos-8-\ standalone-build and tripleo-ci-centos-9-standalone-build. This reduces the number of variables we have to define. It is also cleaner since our CentOS9 job is no longer based on the CentOS8 job which prevents issues with job variant collections due to our branched repository. Added more Ansible modules to files which trigger TripleO jobs, because Ansible role os_tempest [4] requires those modules and is called in TripleO jobs. Modules which have been added include: * openstack.cloud.compute_flavor * openstack.cloud.image * openstack.cloud.network * openstack.cloud.router * openstack.cloud.subnet Added tripleo-ci-centos-8-standalone-osa to experimental jobs so that we can actually run this job on demand easily. [1] https://opendev.org/openstack/tripleo-quickstart/src/commit/cb1595223b09c991c3e8451c6d1b332a78f65a94/quickstart.sh#L123 [2] https://opendev.org/openstack/tripleo-quickstart/src/commit/cb1595223b09c991c3e8451c6d1b332a78f65a94/ansible.cfg#L19 [3] https://opendev.org/openstack/tripleo-quickstart/src/commit/cb1595223b09c991c3e8451c6d1b332a78f65a94/quickstart.sh#L595 [4] https://opendev.org/openstack/openstack-ansible-os_tempest.git Change-Id: Ibde318678a3e44fdc297a6f29761eb0c7d77cbc9 --- .zuul.yaml | 57 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 33 insertions(+), 24 deletions(-) diff --git a/.zuul.yaml b/.zuul.yaml index fdcd314a..cf30f423 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -300,57 +300,65 @@ # TripleO jobs - job: name: tripleo-ci-centos-8-standalone-osa - parent: tripleo-ci-base-standalone-centos-8 - vars: - featureset: '052' + parent: tripleo-ci-centos-8-standalone-build + branches: master + vars: &tripleo_vars consumer_job: false - build_container_images: true + branch_override: master force_non_periodic: true - required-projects: - - openstack/ansible-collections-openstack + artg_change_list: + - host: "https://opendev.org" + project: "openstack/openstacksdk" + branch: "master" + refspec: "+refs/heads/*:refs/remotes/origin/*" + required-projects: &tripleo_required_projects + - # Required for TripleO Quickstart to install current patchset of the collection + # Ref.: https://opendev.org/openstack/tripleo-quickstart/src/commit/b48d869e14de40444d69a107a0b718b5f721e912/quickstart.sh#L123 + openstack/ansible-collections-openstack - # always use master branch when collecting parent job variants, refer to git blame for rationale. name: openstack/tripleo-ci override-checkout: master - irrelevant-files: &irr_files + irrelevant-files: &tripleo_irrelevant_files - .*molecule.* - ^.*\.md$ - ^.*\.rst$ - - ^docs/.*$ - - ^contrib/.*$ - ^changelogs/.*$ + - ^contrib/.*$ + - ^docs/.*$ - ^meta/.*$ - - ^tests/.*$ - - ^tools/.*$ - ^requirements.*$ - ^setup.*$ + - ^tests/.*$ + - ^tools/.*$ - tox.ini # Run only on files used in TripleO - files: &ooo_files + files: &tripleo_files + - ^.zuul.yaml$ + - ^plugins/module_utils/openstack.*$ - ^plugins/modules/catalog_service.*$ + - ^plugins/modules/compute_flavor.*$ - ^plugins/modules/endpoint.*$ - ^plugins/modules/identity_domain.*$ - ^plugins/modules/identity_domain_info.*$ - ^plugins/modules/identity_role.*$ - ^plugins/modules/identity_user.*$ + - ^plugins/modules/image.*$ - ^plugins/modules/keypair.*$ + - ^plugins/modules/network.*$ - ^plugins/modules/project.*$ - ^plugins/modules/role_assignment.*$ + - ^plugins/modules/router.*$ - ^plugins/modules/stack.*$ - - ^plugins/module_utils/openstack.*$ + - ^plugins/modules/subnet.*$ - job: name: tripleo-ci-centos-9-standalone-osa - parent: tripleo-ci-centos-8-standalone-osa - nodeset: single-centos-9-node - branches: ^(stable/1.0.0|master).*$ - override-checkout: master - vars: - containers_base_image: quay.io/centos/centos:stream9 - consumer_job: false - build_container_images: true - branch_override: master - files: *ooo_files - irrelevant-files: *irr_files + parent: tripleo-ci-centos-9-standalone-build + branches: master + vars: *tripleo_vars + required-projects: *tripleo_required_projects + irrelevant-files: *tripleo_irrelevant_files + files: *tripleo_files - job: name: ansible-collections-openstack-release @@ -436,6 +444,7 @@ experimental: jobs: + - tripleo-ci-centos-8-standalone-osa - ansible-collections-openstack-functional-devstack-ansible-2.11 tag: