2501 Commits

Author SHA1 Message Date
Mark Goddard
07eb06755e CI: Pin ansible-lint to <6
The molecule job is failing with the following since the release of
ansible-lint 6.0.0:

    ModuleNotFoundError: No module named 'ansiblelint.prerun'

Pin ansible-lint to <6.

Also ignore changes to molecule-requirements.txt for jobs that don't use
it.

Change-Id: I00ea1b4cd57a22a1a0939ddc463ef336da2f0902
2022-03-15 15:10:01 +00:00
Mark Goddard
d77a30db36 CI: Don't download Cirros or IPA in seed jobs
We build IPA images and a deployment image in the seed jobs, so we don't
need to download Cirros or IPA images. Also, these downloads depend on
external resources which may make jobs less reliable.

For seed upgrade jobs, disable IPA and deployment image downloads.

Change-Id: Ib59c8bc2d8938eca18c943bb2e66ed185152a739
2022-03-15 13:24:42 +00:00
Mark Goddard
acf6d0d51f CI: Disable container image builds on Ubuntu
The kayobe-seed-ubuntu-focal job is currently fairly unreliable, often
failing to build the base container image.

We are not using the mirrors provided by OpenDev infra, which may be
making these builds less reliable.

This change disables container image builds in CI on Ubuntu. It should
be reverted if they are made more reliable.

Change-Id: I648fa6423ad9ff43120c7808f080b0359ad8621c
2022-03-15 09:52:38 +00:00
Pierre Riteau
b0c1d4c53a CI: fix TLS job by freeing up memory
When TLS is enabled, extra RAM usage is causing the OOM killer to
terminate Tenks VMs, which are using large RSS amounts (around 1.5 GB).

Disable Heat and Horizon to free up enough memory to make the job pass.

Change-Id: If483a6a6fb6d5b2c9b6b7dbd22939b0b46599538
2022-03-11 17:38:09 +01:00
Pierre Riteau
5fb6362e25 CI: Disable TLS job until fixed
The overcloud job with TLS is failing frequently with the Tenks VM
triggering the OOM killer. Disable until we find a reliable fix.

Change-Id: If42d1f0580d8305a36dd4fd4431680559eb5d68f
2022-03-11 10:19:31 +01:00
Will Szumski
bb9da9fb24 Only create patch links on overcloud hosts
These are only neccesary on network and compute nodes.

Co-authored-by: Mark Goddard <mark@stackhpc.com>

Change-Id: Id5af3969da63150e892201f7518f50a3da73e852
Story: 2009911
Task: 44740
2022-03-10 16:51:38 +00:00
Mark Goddard
a786ef20f7 Bump MichaelRigart.interfaces to v1.13.1
The update of MichaelRigart.interfaces to v1.13.0
introduced a regression due to
https://github.com/michaelrigart/ansible-role-interfaces/pull/118.

Configuration for active interfaces could be removed and not recreated,
if not present in the kayobe network interface configuration. This
affects the Kayobe development environment, in which the configuration
does not touch the host's real network interfaces. That would lead to
DHCP leases not being renewed, and consequent loss of access to the
host.

This change fixes the issue by bumping to v1.13.1, which reverts the
change.

Change-Id: I03da729e1d05783af2e290237485f6035d2ddcdc
2022-03-10 09:18:15 +00:00
Michal Nasiadka
a20fc47f0c CI: Move to pytest-testinfra
Change-Id: I615707976454a91c8f6aecc5eda1852def7197d4
2022-03-07 14:32:48 +01:00
Zuul
678b915aff Merge "CI: remove qemu-utils installation" 2022-03-03 18:00:32 +00:00
Zuul
f3f4dbb78c Merge "Add support for root filesystem UUID customisation" 2022-03-03 15:49:47 +00:00
Zuul
a245d5019c Merge "CI: stop setting libvirt_host_require_vt in overrides" 2022-03-03 13:16:25 +00:00
Zuul
4004f5d009 Merge "Add the bonding 802.3ad aggregation selection option" 2022-03-03 13:16:22 +00:00
Zuul
705dfcf81c Merge "Synchronise Kolla Ansible inventory template" 2022-03-03 13:16:19 +00:00
Zuul
0352b098bf Merge "Drop vmtp" 2022-03-03 13:16:16 +00:00
Zuul
afa8618f6a Merge "CI: stop using zuul as kayobe_ansible_user in TLS jobs" 2022-03-03 13:16:13 +00:00
Pierre Riteau
e453f3c570 CI: remove qemu-utils installation
nova-libvirt images now include qemu-utils on master [1] and xena [2].

[1] https://review.opendev.org/c/openstack/kolla/+/830401
[2] https://review.opendev.org/c/openstack/kolla/+/831411

Change-Id: I8f5f93340642d055cce7ef306d942e75b10c86a9
2022-03-03 10:01:21 +01:00
Piotr Parczewski
04d97cda85 Add support for root filesystem UUID customisation
Depends-on: https://review.opendev.org/c/openstack/bifrost/+/819785
Change-Id: I37b9d18f0523c121357c5a37ec6fc458209f8e79
2022-03-03 09:42:03 +01:00
Zuul
b2b013c1cf Merge "Bump up Ansible supported versions" 2022-03-02 17:34:35 +00:00
Mark Goddard
a0665cd9c6 CI: stop using zuul as kayobe_ansible_user in TLS jobs
Previously we were using the zuul user in the TLS jobs. This was due to
a permissions issue when accessing the CA certificate in kayobe-config
in the zuul user's home directory.

This change reverts to the default of using the stack user for the TLS
jobs. In order to make this work, the generated CA cert chain is added
to the trust store.

Change-Id: I875f8976df75dee68ba00842fe624c29cc1b123c
2022-03-02 13:34:12 +00:00
Zuul
082f9c5477 Merge "CI: test fact caching" 2022-02-28 13:09:51 +00:00
Pierre Riteau
0177eedc9b Synchronise Kolla Ansible inventory template
Change-Id: Iaec4c530c353f7b97209a205473601abb0a408f4
2022-02-25 11:21:29 +01:00
Pierre Riteau
fb24afca9e Drop vmtp
This was removed from Kolla during the Yoga release cycle.

Change-Id: I0d2fba4e23ba49dec5adc9a822af2afe09111b58
2022-02-25 11:16:47 +01:00
Mark Goddard
06123b795d ntp: Remove removal of chrony container
The chrony container removal was performed in the Xena cycle, so we no
longer require this task in the 'overcloud host configure' command.

Change-Id: I86fcc75e844eb922f62c90c45a105519845cc1a7
2022-02-23 22:36:14 +00:00
Zuul
01e5834ed1 Merge "CI: enable libvirt TLS in TLS job" 2022-02-23 18:00:52 +00:00
Zuul
2de62b1710 Merge "Sync enable flag defaults with kolla ansible" 2022-02-23 13:31:43 +00:00
Pierre Riteau
959bef6745 CI: test fact caching
Also synchronise Ansible settings between Kayobe and Kolla Ansible.

Change-Id: Idaea4a984391a8cd05a5b0eee254ac6bad531a3e
2022-02-23 09:29:43 +01:00
Maksim Malchuk
8e36626e3e Add the bonding 802.3ad aggregation selection option
Change-Id: I863e18841924e88c8943c1df0c6753fd90c90ef3
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2022-02-22 17:42:39 +03:00
Mark Goddard
f477473bd7 Revert "CI: drop jobs requiring kolla-ansible"
This reverts commit f00a65ead9f3e7431c7c54c2eb7132c2ff32a089.

Reason for revert: fix for kolla-ansible installation with
openstack.kolla has merged.

Change-Id: I361c68904eb66e9728b4a902a0998e4bc06d2dcd
2022-02-22 10:13:04 +00:00
Mark Goddard
3efc551e7e Install Ansible collections for kolla-ansible
This change uses the new Galaxy requirements file in Kolla Ansible to
install the openstack.kolla collection.

Cross-project dependencies on ansible-collection-kolla are supported.

Story: 2009854
Task: 44504

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/819430
Change-Id: Iac185dd2bbbca128c6cf71b2734e94b3e1c6133b
2022-02-22 09:23:35 +00:00
Mark Goddard
06c6191799 Install openstack.kolla collection
This patch adds the openstack.kolla collection to the Galaxy
requirements. It is installed from the OpenDev git repository. The
collection is not yet used by Kayobe.

Zuul cross-project dependencies on the ansible-collection-kolla
repository are supported (and used in this commit).

Story: 2009854
Task: 44503

Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/820165/
Change-Id: I91cbac839f816a00ac54bc4a350f44b5ae457cc3
2022-02-22 09:23:14 +00:00
Mark Goddard
cb48f7e5d2 Refactor host configure commands to use a single playbook
Ansible failure handling is different when executing multiple top-level
playbooks (CLI arguments) vs. multiple plays within a top-level
playbook. If any hosts have failed or are unreachable at the end of a
top-level playbook, then ansible-playbook exits non-zero.

In contrast, execution will continue at the end of a mid-playbook play
if there are hosts that have not failed or become unreachable. This is
documented in [1].

Currently, Kayobe executes multiple top-level playbooks, most notably in
the host configure commands where there is a long list of them. This has
implications when working at scale, where failures are more common. If a
host fails at any point, then execution of the command will stop at the
end of the current playbook. This means that the command must be run
again for all hosts. Additionally, if any hosts are unreachable, then
the command is unable to progress at all without removing them from the
inventory.

This change refactors the host configure and host upgrade commands to
use a single top-level playbook.

[1] https://github.com/markgoddard/ansible-experiments/tree/master/14-error-handling

Story: 2009854
Task: 44482

Change-Id: Ia63d66097b10b6ddda30ad693636143f8b1a85e0
2022-02-22 09:22:09 +00:00
Mark Goddard
f00a65ead9 CI: drop jobs requiring kolla-ansible
Drop Kayobe jobs until we support installing kolla-ansible with
openstack.kolla collection
(Iac185dd2bbbca128c6cf71b2734e94b3e1c6133b).

Change-Id: Ia6cc7e2f7a9a9fb0a1c3e0fdf07e7cdd1cbd431c
2022-02-22 09:17:18 +00:00
Mark Goddard
b2e8e71553 CI: Revert from UEFI to BIOS mode in TLS jobs
We keep hitting the OOM killer in the TLS job, and the switch to UEFI
mode in bare metal testing seems like the most likely culprit.

This change keeps in place most of the changes of
Id1b4e9775c834b8b97e086241ee8b247977225a2, but removes the override of
ironic_boot_mode in the TLS job.

Change-Id: Id35894be893183b0b84e6dacb81e1b72e4a828f9
2022-02-21 17:34:08 +00:00
Mark Goddard
5cf03e9870 CI: stop setting libvirt_host_require_vt in overrides
It is now set globally in kayobe-config-dev.

Depends-On: https://review.opendev.org/c/openstack/kayobe-config-dev/+/829225
Change-Id: Ib46834fd226c3f59146bbaada53c8d079481d315
2022-02-21 14:14:30 +00:00
Zuul
e027e5fc10 Merge "CI: test ironic UEFI boot mode in overcloud TLS jobs" 2022-02-21 13:59:11 +00:00
Zuul
6beb787303 Merge "docs: fix order of tenks/libvirt workaround on ubuntu" 2022-02-21 13:59:09 +00:00
Piotr Parczewski
84284946d7 Enable rtcsync in chrony by default
Story: 2007872
Task: 44139

Change-Id: I1a161a4f241cccac3f39ab7a3e11bccac02f9a07
Co-Authored-By: Pierre Riteau <pierre@stackhpc.com>
2022-02-17 09:19:52 +01:00
Zuul
1a5fa3252e Merge "Bump up manage-lvm role version to v0.2.6" 2022-02-14 18:06:40 +00:00
Zuul
5824178d3e Merge "CI: Enable bare metal testing for Ubuntu" 2022-02-14 17:46:53 +00:00
Mark Goddard
52d4458b07 Sync enable flag defaults with kolla ansible
* Cinder ZFSSA backend was dropped in Xena
* iscsid is no longer required for Ironic since the Ironic iscsi deploy
  interface was removed in Xena

Change-Id: Ia9ade04b1aa9ad102e637d2ddf638b28b2d11305
2022-02-14 17:15:31 +00:00
Mark Goddard
883027afb0 CI: Enable bare metal testing for Ubuntu
Previously we were seeing issues with ipmitool and virtualbmc on Ubuntu:

  Error setting Chassis Boot Parameter 5\nError setting Chassis Boot Parameter 0

The dependent change fixes these issues, and this change enables bare
metal testing in Ubuntu CI.

Depends-On: https://review.opendev.org/c/openstack/kayobe-config-dev/+/829006

Change-Id: I96827fc32c1594ca9a0535e259929c49d3f0e704
2022-02-14 09:16:59 +00:00
Mark Goddard
c00085da69 CI: enable libvirt TLS in TLS job
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/826723
Change-Id: I52ffa0b23ce2ae54fbfe5879a25b128ca1864195
2022-02-10 20:14:29 +00:00
Mark Goddard
0ec97ff78d docs: fix order of tenks/libvirt workaround on ubuntu
Change-Id: Idd53d689e0e9baad571b2f0f4005f3efa3e21830
2022-02-10 14:30:44 +00:00
Zuul
37a9e87041 Merge "Support elements repositories for overcloud host images" 2022-02-10 13:42:42 +00:00
Zuul
e6da84a094 Merge "Support building multiple disk images" 2022-02-09 20:21:57 +00:00
Zuul
112a08a37d Merge "dnf: support exclude and includepkgs arguments" 2022-02-09 16:46:01 +00:00
Zuul
555f865dcd Merge "Disable EPEL by default" 2022-02-09 16:45:55 +00:00
Zuul
c668268fb4 Merge "Update documentation about CentOS support" 2022-02-09 15:37:48 +00:00
Zuul
ef2196b595 Merge "Remove deprecated kolla_tls_cert variable" 2022-02-09 15:37:44 +00:00
Zuul
ef6de82d6e Merge "Set requirements branch for IPA build" 2022-02-09 13:46:21 +00:00