Generate KA config before `kolla ansible run`

Supports calling custom Kolla Ansible commands directly after a
``kayobe control host bootstrap``.

Change-Id: I19f188cc002f8578618003e90c0a4a154b806e49
This commit is contained in:
Matt Crees 2023-09-25 13:55:07 +01:00
parent 691454965f
commit bc98c494ae
3 changed files with 18 additions and 1 deletions

View File

@ -436,7 +436,8 @@ function overcloud_deploy {
run_kayobe kolla ansible run certificates \ run_kayobe kolla ansible run certificates \
--kolla-extra kolla_certificates_dir=${KAYOBE_CONFIG_PATH}/kolla/certificates \ --kolla-extra kolla_certificates_dir=${KAYOBE_CONFIG_PATH}/kolla/certificates \
--kolla-extra ansible_user=$USER \ --kolla-extra ansible_user=$USER \
--kolla-extra ansible_python_interpreter=/usr/bin/python3 --kolla-extra ansible_python_interpreter=/usr/bin/python3 \
--skip-tags kolla-openstack
unset ANSIBLE_CACHE_PLUGIN unset ANSIBLE_CACHE_PLUGIN
# Add CA cert to trust store. # Add CA cert to trust store.

View File

@ -373,6 +373,11 @@ class KollaAnsibleRun(KollaAnsibleMixin, KayobeAnsibleMixin, VaultMixin,
def take_action(self, parsed_args): def take_action(self, parsed_args):
self.app.LOG.debug("Running Kolla Ansible command") self.app.LOG.debug("Running Kolla Ansible command")
# First prepare configuration.
self.generate_kolla_ansible_config(parsed_args)
# Run the kolla-ansible command.
self.run_kolla_ansible(parsed_args, parsed_args.command, self.run_kolla_ansible(parsed_args, parsed_args.command,
parsed_args.kolla_inventory_filename) parsed_args.kolla_inventory_filename)

View File

@ -0,0 +1,11 @@
---
features:
- |
``kayobe kolla ansible run`` will now generate Kolla-Ansible configuration
before the command is run. You can use ``--skip-tags kolla-openstack`` to
skip this for commands that do not require the kolla config.
upgrade:
- |
``kayobe kolla ansible run`` will now generate Kolla-Ansible configuration
before the command is run. You can use ``--skip-tags kolla-openstack`` to
skip this for commands that do not require the kolla config.