Upgrades yamllint to latest version and adots use of its strict
Fix all known problems reported by yamllint so we don't have to do
that while touching these files.
This file will write out the heat environment file
containers-prepare-parameter.yaml which will be used to do any
required image preparation during undercloud install.
The role parameter undercloud_container_images_file has been left as
an option for overriding, but is no longer required.
This change also switches the overcloud prepare to consume this file
via the command "openstack tripleo container image prepare"
It is expected that overcloud deploy will use the exact same
containers-prepare-parameter.yaml and the logic will be in place to
skip any unnecessary prepare actions. For this reason, the parameter
undercloud_docker_image_tag has been removed, and docker_image_tag is
Since this file (and the variables used to build it) will be common to
undercloud and overcloud, there has been some refactoring to move
variable defaults to extras-common.
By default, we don't need to prepare the containers anymore, since they
are now prepared in tripleoclient since:
We also introduce update_containers boolean that will be use in the near
future, so we will prepare containers, update them and use them to
deploy the undercloud and overcloud. This will be pushed later though.
Don't run undercloud containers when it's not supported or
Problem was introduced in I7d056b208d5ac0639e3277f3f4ae453a9ee639e8
This patch contains changes to deploy a containerized undercloud by
using: "openstack undercloud install --use-heat" command.
Details of the changes:
- The experimental containerized undercloud deployments driven via
`undercloud deploy` CLI is not supported anymore for Pike.
- overcloud-prep-containers: fix an jinja2 syntax issue with "is defined"
- overcloud-prep-images: "--http-boot=/var/lib/ironic/httpboot" is
added to the "openstack overcloud image upload" command.
- undercloud_rpm_dependencies parameter has been created, default to
- Remove "undercloud_tripleo_pkg" so we only use
"undercloud_rpm_dependencies". Note that "undercloud_tripleo_pkg"
was only used in this repository.
- Remove "undercloud_update_packages" option which was technical debt.
- Add "undercloud_install_cli_options" option which is used to add extra
options to "openstack undercloud install" command.
- Add "undercloud_container_images_file" which is the environment file
with default parameters for containers to use with undercloud install CLI.
- Add "undercloud_custom_env_files" which provides custom t-h-t env files
for the "undercloud install" `undercloud.conf` interface.
- Generate the undercloud prep containers script. This script will
reproduce what we expect from our users to run with
"openstack overcloud container image prepare" command, for the
- Update undercloud-deploy.sh.j2, remove tech debt and update for new
- Install heat libraries and other dependencies for containerized UC
from python-tripleoclient-heat-installer. This should go away
once python-tripleoclient installs python-tripleoclient-heat-installer
- Update undercloud-install.sh to use undercloud_install_cli_options
which is empty by default but will be used in the container-undercloud
featureset to override with the right parameters.
Partially-Implements: bp containerized-undercloud
Co-Authored-By: Bogdan Dobrelya <firstname.lastname@example.org>
Co-Authored-By: Emilien Macchi <email@example.com>
Co-Authored-By: Ian Main <firstname.lastname@example.org>
Co-Authored-By: Martin André <email@example.com>
Co-Authored-By: Wes Hayutin <firstname.lastname@example.org>
Stop making assumption about the default values from undercloud.conf.
These can change and break quickstart. This also means the generated
undercloud.conf has broken documentation the day a default value
changes, making it harder to debug failures.
Be more specific and set defaults values for boolean variables.
be updated for virt deployments using a ssl tunnel to connect.
It uses by default non-ssl ports and virthost address as the ip.
add role var undercloud_network_cidr from undercloud-deploy so it can be
reused by validate-undercloud role for the sanity check script
Removed unnecessary default from other roles.
If a conditional is set, this adds the novajoin and TLS-everywhere
bits needed in the deployment:
* It sets up novajoin in the undercloud and runs the necessary
pre-configuration bits to work with FreeIPA.
* Modifies the overcloud-full image to use the latest working version of
* Adds the necessary environment files to the overcloud deploy command.
In an effort to make more of the tripleo deployment ci more composable
it has been discussed to break out the undercloud deployment into it's
own role. There are examples where additional configuration is needed
prior to the undercloud installation such as dpdk, and installing in
other ci environments.