Use openstacksdk<0.99.0 and a-c-o<2.0.0 on bifrost-*collections-* jobs

The latest release 1.9.1 of Ansible OpenStack Collection [1] is
compatible only to openstacksdk <0.99.0. Until the former has been
fixed, a workaround [2] is required in Bifrost to pin both the
Ansible OpenStack Collection as well as openstacksdk.

These pinned versions will be overwritten when their repositories
are listed in job.required-projects in .zuul.yaml, which we do in
the master branch of Ansible OpenStack collection [3] for both jobs
bifrost-collections-src and bifrost-keystone-collections-src.

This has two side effects: First, Bifrost's CI jobs use the master
branch of both openstacksdk and Ansible OpenStack Collection for
both bifrost-*collections-* jobs which thus differ from other
Bifrost jobs that use pinned releases.
Second, it causes a chicken-and-egg problem: Applying a breaking
change to module openstack.cloud.baremetal_node [4] will break
Bifrost but could easily be fixed [5]. The fix would be backward
compatible to previous releases of Ansible OpenStack Collection
and openstacksdk. But merging that fix [5] without patching
module openstack.cloud.baremetal_port [6] first would break the
bifrost-*collections-* jobs. The patch for openstack.cloud.\
baremetal_port [6] would break bifrost-*collections-* jobs
without the Bifrost fix [5].

The solution is to use the last known working releases of
Ansible OpenStack collection and openstacksdk in both
bifrost-*collections-* jobs like all other Bifrost jobs already
do.

Once we release Ansible OpenStack collection 2.0.0, we simply
have to revert Dmitry's workaround [2] and this patch.

[1] https://opendev.org/openstack/ansible-collections-openstack
[2] 03ddd02656
[3] 41f3007a80/.zuul.yaml (L286)
[4] https://review.opendev.org/c/openstack/ansible-collections-openstack/+/854113
[5] https://review.opendev.org/c/openstack/bifrost/+/859430/

Change-Id: I1bb2fc8057e769dafdbeb10b4874591c03c89d1e
This commit is contained in:
Jakob Meng 2022-09-27 14:33:29 +02:00
parent f44e16a125
commit de0d4c738e

View File

@ -33,8 +33,20 @@
voting: false voting: false
- bifrost-collections-src: - bifrost-collections-src:
voting: false voting: false
# FIXME(dtantsur): downgrade ansible-collections-openstack
# and openstacksdk because the former has not been ported
# yet to openstacksdk >=0.99.0
required-projects: &bifrost_collections_required_projects
- name: openstack/ansible-collections-openstack
override-checkout: stable/1.0.0
- name: openstack/openstacksdk
override-checkout: stable/yoga
- bifrost-keystone-collections-src: - bifrost-keystone-collections-src:
voting: false voting: false
# FIXME(dtantsur): downgrade ansible-collections-openstack
# and openstacksdk because the former has not been ported
# yet to openstacksdk >=0.99.0
required-projects: *bifrost_collections_required_projects
- kolla-ansible-ubuntu-source-bifrost: - kolla-ansible-ubuntu-source-bifrost:
voting: false voting: false
# NOTE(yoctozepto): to override from job definition # NOTE(yoctozepto): to override from job definition