Monty Taylor | 36ddea3 | 2017-10-02 10:05:17 -0500 | [diff] [blame] | 1 | Write the local.conf file for use by devstack |
| 2 | |
| 3 | **Role Variables** |
| 4 | |
| 5 | .. zuul:rolevar:: devstack_base_dir |
| 6 | :default: /opt/stack |
| 7 | |
| 8 | The devstack base directory. |
| 9 | |
| 10 | .. zuul:rolevar:: devstack_local_conf_path |
| 11 | :default: {{ devstack_base_dir }}/devstack/local.conf |
| 12 | |
| 13 | The path of the local.conf file. |
| 14 | |
| 15 | .. zuul:rolevar:: devstack_localrc |
| 16 | :type: dict |
| 17 | |
| 18 | A dictionary of variables that should be written to the localrc |
| 19 | section of local.conf. The values (which are strings) may contain |
| 20 | bash shell variables, and will be ordered so that variables used by |
| 21 | later entries appear first. |
| 22 | |
James E. Blair | e1edde3 | 2018-03-02 15:05:14 +0000 | [diff] [blame] | 23 | As a special case, the variable ``LIBS_FROM_GIT`` will be |
| 24 | constructed automatically from the projects which appear in the |
James E. Blair | 8e5f8c2 | 2018-06-15 10:10:35 -0700 | [diff] [blame] | 25 | ``required-projects`` list defined by the job plus the project of |
| 26 | the change under test. To instruct devstack to install a library |
| 27 | from source rather than pypi, simply add that library to the job's |
| 28 | ``required-projects`` list. To override the |
| 29 | automatically-generated value, set ``LIBS_FROM_GIT`` in |
| 30 | ``devstack_localrc`` to the desired value. |
James E. Blair | e1edde3 | 2018-03-02 15:05:14 +0000 | [diff] [blame] | 31 | |
Monty Taylor | 36ddea3 | 2017-10-02 10:05:17 -0500 | [diff] [blame] | 32 | .. zuul:rolevar:: devstack_local_conf |
| 33 | :type: dict |
| 34 | |
| 35 | A complex argument consisting of nested dictionaries which combine |
| 36 | to form the meta-sections of the local_conf file. The top level is |
| 37 | a dictionary of phases, followed by dictionaries of filenames, then |
| 38 | sections, which finally contain key-value pairs for the INI file |
| 39 | entries in those sections. |
| 40 | |
| 41 | The keys in this dictionary are the devstack phases. |
| 42 | |
| 43 | .. zuul:rolevar:: [phase] |
| 44 | :type: dict |
| 45 | |
| 46 | The keys in this dictionary are the filenames for this phase. |
| 47 | |
| 48 | .. zuul:rolevar:: [filename] |
| 49 | :type: dict |
| 50 | |
| 51 | The keys in this dictionary are the INI sections in this file. |
| 52 | |
| 53 | .. zuul:rolevar:: [section] |
| 54 | :type: dict |
| 55 | |
| 56 | This is a dictionary of key-value pairs which comprise |
| 57 | this section of the INI file. |
| 58 | |
Andrea Frittoli (andreaf) | 7d44465 | 2017-12-01 17:36:38 +0000 | [diff] [blame] | 59 | .. zuul:rolevar:: devstack_base_services |
| 60 | :type: list |
| 61 | :default: {{ base_services | default(omit) }} |
| 62 | |
| 63 | A list of base services which are enabled. Services can be added or removed |
| 64 | from this list via the ``devstack_services`` variable. This is ignored if |
| 65 | ``base`` is set to ``False`` in ``devstack_services``. |
| 66 | |
Monty Taylor | 36ddea3 | 2017-10-02 10:05:17 -0500 | [diff] [blame] | 67 | .. zuul:rolevar:: devstack_services |
| 68 | :type: dict |
| 69 | |
| 70 | A dictionary mapping service names to boolean values. If the |
| 71 | boolean value is ``false``, a ``disable_service`` line will be |
| 72 | emitted for the service name. If it is ``true``, then |
Andrea Frittoli (andreaf) | 5551170 | 2017-11-30 15:49:39 +0000 | [diff] [blame] | 73 | ``enable_service`` will be emitted. All other values are ignored. |
Andrea Frittoli (andreaf) | 7d44465 | 2017-12-01 17:36:38 +0000 | [diff] [blame] | 74 | |
Andrea Frittoli (andreaf) | 5551170 | 2017-11-30 15:49:39 +0000 | [diff] [blame] | 75 | The special key ``base`` can be used to enable or disable the base set of |
| 76 | services enabled by default. If ``base`` is found, it will processed before |
| 77 | all other keys. If its value is ``False`` a ``disable_all_services`` will be |
Andrea Frittoli (andreaf) | 7d44465 | 2017-12-01 17:36:38 +0000 | [diff] [blame] | 78 | emitted; if its value is ``True`` services from ``devstack_base_services`` |
| 79 | will be emitted via ``ENABLED_SERVICES``. |
Monty Taylor | 36ddea3 | 2017-10-02 10:05:17 -0500 | [diff] [blame] | 80 | |
| 81 | .. zuul:rolevar:: devstack_plugins |
| 82 | :type: dict |
| 83 | |
| 84 | A dictionary mapping a plugin name to a git repo location. If the |
| 85 | location is a non-empty string, then an ``enable_plugin`` line will |
| 86 | be emmitted for the plugin name. |
James E. Blair | e1edde3 | 2018-03-02 15:05:14 +0000 | [diff] [blame] | 87 | |
| 88 | If a plugin declares a dependency on another plugin (via |
| 89 | ``plugin_requires`` in the plugin's settings file), this role will |
| 90 | automatically emit ``enable_plugin`` lines in the correct order. |
Luigi Toscano | 70d043d | 2019-03-12 22:25:44 +0100 | [diff] [blame] | 91 | |
| 92 | .. zuul:rolevar:: tempest_plugins |
| 93 | :type: list |
| 94 | |
| 95 | A list of tempest plugins which are installed alongside tempest. |
| 96 | |
| 97 | The list of values will be combined with the base devstack directory |
| 98 | and used to populate the ``TEMPEST_PLUGINS`` variable. If the variable |
| 99 | already exists, its value is *not* changed. |