Skip to content

Commit e4599b9

Browse files
authored
Merge pull request #778 from stackhpc/feature/antelope/multiple-environments
Adds kolla config merging options
2 parents e19f764 + b81a2f9 commit e4599b9

File tree

2 files changed

+92
-0
lines changed

2 files changed

+92
-0
lines changed

etc/kayobe/kolla.yml

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -664,6 +664,79 @@ kolla_enable_prometheus: true
664664
#kolla_enable_watcher:
665665
#kolla_enable_zun:
666666

667+
###############################################################################
668+
# Kolla custom config generation.
669+
670+
# Feature flag to add $KAYOBE_CONFIG_PATH to the list of search paths used
671+
# when searching for Kolla custom service configuration. Only has an effect in
672+
# a multiple environments setup. This allows you to configure merging between
673+
# your environment and the base layer. Defaults to true. Set to false to for
674+
# backwards compatability.
675+
#kolla_openstack_custom_config_environment_merging_enabled:
676+
677+
# Default value for kolla_openstack_custom_config_include_globs.
678+
#kolla_openstack_custom_config_include_globs_default:
679+
680+
# Extra items to add to kolla_openstack_custom_config_include_globs_default
681+
# to produce kolla_openstack_custom_config_include_globs.
682+
#kolla_openstack_custom_config_include_globs_extra:
683+
684+
# List of dictionaries with the following keys:
685+
# glob: a glob pattern. Any files matching this pattern will be copied to the
686+
# the kolla custom config directory
687+
# enabled: boolean to disable the glob.
688+
# This determines the list of files to copy to the generated kolla config
689+
# directory.
690+
#kolla_openstack_custom_config_include_globs:
691+
692+
# Kolla config generation rules. These operate on the list of files produced by
693+
# applying kolla_openstack_custom_config_include_globs. Each of the paths in
694+
# kolla_openstack_custom_config_paths is searched for files matching one of the
695+
# globs. If a match is found, any files with the same relative path are grouped
696+
# together. The rules determine what to do with these matching files e.g copy
697+
# the most specific file without templating, merge the files with
698+
# merge_configs, etc.
699+
# List of dictionaries with the following keys:
700+
# glob: A glob matching files for this rule to match on (relative to the
701+
# search path)
702+
# priority: The rules are processed in increasing priority order with the
703+
# first rule matching taking effect.
704+
# strategy: How to process the matched file. One of copy, concat, template,
705+
# merge_configs, merge_yaml
706+
# params: List of params to pass to module enacting the strategy
707+
# Strategies:
708+
# copy: Copy most specific file to kolla config without templating
709+
# template: Template most specific file to kolla config
710+
# concat: Concatenate files and copy the result to generated kolla config
711+
# merge_configs: Use the merge_configs module to merge an ini file, before
712+
# copying to the generated kolla-config.
713+
# merge_yaml: Use the merge_yaml module to merge a file, before copying to
714+
# the generated kolla-config.
715+
#kolla_openstack_custom_config_rules:
716+
717+
# Whether to enable ini merging rules in
718+
# kolla_openstack_custom_config_rules_default. Default is true.
719+
#kolla_openstack_custom_config_merge_configs_enabled:
720+
721+
# Whether to enable yaml merging rules in
722+
# kolla_openstack_custom_config_rules_default. Default is true.
723+
#kolla_openstack_custom_config_merge_yaml_enabled:
724+
725+
# Default merge strategy for ini files in
726+
# kolla_openstack_custom_config_rules_default. Default is concat.
727+
#kolla_openstack_custom_config_ini_merge_strategy_default:
728+
729+
# Default value for kolla_openstack_custom_config_rules.
730+
#kolla_openstack_custom_config_rules_default:
731+
732+
# List of globs to filter from kolla_openstack_custom_config_rules_default.
733+
# Default is an empty list.
734+
#kolla_openstack_custom_config_rules_default_remove:
735+
736+
# Extra items to add to kolla_openstack_custom_config_rules_default
737+
# to produce kolla_openstack_custom_config_rules.
738+
#kolla_openstack_custom_config_rules_extra:
739+
667740
###############################################################################
668741
# Passwords and credentials.
669742

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
features:
3+
- |
4+
Adds kolla config merging options to the ``Kolla custom config generation``
5+
section of ``etc/kayobe/kolla.yml``.
6+
upgrade:
7+
- |
8+
`Kolla config merging is enabled by default in the Antelope release of Kayobe
9+
<https://github.com/stackhpc/kayobe/pull/174>`__.
10+
This was quite an extensive change and whilst backwards compatbility was
11+
one of the goals, there may be some situations where refactoring of your
12+
Kolla config will be necessary. Extra care should be taken if you are using
13+
the multiple environments feature. It is recommended that you carefully
14+
check the diff in the resultant Kolla configuration by following `these steps
15+
<https://stackhpc.github.io/openstack-admin-guide/working_with_kayobe.html#verifying-changes-before-applying>`__
16+
to check for missing config or duplicated config options. The
17+
``kolla_openstack_custom_config_environment_merging_enabled`` option can
18+
be set to ``False`` to revert back to the old behaviour.
19+

0 commit comments

Comments
 (0)