Having tagged plays allows us to easily run a subset of the plays for a
command, and perform targeted operations with less risk of unintended
consequences.
The tags are typically named after the playbook, although some of the
overcloud playbooks have been tagged without an overcloud- prefix.
Adds two new commands:
kayobe seed hypervisor host upgrade
kayobe seed host upgrade
These commands can be used prior to performing an upgrade, in addition
to the existing command 'kayobe overcloud host upgrade'. These commands
will ensure that if kayobe and kolla-ansible remote virtualenvs are in
use, they exist and have all dependencies installed.
We install ansible in the kolla-ansible virtualenv. By moving to a
requirements.txt file for specifying dependencies, we can use non-exact version
matching, to allow us to install the latest release in the 2.3 ansible release
series.
Adds these new commands:
kayobe baremetal compute inspect
kayobe baremetal compute manage
kayobe baremetal compute provide
These can be used to set the provision state of ironic nodes in the
baremetal-compute group.
We create a veth pair to link the Linux bridge to the neutron Open vSwitch
bridge. The MTU of the veth needs to be the largest MTU of the networks that
it will carry. When VLAN subinterfaces are used, the provisioning network may
map to the same bridge as one of the external networks, and we must use the
largest MTU of these networks.
A list of external network interfaces is generated and provided to kolla-ansible. When
the list is greater than one item, the generated list is incorrect, containing OVS
bridge names instead of external interface names. This change fixes that.
We use the group_by module to create groups based on host variables.
When the variable is a boolean, we should convert it to a bool using the
bool filter, to ensure that the group name has a consistent format.
Hosts in this group are used to build container images for both the seed and
overcloud hosts.
We also rename various overcloud image related variables from controller* to
overcloud*.
Turns out kolla_docker_registry is always defined, but is sometimes an
empty string or None. It defaults to None.
Before this change we always sent "--registry" but the kolla build CLI
would pick up our regex as the parameter associated with "--registry" so
we would get a strange image tag, and still build all the images.