[release] add kolla feature flag sync scripts and update docs
Adds a script for syncing feature flags from Kolla Ansible, and updates the release docs to include this step. Also adds the inventory sync step. Change-Id: Id2bd48897d6b37a5006bad7f6e8597db20aa1b8b
This commit is contained in:
parent
0b279474e0
commit
b7287ec586
@ -55,6 +55,69 @@ Testing
|
|||||||
|
|
||||||
Test the code and fix at a minimum all critical issues.
|
Test the code and fix at a minimum all critical issues.
|
||||||
|
|
||||||
|
Synchronise with Kolla Ansible feature flags
|
||||||
|
--------------------------------------------
|
||||||
|
|
||||||
|
Clone the Kolla Ansible repository, and run the
|
||||||
|
Kayobe ``tools/kolla-feature-flags.sh`` script:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
tools/kolla-feature-flags.sh <path to kolla-ansible source>
|
||||||
|
|
||||||
|
Copy the output of the script, and replace the ``kolla_feature_flags`` list in
|
||||||
|
``ansible/roles/kolla-ansible/vars/main.yml``.
|
||||||
|
|
||||||
|
The ``kolla.yml`` configuration file should be updated to match:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
tools/feature-flags.py
|
||||||
|
|
||||||
|
Copy the output of the script, and replace the list of ``kolla_enable_*`` flags
|
||||||
|
in ``etc/kayobe/kolla.yml``.
|
||||||
|
|
||||||
|
Synchronise with Kolla Ansible inventory
|
||||||
|
----------------------------------------
|
||||||
|
|
||||||
|
Clone the Kolla Ansible repository, and copy across any relevant changes. The
|
||||||
|
Kayobe inventory is based on the ``ansible/inventory/multinode`` inventory, but
|
||||||
|
split into 3 parts - top-level, components and services.
|
||||||
|
|
||||||
|
Top level
|
||||||
|
^^^^^^^^^
|
||||||
|
|
||||||
|
The top level inventory template is
|
||||||
|
``ansible/roles/kolla-ansible/templates/overcloud-top-level.j2``. It is heavily
|
||||||
|
templated, and does not typically need to be changed. Look out for changes in
|
||||||
|
the ``multinode`` inventory before the ``[baremetal]`` group.
|
||||||
|
|
||||||
|
Components
|
||||||
|
^^^^^^^^^^
|
||||||
|
|
||||||
|
The components inventory template is
|
||||||
|
``ansible/roles/kolla-ansible/templates/overcloud-components.j2``.
|
||||||
|
|
||||||
|
This includes groups in the ``multinode`` inventory from the ``[baremetal]``
|
||||||
|
group down to the following text::
|
||||||
|
|
||||||
|
# Additional control implemented here. These groups allow you to control which
|
||||||
|
# services run on which hosts at a per-service level.
|
||||||
|
|
||||||
|
Services
|
||||||
|
^^^^^^^^
|
||||||
|
|
||||||
|
The services inventory template is
|
||||||
|
``ansible/roles/kolla-ansible/templates/overcloud-services.j2``.
|
||||||
|
|
||||||
|
This includes groups in the ``multinode`` inventory from the following text to
|
||||||
|
the end of the file::
|
||||||
|
|
||||||
|
# Additional control implemented here. These groups allow you to control which
|
||||||
|
# services run on which hosts at a per-service level.
|
||||||
|
|
||||||
|
There are some small changes in this section which should be maintained.
|
||||||
|
|
||||||
.. _update-dependencies-for-release:
|
.. _update-dependencies-for-release:
|
||||||
|
|
||||||
Update dependencies to upcoming release
|
Update dependencies to upcoming release
|
||||||
|
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
# Usage: run this script and copy the output to etc/kayobe/kolla.yml
|
# Usage: run this script and copy the output to etc/kayobe/kolla.yml
|
||||||
|
|
||||||
|
# See also: tools/kolla-feature-flags.sh
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import pathlib
|
import pathlib
|
||||||
|
|
||||||
|
21
tools/kolla-feature-flags.sh
Executable file
21
tools/kolla-feature-flags.sh
Executable file
@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# This script generates a list of Kolla Ansible feature flags to use as the
|
||||||
|
# kolla_feature_flags variable in ansible/roles/kolla-ansible/vars/main.yml.
|
||||||
|
# It should be run periodically and before a release.
|
||||||
|
|
||||||
|
# See also: tools/feature-flags.py
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -o pipefail
|
||||||
|
|
||||||
|
KOLLA_ANSIBLE_SRC=$1
|
||||||
|
KOLLA_GROUP_VARS_ALL=${KOLLA_ANSIBLE_SRC}/ansible/group_vars/all.yml
|
||||||
|
|
||||||
|
if [[ ! -f $KOLLA_GROUP_VARS_ALL ]]; then
|
||||||
|
echo "Usage: $0 <path to kolla-ansible source>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Find all feature flags, strip the enable_ prefix and value, sort.
|
||||||
|
cat ${KOLLA_GROUP_VARS_ALL} | grep '^enable_'| sed -e 's/enable_\(.*\):.*/ - \1/' | sort
|
Loading…
Reference in New Issue
Block a user