Adds the kayobe-seed-vm-centos8 CI job to configure the Zuul VM as a
seed hypervisor, and use nested virt to provision a seed VM. This
ensures that the seed hypervisor code paths are tested.
The job uses a Cirros image for the seed VM rather than the usual CentOS
cloud image. This is to reduce bandwidth required to download the image.
It does mean that the resulting seed VM cannot be used as a seed, but
nested virt would make this slow and unreliable anyway. Cirros does not
load cdrom drivers by default, so we add the configdrive as a disk
rather than a cdrom device.
Depends-On: https://review.opendev.org/617161
Change-Id: I2268a1ddf9a2870c713f32a40689e1686365aabd
Story: 2001655
Task: 6683
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
* Always use Python 3
* Drop code paths for CentOS 7
* Drop support for Yum
* Remove support for host NTP daemon, always use chrony
* Switch references from 'yum_install_epel' to 'dnf_install_epel'
* Remove overcloud host image workaround for tagged VLAN admin network
* Remove the kayobe.utils.yum_install function, which is unused
Change-Id: I368f6edafed9779658798fc342116b4c1b3ffd48
Story: 2006574
Task: 39481
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
Tests various non-default configuration:
* Custom users
* Network interfaces, VLANs, bridges, bonds
* Software RAID
* LVM & docker devicemapper
* timezone
* Package mirrors
* yum-cron / DNF automatic
This improved test coverage allows us to be more confident about these
features working on CentOS 8.
Change-Id: I36148e4356deb7d5ec00d8d3ebeb2d3932ff4f94
Story: 2006574
Task: 38938
CentOS 8 removes interfaces from their bridge during ifdown, and removes
the bridge if there are no interfaces left. When Kayobe bounces veth
links plugged into the bridge, it causes the bridge which has the IP we
are using for SSH to be removed. Use a dummy interface in CI to avoid
this problem.
Kolla-ansible has dropped all CentOS 7 jobs on master now, and prechecks
only allow CentOS 7 hosts. Drop all CentOS 7 jobs. We will have to run
without upgrade jobs in place until Train supports CentOS 8.
Depends-On: https://review.opendev.org/695881
Change-Id: I7c1a885b36445e33d4db1b1c8533db28a644b4a1
Story: 2006574
Task: 38870
This reverts commit a93b85ba07113a77a6c0db498a59cef3bca15b94.
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
Attempts affect pre failures. This means we can increase stability of
jobs by rejecting nodes that fail pre without failing runs at the same
time (unless we are really unlucky and hit b0rken nodes 5 times in a
row).
This change is adapted from I17b7f878c742fa8db66f738526855a02ab9f1905 in
kolla-ansible.
Change-Id: I010b2fdd7c39e3314a9e1c59072d877f635f7522
Also refactors the CI job playbooks to create the previous git repo
clones for upgrade jobs in the kayobe-base job.
Change-Id: I10c2b872887a47fab1a373fc0525dcd6fc78f7e2
This reverts commit b46b2b72bbec2a076a8175fc0aff96cbdefcabff.
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
Both docs-on-readthedocs and build-openstack-sphinx-docs contain a build
job - a different one: the current openstack-tox-docs and the obsolete
build-openstack-sphinx-docs. Remove the obsolete template and thus
avoid building docs twice for each change.
Change-Id: I358641d29304815eec6c699ae7e20da1e069443d
This was found not to work, and prevents releases from being made.
The cause of the issue is that the trigger-readthedocs-webhook job (in
project-config) is marked as 'final', meaning that a non-trusted Zuul
config source can't override its variables. Instead, you're supposed to
use the trigger-readthedocs-webhook project template, but only one
instance of this can be instantiated by design.
Let's revert to manually updating the release notes for now.
Change-Id: I271c972c7fdde23085f3026137806bb1e3048e5e
Adds a new abstract parent job for the following kayobe deploy jobs:
kayobe-overcloud-centos
kayobe-overcloud-upgrade-centos
kayobe-seed-centos
kayobe-seed-upgrade-centos
This parent includes commonly used variables, and pre-run and post-run
playbooks for preparing and executing diagnostics, plus other
initialisation.
Change-Id: I9ab89fbc49bb32d86af56d50ec3914740e65d0f8
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
Also updates the release.sh script to support tagging release candidates
and development milestones. Adds zuul configuration to trigger a
Readthedocs webhook for the release notes.
Change-Id: Ia784b34fb0b740998de72599d4921f9303e41cac
Adds the kayobe-seed-upgrade-centos job, which performs an upgrade of
the seed services from the previous release to the current release.
Change-Id: Ia3eb39cf81cb3618fd94c4456bd576b52098c946
Story: 2004308
Task: 27873
We are seeing a few overcloud deploy/upgrade jobs timing out. The jobs
appear to be progressing, so killing them isn't particularly helping.
Minimal random sampling suggests this affects the OVH cloud.
Change-Id: Ibce5457edf7a5f06e834aa587b5d4b5b6c69b8b6
tenks-deploy.sh deploys a minimal virtualized baremetal test cluster
locally. It also adds it to the overcloud-base CI job. To make the new
CI job work, we need to configure the firewall on the test machine to
allow the baremetal machines to communicate with the openstack services.
Change-Id: I7487a2606cf0bac71c5c63db41b2b518a6f6398b
Depends-On: https://review.openstack.org/#/c/615939
Depends-On: https://review.openstack.org/#/c/618003
Story: 2004297
Task: 27850
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
There is currently no coverage of upgrades in CI, which leaves us open
to regression in this infrequently tested but crucial area. This change
adds the required scripts and Zuul configuration.
A control plane is first deployed using the Kayobe stable/pike branch
and associated default configuration. The control plane is tested by
deploying then deleting a server instance. An upgrade to Queens is
performed, using the Kayobe master branch, or code in review if
applicable. The upgraded control plane is tested by deploying then
deleting a second server instance.
A workaround was required to restart the nova_compute service after the
upgrade, since the SIGHUP sent to it by Kolla Ansible during upgrade
appeared to be putting it into a degraded state.
A future improvement to this test could be to leave a server instance
running during the upgrade.
Change-Id: I0e595524e39d1131fe3ec6aaf2aeec3ff3d6a536
Story: 2003472
Task: 24732
This only affects the kayobe documentation, not the release notes.
A webhook is configured for the kayobe readthedocs project which has ID
50407.
See
http://lists.openstack.org/pipermail/openstack-dev/2018-August/132836.html
for further information.
Change-Id: Ibfccf30f51ab2f63743bf6e2b61bf9a3883cff23
Use templates instead of individual jobs.
Remoe usage of releasenotes templates since it publishes content to
docs.o.o and only official OpenStack projects can publish there, use
instead just the build jobs.
Change-Id: I3046569efd586707150fb4cc753fd55979470946