diff options
author | Tristan Van Berkom <tristan.vanberkom@codethink.co.uk> | 2018-02-20 20:32:21 +0900 |
---|---|---|
committer | Tristan Van Berkom <tristan.vanberkom@codethink.co.uk> | 2018-03-16 17:21:15 +0900 |
commit | 9543d0784975c1623b543379207a31b118026418 (patch) | |
tree | 92ec1f68009e63c4b0001efa9131dd992794c952 /doc/source/formatintro.rst | |
parent | 3861de9bc600a4ed24b1fc3c74133848e3d2a7e7 (diff) | |
download | buildstream-9543d0784975c1623b543379207a31b118026418.tar.gz |
_project.py and docs: Move defaults into the defaults yaml file
Over time, the _project.py module has regressed into expressing
some defaults only hard coded into the python file instead of
properly exposing their default in the base configuration file
in data/projectconfig.yaml, where the default values can be observed
by users.
This patch rectifies that, and also restructures the relevant
surrounding documentation a bit.
Diffstat (limited to 'doc/source/formatintro.rst')
-rw-r--r-- | doc/source/formatintro.rst | 39 |
1 files changed, 23 insertions, 16 deletions
diff --git a/doc/source/formatintro.rst b/doc/source/formatintro.rst index 35cf980bc..a1f4e8f26 100644 --- a/doc/source/formatintro.rst +++ b/doc/source/formatintro.rst @@ -62,23 +62,27 @@ Below are the various sources of configuration which go into an element or sourc order in which they are applied. Configurations which are applied later have a higher priority and override configurations which precede them. -1. BuildStream Default Project Configuration -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The :ref:`builtin defaults <project_builtin_defaults>` provide a set of default values for *variables* -and the *environment*. +1. Builtin Defaults +~~~~~~~~~~~~~~~~~~~ +The :ref:`builtin defaults <project_builtin_defaults>` provide a set of builtin +default default values for ``project.conf``. + +The project wide defaults defined in the builtin project configuration, such as the +*variables* or *environment* sections, form the base configuration of all elements. 2. Project Configuration ~~~~~~~~~~~~~~~~~~~~~~~~ +The :ref:`project wide defaults <project_defaults>` specified in your +``project.conf`` are now applied on top of builtin defaults. -The project wide defaults in ``project.conf`` are now applied on top -of builtin defaults. If you specify anything in the *variables* or -*environment* sections in your ``project.conf`` then it will override -the builtin defaults. +Defaults such as the :ref:`variables <project_defaults_variables>` or +:ref:`environment <project_defaults_environment>` which are specified in +your ``project.conf`` override the builtin defaults for elements. -Note that plugin-specific configuration in ``project.conf`` is not applied -until later. +Note that :ref:`plugin type specific configuration <project_overrides>` +in ``project.conf`` is not applied until later. 3. Plugin Defaults @@ -100,14 +104,17 @@ Source plugins do not have a ``.yaml`` file, and do not have *variables* or 4. Project Configuration Overrides ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The ``project.conf`` now gives you another opportunity to override *variables*, *environment* -and *config* sections on a per plugin basis. +The ``project.conf`` now gives you :ref:`another opportunity <project_overrides>` to +override configuration on a per plugin basis. + +Configurations specified in the :ref:`elements <project_element_overrides>` or +:ref:`sources <project_source_overrides>` sections of the ``project.conf`` +will override the given plugin's defaults. -Configurations specified in the *elements* or *sources* sections of the ``project.conf`` -will override the given plugin's default. +In this phase, it is possible to override any configurations of a given plugin, +including configuration in element specific *config* sections. -See also :ref:`Source Overrides<project_source_overrides>` and -:ref:`Element Overrides<project_element_overrides>` +See also :ref:`project_overrides` 5. Plugin Declarations |