Commit Graph

74 Commits

Author SHA1 Message Date
Pierre Riteau dd8cf81607 Revert "Use OpenStack 2023.2 release"
This reverts commit 99f5b64956.

Reason for revert: 2023.2 has been branched and released

Change-Id: I38fc5dcadda5103d63a11022825e8e167408677d
2023-12-08 11:55:04 +01:00
Pierre Riteau 99f5b64956 Use OpenStack 2023.2 release
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
2023-12-01 15:58:47 +01:00
Bartosz Bezak d7b648a82e Revert "Use OpenStack 2023.1 release"
This reverts commit 16a61da41a.

Reason for revert: 2023.1 has been branched and released

Change-Id: Ief6b68144dd2d161ca6e98888934888cdfee49a4
2023-06-20 13:22:50 +00:00
Matt Crees 16a61da41a Use OpenStack 2023.1 release
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
2023-05-29 10:56:08 +00:00
Mark Goddard c9f8d80ba6 Stop using kolla-ansible bootstrap-servers
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
2023-03-30 13:52:54 +00:00
Bartosz Bezak 0c11102afe Revert "Use OpenStack Zed release"
This reverts commit 65c59b9f59.

Reason for revert: Zed has been branched and released

Change-Id: I2d87017c27139b5e0154edef006ad61d665ede2a
2023-01-12 10:46:49 +00:00
Pierre Riteau 5e1e285384 Fix tox.ini for tox4
Depends-On: https://review.opendev.org/c/zuul/zuul-jobs/+/866943/

Change-Id: I66b3a85adfe2928b936006780fb20b5fc7cc802f
2022-12-28 14:52:29 +01:00
Bartosz Bezak 65c59b9f59 Use OpenStack Zed release
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
2022-12-14 20:42:32 +00:00
Pierre Riteau 0671cd454c Restore use of upper constraints for molecule
Change-Id: I90413a04ab38820172f1b4bcb3afa18f3961639e
2022-12-14 10:01:46 +01:00
Mark Goddard 07f8e41bbb Revert "[release] Use OpenStack Yoga release"
This reverts commit 88dd02dc92.

Reason for revert: Master is now Zed

Change-Id: I9a18c41dbdc369a7a719632d6e41e2373784f29e
2022-04-14 08:09:18 +00:00
Mark Goddard 88dd02dc92 [release] Use OpenStack Yoga release
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
2022-04-07 13:51:18 +01:00
Mark Goddard 7f72fdbe55 Revert "Use OpenStack Xena release"
This reverts commit e0c42ea940.

Xena has branched and is almost ready for release.

Change-Id: I9315110fa767ff62681486e436fca5503339cabf
2021-11-09 17:31:48 +00:00
Michal Nasiadka e0c42ea940 Use OpenStack Xena release
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
2021-10-15 11:08:38 +02:00
Pierre Riteau 74eff837cb CI: Fix multiple failures
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>
2021-09-03 23:10:39 +02:00
Mark Goddard 1dc6d98be7 Revert "Use OpenStack Wallaby release"
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
2021-06-07 15:19:52 +01:00
Zuul c98cd6c520 Merge "Ubuntu: define implied VLAN parent interfaces in networkd" 2021-04-29 12:12:45 +00:00
Mark Goddard 1ae12dc6f8 Ubuntu: define implied VLAN parent interfaces in networkd
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
2021-04-28 14:50:16 +01:00
Michał Nasiadka 3f76d7d134 Use OpenStack Wallaby release
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
2021-04-26 08:45:42 +00:00
Zuul 413d43e958 Merge "Fix ansible-lint star expansion" 2020-12-18 15:28:33 +00:00
wu.shiming 04ff616d81 Update TOX_CONSTRAINTS_FILE
UPPER_CONSTRAINTS_FILE is old name and deprecated
-https://zuul-ci.org/docs/zuul-jobs/python-roles.html#rolevar-tox.tox_constraints_file
This allows to use lower-constraints file as more
readable way instead of UPPER_CONSTRAINTS_FILE=<lower-constraints file>.

Change-Id: Ibd73999e54586b88d26adb688305af3c60595fbd
2020-11-27 07:32:41 +00:00
Mark Goddard c1c0f9d018 Revert "Use OpenStack Victoria release"
This reverts commit 074024d63f.

Depends-On: https://review.opendev.org/763959

Change-Id: Ia5715c6914ac454081a95b6e1788e80f53c72e30
2020-11-24 15:12:03 +00:00
Riccardo Pittau 5c1fd9ac2d Fix ansible-lint star expansion
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
2020-11-23 11:22:08 +01:00
Michal Nasiadka 074024d63f Use OpenStack Victoria release
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
2020-11-05 12:52:13 +00:00
Pierre Riteau 502d3858bc Remove unneeded doc requirements in molecule tox env
Change-Id: Ie68ba316327437b4503f4a0aa48a58e89d403790
2020-09-24 12:13:13 +02:00
Pierre Riteau c585554988 CI: Fix kayobe-tox-molecule job
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
2020-09-23 18:34:23 +02:00
wu.chunyang 9475050cc7 Remove unnecessary requirements from tox.ini
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
2020-09-18 13:10:43 +00:00
Mark Goddard 354113c20b docs: Move configuration reference to subpath
This allows us to add configuration scenarios.

Change-Id: Id636f78c61237fb27fa65fa3d4b3fc1a4cf0ba6a
Story: 2004360
Task: 40777
2020-08-28 08:28:40 +01:00
Will Szumski 9c36feb4ed Revert "Use OpenStack Ussuri release"
This reverts commit ffce6fa641.

Change-Id: I00f1b7c7d0182a80e0fb212099f67e92187ca603
2020-06-12 13:41:06 +01:00
Mark Goddard ffce6fa641 Use OpenStack Ussuri release
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
2020-05-29 15:42:07 +01:00
Radosław Piliszek 83bc574ba5 Cleanup py27 support
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
2020-04-20 18:04:19 +00:00
Mark Goddard 8bed623571 Fix passwords.yml generation with vault encryption on Python 3
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
2020-04-20 15:42:22 +01:00
Ghanshyam Mann 208c46e72c [ussuri][goal] More cleanup for python 2.7 drop
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
2020-02-29 15:23:18 -06:00
Pierre Riteau c9474bf9b0 Revert "Use OpenStack Train release"
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
2020-02-14 14:54:23 +00:00
Ghanshyam Mann c0a1216afa [ussuri][goal] Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in ussuri cycle.

kayobe is ready with python 3 and ok to drop the
python 2.7 support.

Complete discussion & schedule can be found in
- http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal:
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

Change-Id: Idbbdd96ff23846d29833c5997d1e32e65b5169f2
2020-02-11 10:12:39 +00:00
Will Szumski a93b85ba07 Use OpenStack Train release
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
2019-12-12 11:55:56 +01:00
Zuul 081291dccf Merge "Remove sphinx from test-requirements.txt" 2019-12-06 18:04:20 +00:00
gujin d23ed92588 tox: Keeping going with docs
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
2019-11-11 13:49:54 +00:00
Pierre Riteau 21836ddf90 Remove sphinx from test-requirements.txt
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
2019-10-21 11:10:13 +02:00
Mark Goddard 798b7dfc53 Build pdf doc
The is one of community goals that each project should produce a
single PDF file. The pdf should be in the output of openstack-tox-docs
job.

TeX packages are required to build PDF locally, following is
recommended:

* inkscape
* texlive-latex-base
* texlive-latex-extra
* texlive-fonts-recommended

More about the goal:
https://governance.openstack.org/tc/goals/train/pdf-doc-generation.html
https://etherpad.openstack.org/p/train-pdf-support-goal
https://etherpad.openstack.org/p/pdf-goal-train-common-problems

Change-Id: Ib8a238f5ad4329527147be72331b87f57877f68e
2019-10-16 14:36:13 +01:00
pengyuesheng aabf913c9b Update the constraints url
For more detail, see http://lists.openstack.org/pipermail/openstack-discuss/2019-May/006478.html

Change-Id: I90662a9816c4f4af5a4a481d0e815bf6a398f8d3
2019-09-24 15:48:27 +08:00
Mark Goddard ebe13df6f7 Revert "Use OpenStack Stein release"
This reverts commit b46b2b72bb.

Switch dependencies and upper constraints back to master branch for
development after cutting stable/stein branch.

Change-Id: Ie7f588aab59e57efe240a58a3bd0a6f09fbcefb7
2019-08-22 13:52:42 +01:00
Mark Goddard 7ed7b27bc4 Add retries to ansible galaxy install for all envs
Galaxy install often fails in CI, scuppering an otherwise good run.

Change-Id: I3d02afe33cdf32b1d285bd4bdc4a8074883113ca
2019-07-04 13:02:04 +00:00
Mark Goddard b46b2b72bb Use OpenStack Stein release
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
2019-05-29 17:20:25 +01:00
Zuul cada311d4c Merge "Add python 3.6 jobs" 2019-04-26 17:57:36 +00:00
Mark Goddard 5b9f85d715 Update git.openstack.org to opendev.org
The project infrastructure is now hosted at opendev.org.

Kayobe projects have been moved from the openstack/ namespace to x/.

Change-Id: I16b523285eb34c1cd0eaf920aa4512d0ae1b4f05
2019-04-24 14:00:18 +01:00
Mark Goddard 73063732aa Add openstack_release and openstack_branch
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
2019-04-15 11:41:07 +00:00
Mark Goddard eda8246b7b Use master version of dependencies
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
2019-04-09 16:55:02 +00:00
Mark Goddard da8059644c Add python 3.6 jobs
Also change to use the py3 tox environment rather than specifying a
version explicitly.

Change-Id: I05d5d6f5718b39dc95b40efe44e9ebb3fb5b1311
Story: 2004959
Task: 30035
2019-03-15 13:00:40 +00:00
Mark Goddard 4d52ee0cdf Run yamllint on etc/kayobe during pep8 tox env
We run yamllint with the same configuration in kayobe-config, so we
should catch issues here before they are synchronised.

Change-Id: Ia2de07abc7c58040f99766adb950c477800ea56d
2019-02-14 12:17:19 +00:00
Mark Goddard 935d3cef6a Update dependencies to Rocky
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
2018-11-19 14:37:33 +00:00