Switch all dependencies to use the OpenStack 2023.2 release.
This commit should be reverted on the master branch once the
Kayobe stable/2023.2 branch has been cut and RC1 released.
Change-Id: I749a1ac30fa15cf7faa456fcb90c4ddbbef77cc9
Switch all dependencies to use the OpenStack 2023.1 release.
This commit should be reverted on the master branch once the
Kayobe stable/2023.1 branch has been cut and RC1 released.
Change-Id: Id5e946fd7b0526faea99536f4a055f0f5c2b8176
The 'kayobe * host configure' commands no longer use the 'kolla-ansible
bootstrap-servers' command, and associated 'baremetal' role in Kolla
Ansible. The functionality provided by the 'baremetal' role has been
extracted into the openstack.kolla Ansible collection, and split
into separate roles. This allows Kayobe to use it directly, and only the
necessary parts.
This change improves failure handling in these Kayobe commands, and aims
to reduce confusion over which '--limit' and '--tags' arguments to
provide. This ensures that if a host fails during a host configuration
command, other hosts are able to continue to completion. Previously, if
any host failed during the Kayobe playbooks, the 'kolla-ansible
bootstrap-servers' command would not run. This is useful at scale, where
host failures occur more frequently.
This change has implications for configuration of Kayobe, since some
variables that were previously in Kolla Ansible are now in Kayobe.
Several parts of the baremetal role have been split out and used here:
* apparmor-libvirt: disable AppArmor rules for libvirt on Ubuntu.
* docker: Docker installation & configuration. The docker role in
openstack.kolla combines functionality from kolla-ansible and kayobe.
* etc-hosts: it proved difficult to generalise this, so we have some
almost duplicated the code from kolla-ansible here. Requires delegated
fact gathering for the case when --limit is used.
* firewall: support to disable UFW, for feature parity.
* kolla-packages: miscellaneous package installs & removals.
The addition of the stack user to the docker group has been moved to the
user bootstrapping playbook, and the docker SDK installation has been
moved to the virtualenv setup playbook.
Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/829587
Story: 2009854
Task: 44505
Change-Id: I61a61ca59652b13687c2247d5881012b51f666a7
Switch all dependencies to use the OpenStack Zed release.
This commit should be reverted on the master branch once the
Kayobe stable/zed branch has been cut and RC1 released.
Change-Id: I1ea18a68bb2c1ea6a2a45f6cbd3c48fd30bb1c8a
Switch all dependencies to use the OpenStack Yoga release.
This commit should be reverted on the master branch once the
Kayobe stable/yoga branch has been cut and RC1 released.
Change-Id: Ib7495c1bf79de8b1ea67e4a8652345c22e9d1a3e
Switch all dependencies to use the OpenStack Xena release.
This commit should be reverted on the master branch once the
Kayobe stable/xena branch has been cut and RC1 released.
Change-Id: Iee21230217ab1614977498dcbc2a18952ab7d64e
Tox jobs are timing out in CI due to pip dependency resolution
backtracking taking too long. When run locally, pip fails to resolve
dependencies due to upper-constraints now allowing pluggy 1.0.0 [1],
while molecule still depends on pluggy >= 0.7.1, < 1.0. See similar
tripleo bug for more details [2].
Split molecule dependencies in a separate requirements file and remove
upper constraints from its tox environment for now. As a bonus, it
should speed up execution of the jobs due to installing fewer
dependencies.
Stop using upper-constraints when installing docker python library [3].
This part of the commit can be reverted when docker 5.0.2 is in upper
constraints.
Update Kolla inventory template following renaming of haproxy role to
loadbalancer [4]. With the existing template, haproxy/keepalived
containers are not created and service deployment fails while trying to
connect to MySQL using the VIP.
[1] https://review.opendev.org/c/openstack/requirements/+/806680
[2] https://bugs.launchpad.net/tripleo/+bug/1942508
[3] https://review.opendev.org/c/openstack/kayobe/+/807128
[4] https://review.opendev.org/c/openstack/kolla-ansible/+/770618
Change-Id: I4cad83c92c32d1db2a5d3c03a78a1c533a8b9633
Co-Authored-By: Mark Goddard <mark@stackhpc.com>
This reverts commit 3f76d7d134.
The version of IPA images has been pinned to wallaby to ensure they are
compatible with the Wallaby Ironic in current Kolla master images.
Without this, bare metal tests fail with
'Not found: Extension with id iscsi not found.'
Ironic removed the iscsi driver in Xena.
Change-Id: Ia4c70965d9f3f099046591bac7f702ee982fef71
On CentOS, when using the MichaelRigart.interfaces role, defining a VLAN
interface implies the existence of its parent interface. This is handled
via the CentOS network interface scripts. With systemd-networkd, the
parent interface is not implicit, and must be configured. The parent
interface network configuration file needs to contain this:
[Network]
VLAN = eth0.42
This change adds support for these implied parent interfaces. It also
removes the Broadcast = true option, which was added in an attempt to
fix an issue but is not supported in the [Network] section, and
generates a warning:
Unknown key name 'Broadcast' in section 'Network', ignoring.
Story: 2004960
Task: 42368
Task: 42367
Change-Id: I5d105006fad6e7e80473b9d9fa693de644c35a6d
Switch all dependencies to use the OpenStack Wallaby release.
This commit should be reverted on the master branch once the
Kayobe stable/wallaby branch has been cut and RC1 released.
Change-Id: I977943e81a79e4a40cca04d80d786ca49afd3d39
Tox doesn't use bash, so to be able to expand the list of files
using the * character, we need to run ansible-lint under bash.
Change-Id: I413d17288d81882998ee58a156ba7abe53a592a0
Switch all dependencies to use the OpenStack Victoria release.
This commit should be reverted on the master branch once the
Kayobe stable/victoria branch has been cut and RC1 released.
Change-Id: I7f1113577fd48aa0715b644cc66bfca197771ca6
When molecule runs, it installs ansible>2.8, which is version 2.10.0
since today. This now also installs the ansible-base package, currently
at version 2.10.1. Then it installs the version of ansible required by
kayobe, i.e. ansible>=2.8.0,<2.10.0 (currently 2.9.13).
We end up with a tox molecule venv containing:
ansible==2.9.13
ansible-base==2.10.1
This causes the following issue:
ERROR! Unexpected Exception, this is probably a bug: cannot import name 'AnsibleCollectionLoader' from 'ansible.utils.collection_loader' (/home/zuul/src/opendev.org/openstack/kayobe/.tox/molecule/lib/python3.8/site-packages/ansible/utils/collection_loader/__init__.py)
This commit adds requirements.txt to the molecule tox deps, which
ensures the correct version of ansible gets installed first.
Change-Id: I7ef890a2ae6fd67f53e1b8bca244a1c0d44fea53
requirements.txt is unnecessary when running `tox -e releasenotes` since
release notes requirements are in doc/requirements.txt. This PS removes
the requirements.txt from tox.ini and reuses [docs] deps.
Sync from kolla-ansible and kolla.
Change-Id: I9df2f98772c143a9662fd5c123cc9f6d5410c5e5
Switch all dependencies to use the OpenStack Ussuri release.
This commit should be reverted on the master branch once the
Kayobe stable/ussuri branch has been cut and RC1 released.
Change-Id: Id126ea109e6dfcba09b524129876985547ad368f
Removes and/or replaces all mentions of py27.
Cleans up obsolete requirements and their lower-constraints.
Update cliff minimum to 3.1.0 in requirements.txt, which has a fix for
story 2005891.
Change-Id: I52cffa2f1aee944f79c4618ea20b779755792f2a
Kayobe generates passwords.yml for Kolla Ansible, and can encrypt it
using the vault password. Previously this was failing on Python 3 due to
passing a string to file.write() which expects bytes.
This change fixes the issue by encoding the password string passed to
file.write().
This allows us to run the ansible role tests under Python 3.
Change-Id: I33813f79984a46f1967ef3aee455dcfbe7eb93da
Story: 2006574
Task: 39481
Cleanup requirement and set ignore_basepython_conflict = True
in tox to avoid python version conflict warning which going
to be error in future.
Change-Id: Ia4ce42a20417d69efd50ef563aabd8cffbb7b346
This reverts commit a93b85ba07.
The local Python executable for Kolla Ansible is changed to Python 3
because Kolla Ansible master no longer supports Python 2.
Change-Id: I768ce8db9cec1c70d94f271997bbcc64d370403e
Switch all dependencies to use the OpenStack Train release.
This commit should be reverted on the master branch once the
Kayobe stable/train branch has been cut and RC1 released.
Change-Id: I6006e14df27a180f1438f9eb01b9ebefdddaff72
1. Sphinx 1.8 introduced [1] the '--keep-going' argument which, as its name
suggests, keeps the build running when it encounters non-fatal errors.
This is exceptionally useful in avoiding a continuous edit-build loop
when undertaking large doc reworks where multiple errors may be
introduced.
2. Cleanup the folders before run commands
[1] https://github.com/sphinx-doc/sphinx/commit/e3483e9b045
Change-Id: Ib3133820a3d3ca3027ea2f9bc9b6907929cff8ed
Documentation build environments use doc/requirements.txt where sphinx
is already present. Use doc/requirements.txt in the pep8 environment
because sphinx is required by sphinx8.
Change-Id: I3a2c9ae392745e001c5bdd01212c996e54c44f0c
This reverts commit b46b2b72bb.
Switch dependencies and upper constraints back to master branch for
development after cutting stable/stein branch.
Change-Id: Ie7f588aab59e57efe240a58a3bd0a6f09fbcefb7
Switch all dependencies to use the OpenStack Stein release.
This commit should be reverted on the master branch once the
Kayobe stable/stein branch has been cut and RC1 released.
Change-Id: I50a39994c8ffa0c7d65e026ae765973541423476
The project infrastructure is now hosted at opendev.org.
Kayobe projects have been moved from the openstack/ namespace to x/.
Change-Id: I16b523285eb34c1cd0eaf920aa4512d0ae1b4f05
Adds two new variables, 'openstack_release' and 'openstack_branch',
in ${KAYOBE_CONFIG_PATH}/openstack.yml for setting the current OpenStack
release and branch in a single place.
Also uses the master branch for the molecule tox job.
Change-Id: I851a1e6eddc6738005c1813599445b38c0ae0d57
Use master branch of:
* Kolla
* Kolla ansible
* Bifrost
* IPA
* OpenStack services
* Requirements
Also, use the infra docker registry mirror at port 8082 which does not
have any path component in its URL, and so works with Docker CE.
Depends-On: https://review.openstack.org/#/c/651254/
Change-Id: Icdb62aa0083d9272a08421138719cf5f6b52ec5a
Story: 2001864
Task: 14316
Also change to use the py3 tox environment rather than specifying a
version explicitly.
Change-Id: I05d5d6f5718b39dc95b40efe44e9ebb3fb5b1311
Story: 2004959
Task: 30035
We run yamllint with the same configuration in kayobe-config, so we
should catch issues here before they are synchronised.
Change-Id: Ia2de07abc7c58040f99766adb950c477800ea56d
Use stable/rocky branch of:
* Kolla
* Kolla ansible
* Bifrost
* IPA
* OpenStack services
* Requirements
Also updates Kolla Ansible inventory template.
The seed deploy job has been made non-voting and non-gating, because we
are waiting for bifrost change https://review.openstack.org/#/c/618740
to merge, be released, and for the kolla bifrost image to use the new
package.
Change-Id: Id5e7fdbd196f96e1e75ffc68bc93aab18fa38aa7
Story: 2001864
Task: 27798
Depends-On: I58e4f951d4a3dd89e0784fd82d8a62dbba374f79