Pipelines and Parameters
Pipelines
- .. glci:pipeline:: <name>
Registers the pipeline
<name>with an index entry, and makes it the current pipeline of the document: everyglci:inputandglci:variablefollowing it belongs to it, and a role may name its parameters without the pipeline’s name.The directive writes no visible output. Placed above the page’s title, its target is the title, as a label is.
- :file: <path>
Path to the pipeline file, relative to the document. Without it, the file is
<name>.yml,<name>.yaml, or a CI/CD component’s<name>/template.yml, inglci_pipeline_directory.
.. glci:pipeline:: Package
:file: ../../templates/Package/template.yml
Package
#######
The ``Package`` component ...
A document using the pipeline is read again, when the pipeline file changed.
Inputs and Variables
Each of the two directives documents one parameter of the current pipeline, as a section titled by the parameter’s name - so it is listed in the page’s table of contents - holding a field list:
the fields read from the pipeline file: Type, Required and Default Value for an input, where
— — — —says there is no default and a multi-line default is shown as a block, and its Possible Values and Pattern if it statesoptionsorregex; Type -string- and Default Value for a variable, and its Possible Values if it statesoptions;the fields of the directive’s content, in the order written, as Possible Values, Description or Example;
without a hand-written Description, the
descriptionof the pipeline file, placed behind Type, Required, Default Value, Possible Values and Pattern.
Content after the field list follows it.
Inputs
******
.. glci:input:: package_name
:Possible Values: Any valid Python package name.
:Example: ``myPackage``
Variables
*********
.. glci:variable:: DEPLOY_ENV
- .. glci:input:: <name>
Documents the input
<name>of the current pipeline file’sspec:inputs. Its target is<Pipeline>.<name>.
- .. glci:variable:: <name>
Documents the default variable
<name>of the current pipeline file’s top-levelvariables. A variable with adescriptionis prefilled in the form running a pipeline by hand. Its target is<Pipeline>.<name>.
- .. glci:autoinputs::
Documents every input of the current pipeline file the document has no
glci:inputfor - also those whoseglci:inputfollows later in the document. An entry is what aglci:inputwithout content creates: the facts of the pipeline file and itsdescription.Inputs ****** .. glci:input:: package_name :Possible Values: Any valid Python package name. .. glci:autoinputs::
Roles
- :glci:pipeline:
- :glci:input:
- :glci:variable:
Refer to a pipeline by its name, and to a parameter as
<Pipeline>.<name>- after aglci:pipeline, the name alone refers to that pipeline’s parameter. A leading~shows only the name::glci:input:`package_name` in the page of pipeline 'Package' :glci:input:`Package.package_name` from anywhere :glci:input:`~Package.package_name` shown as 'package_name' :glci:pipeline:`Package`
A target that isn’t documented is a warning.