Add tenant project group definition example and definition in the doc

This patch aims to cover an undocumented tenant configuration
that is the projects group. In configloader.py:TenantParser._getProjects
a project group definition is allowed. A config-projects or
untrusted-projects list could be composed of dictionnaries
with a projects attribute and at least an include or exclude
attribute.

Change-Id: Ia3ca58b4186ee21fed1edd42ecf09ac4355008cc
This commit is contained in:
Fabien Boucher 2018-01-19 12:19:00 +01:00
parent 2ee1cf40d0
commit d779c9d943
1 changed files with 40 additions and 1 deletions

View File

@ -25,7 +25,7 @@ Tenant
------
A tenant is a collection of projects which share a Zuul
configuration. An example tenant definition is:
configuration. Some examples of tenant definitions are:
.. code-block:: yaml
@ -46,6 +46,27 @@ configuration. An example tenant definition is:
- project2:
exclude-unprotected-branches: true
.. code-block:: yaml
- tenant:
name: my-tenant
source:
gerrit:
config-projects:
- common-config
untrusted-projects:
- exclude:
- job
- semaphore
- project
- project-template
- nodeset
- secret
projects:
- project1
- project2:
exclude-unprotected-branches: true
.. attr:: tenant
The following attributes are supported:
@ -157,6 +178,24 @@ configuration. An example tenant definition is:
processed. Defaults to the tenant wide setting of
exclude-unprotected-branches.
.. attr:: <project-group>
The items in the list are dictionaries with the following
attributes. A **configuration items** definition is applied
to the list of projects.
.. attr:: include
A list of **configuration items** that should be loaded.
.. attr:: exclude
A list of **configuration items** that should not be loaded.
.. attr:: projects
A list of **project** items.
.. attr:: max-nodes-per-job
:default: 5