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
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
Previously we were not checking the status of created VMs in CI, meaning
that VM creation failures would be silently ignored. This change checks
the status, requiring it to be ACTIVE for a pass.
Change-Id: Ia559c81b4944c2c6c7dedfca0c6c570db390704b
Support configuring a separate tunnel network for tenant
overlay network traffic.
Change-Id: I74274823d6fe3a42aabcca00c8cd20e1abb3d219
Story: 2003054
Task: 23091
Ensure all references to the Ansible control host are worded as such, to
ensure consistency and avoid potential confusion with the OpenStack
controllers.
Change-Id: Id92e537ccbfdd55287b8eae296f649640c70ce17
We use the demo script from kolla ansible, init-runonce, to create
resources in the control plane to make it ready for booting a VM. We
then create a nova server, and wait for it to become active. We do not
currently test that the VM boots successfully by accessing it via SSH.
Change-Id: I61be554366565decd9f4ff7805a3969aa37da4b9
Adds a new CI job, kayobe-seed-centos, that deploys a single VM as a
seed host. The VM provided by Zuul is configured as the seed, rather
than a seed hypervisor that provisions a seed VM using nested virt.
This approach should be more reliable, faster, and easier to get
working, at the expense of not testing the seed hypervisor code paths.
Currently the seed services are deployed, but not tested. A future
change could test discovery and provisioning of an overcloud host using
the seed.
Change-Id: Iefe16215af6f1a9fb8ec78094cd6bd76a82a040a
Story: 2001655
Task: 6683
Due to how bash expands tildes, the `~` is treated literally here and
results in a folder in the Vagrant user's home directory called `~`.
This commit switches to using the `$HOME` environment variable instead.
The following top level scripts are added under dev/:
* overcloud-deploy.sh
* seed-deploy.sh
* seed-hypervisor-deploy.sh
Some amount of configuration is possible via dev/config.sh.
Previously, the external network carried both public API traffic and
neutron external network traffic. In some cases is it useful to separate
these networks. The public network now carries the public API traffic,
leaving the external network to carry neutron external network traffic
alone. For backwards compatibility, the public network defaults to the
external network.
Adds commands to install dependencies, and setup a virtualenv with kayobe
installed. Configuration is provided in dev/ for a single controller with
a single network.