![]() 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] |
||
---|---|---|
.. | ||
bifrost-jobs.yaml | ||
project.yaml |