mirror of
https://github.com/pyTooling/Actions.git
synced 2026-02-12 02:56:56 +08:00
Updated CompletePipeline.
This commit is contained in:
@@ -155,6 +155,7 @@ It can be used for simple Python packages as well as namespace packages.
|
||||
* :ref:`pyTooling/Actions/.github/workflows/PrepareJob.yml <JOBTMPL/PrepareJob>`
|
||||
|
||||
* :gh:`actions/checkout`
|
||||
* :gh:`GitHub command line tool 'gh' <cli/cli>`
|
||||
|
||||
* :ref:`pyTooling/Actions/.github/workflows/Parameters.yml <JOBTMPL/Parameters>`
|
||||
* :ref:`pyTooling/Actions/.github/workflows/ExtractConfiguration.yml <JOBTMPL/ExtractConfiguration>`
|
||||
@@ -185,11 +186,8 @@ It can be used for simple Python packages as well as namespace packages.
|
||||
Instantiation
|
||||
*************
|
||||
|
||||
Simple Example
|
||||
==============
|
||||
|
||||
The following instantiation example creates a job `Params` derived from job template `Parameters` version `r0`. It only
|
||||
requires a `name` parameter to create the artifact names.
|
||||
The following instantiation example creates a job ``Params`` derived from job template ``Parameters`` version ``@r5``.
|
||||
It only requires a `name` parameter to create the artifact names.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
@@ -205,394 +203,381 @@ requires a `name` parameter to create the artifact names.
|
||||
with:
|
||||
name: pyTooling
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Parameters:
|
||||
|
||||
Parameters
|
||||
**********
|
||||
Parameter Summary
|
||||
*****************
|
||||
|
||||
.. topic:: Parameter Summary
|
||||
.. rubric:: Goto :ref:`input parameters <JOBTMPL/CompletePipeline/Inputs>`
|
||||
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+=====================================================================+==========+==========+==============================================+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/package_namespace` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/package_name` | yes | string | — — — — |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/unittest_python_version` | no | string | ``'3.13'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/unittest_python_version_list` | no | string | ``'3.9 3.10 3.11 3.12 3.13'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/unittest_system_list` | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/unittest_include_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/unittest_exclude_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/unittest_disable_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/apptest_python_version` | no | string | ``'3.13'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/apptest_python_version_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/apptest_system_list` | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/apptest_include_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/apptest_exclude_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/apptest_disable_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/codecov` | no | string | ``'false'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/codacy` | no | string | ``'false'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/dorny` | no | string | ``'false'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Param/cleanup` | no | string | ``'true'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+=====================================================================+==========+==========+==============================================+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/package_namespace` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/package_name` | yes | string | — — — — |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/unittest_python_version` | no | string | ``'3.13'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/unittest_python_version_list` | no | string | ``'3.9 3.10 3.11 3.12 3.13'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/unittest_system_list` | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/unittest_include_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/unittest_exclude_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/unittest_disable_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version` | no | string | ``'3.13'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/apptest_system_list` | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/apptest_include_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/apptest_exclude_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/apptest_disable_list` | no | string | ``''`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/codecov` | no | string | ``'false'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/codacy` | no | string | ``'false'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/dorny` | no | string | ``'false'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Input/cleanup` | no | string | ``'true'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+----------------------------------------------+
|
||||
|
||||
.. topic:: :ref:`Secret Summary <JOBTMPL/CompletePipeline/Secrets>`
|
||||
.. rubric:: Goto Goto :ref:`secrets <JOBTMPL/CompletePipeline/Secrets>`
|
||||
|
||||
+-----------------------------------------------------------+----------+----------+--------------+
|
||||
| Token Name | Required | Type | Default |
|
||||
+===========================================================+==========+==========+==============+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Secret/PYPI_TOKEN` | no | string | — — — — |
|
||||
+-----------------------------------------------------------+----------+----------+--------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Secret/CODECOV_TOKEN` | no | string | — — — — |
|
||||
+-----------------------------------------------------------+----------+----------+--------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Secret/CODACY_TOKEN` | no | string | — — — — |
|
||||
+-----------------------------------------------------------+----------+----------+--------------+
|
||||
+-----------------------------------------------------------+----------+----------+--------------+
|
||||
| Token Name | Required | Type | Default |
|
||||
+===========================================================+==========+==========+==============+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Secret/PYPI_TOKEN` | no | string | — — — — |
|
||||
+-----------------------------------------------------------+----------+----------+--------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Secret/CODECOV_TOKEN` | no | string | — — — — |
|
||||
+-----------------------------------------------------------+----------+----------+--------------+
|
||||
| :ref:`JOBTMPL/CompletePipeline/Secret/CODACY_TOKEN` | no | string | — — — — |
|
||||
+-----------------------------------------------------------+----------+----------+--------------+
|
||||
|
||||
.. topic:: :ref:`Output Summary <JOBTMPL/CompletePipeline/Results>`
|
||||
.. rubric:: Goto Goto :ref:`output parameters <JOBTMPL/CompletePipeline/Outputs>`
|
||||
|
||||
This job template has no output parameters.
|
||||
This job template has no output parameters.
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/package_namespace:
|
||||
.. _JOBTMPL/CompletePipeline/Inputs:
|
||||
|
||||
Input Parameters
|
||||
****************
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Input/package_namespace:
|
||||
|
||||
package_namespace
|
||||
=================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| package_namespace | no | string | ``''`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``''``
|
||||
:Possible Values: Any valid Python namespace.
|
||||
:Description: In case the package is a Python namespace package, the name of the library's or package's namespace
|
||||
needs to be specified using this parameter. |br|
|
||||
In case of a simple Python package, this parameter must be specified as an empty string (``''``),
|
||||
which is the default.
|
||||
|
||||
In case the package is a Python namespace package, the name of the library's or package's namespace needs to be
|
||||
specified using this parameter. |br|
|
||||
In case of a simple Python package, this parameter must be specified as an empty string (``''``), which is the default.
|
||||
:Example:
|
||||
.. grid:: 2
|
||||
|
||||
.. grid:: 2
|
||||
.. grid-item::
|
||||
:columns: 5
|
||||
|
||||
.. grid-item::
|
||||
:columns: 4
|
||||
.. rubric:: Example Instantiation
|
||||
|
||||
.. rubric:: Example
|
||||
.. code-block:: yaml
|
||||
|
||||
.. code-block:: yaml
|
||||
name: Pipeline
|
||||
|
||||
jobs:
|
||||
NamespacePackage:
|
||||
uses: pyTooling/Actions/.github/workflows/CompletePipeline.yml@r5
|
||||
with:
|
||||
package_namespace: myFramework
|
||||
package_name: Extension
|
||||
jobs:
|
||||
NamespacePackage:
|
||||
uses: pyTooling/Actions/.github/workflows/CompletePipeline.yml@r5
|
||||
with:
|
||||
package_namespace: myFramework
|
||||
package_name: Extension
|
||||
|
||||
.. grid-item::
|
||||
:columns: 4
|
||||
.. grid-item::
|
||||
:columns: 4
|
||||
|
||||
.. rubric:: Example
|
||||
.. rubric:: Example Directory Structure
|
||||
|
||||
.. code-block::
|
||||
.. code-block::
|
||||
|
||||
📂ProjectRoot/
|
||||
📂myFramework/
|
||||
📂Extension/
|
||||
📦SubPackage/
|
||||
🐍__init__.py
|
||||
🐍SubModuleA.py
|
||||
🐍__init__.py
|
||||
🐍ModuleB.py
|
||||
📂ProjectRoot/
|
||||
📂myFramework/
|
||||
📂Extension/
|
||||
📦SubPackage/
|
||||
🐍__init__.py
|
||||
🐍SubModuleA.py
|
||||
🐍__init__.py
|
||||
🐍ModuleB.py
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/package_name:
|
||||
.. _JOBTMPL/CompletePipeline/Input/package_name:
|
||||
|
||||
package_name
|
||||
============
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| package_name | yes | string | — — — — |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
:Type: string
|
||||
:Required: yes
|
||||
:Default Value: — — — —
|
||||
:Possible Values: Any valid Python package name.
|
||||
:Description: In case of a simple Python package, this package's name is specified using this parameter. |br|
|
||||
In case the package is a Python namespace package, the parameter
|
||||
:ref:`JOBTMPL/CompletePipeline/Input/package_namespace` must be specified, too.
|
||||
:Example:
|
||||
.. grid:: 2
|
||||
|
||||
In case of a simple Python package, this package's name is specified using this parameter. |br|
|
||||
In case the package is a Python namespace package, the parameter :ref:`JOBTMPL/CompletePipeline/Param/package_namespace`
|
||||
must be specified, too.
|
||||
.. grid-item::
|
||||
:columns: 5
|
||||
|
||||
.. rubric:: Example
|
||||
.. rubric:: Example Instantiation
|
||||
|
||||
.. grid:: 2
|
||||
.. code-block:: yaml
|
||||
|
||||
.. grid-item::
|
||||
:columns: 4
|
||||
name: Pipeline
|
||||
|
||||
.. rubric:: Example
|
||||
jobs:
|
||||
SimplePackage:
|
||||
uses: pyTooling/Actions/.github/workflows/CompletePipeline.yml@r5
|
||||
with:
|
||||
package_name: myPackage
|
||||
|
||||
.. code-block:: yaml
|
||||
.. grid-item::
|
||||
:columns: 4
|
||||
|
||||
jobs:
|
||||
SimplePackage:
|
||||
uses: pyTooling/Actions/.github/workflows/CompletePipeline.yml@r5
|
||||
with:
|
||||
package_name: myPackage
|
||||
.. rubric:: Example Directory Structure
|
||||
|
||||
.. grid-item::
|
||||
:columns: 4
|
||||
.. code-block::
|
||||
|
||||
.. rubric:: Example
|
||||
📂ProjectRoot/
|
||||
📂myFramework/
|
||||
📦SubPackage/
|
||||
🐍__init__.py
|
||||
🐍SubModuleA.py
|
||||
🐍__init__.py
|
||||
🐍ModuleB.py
|
||||
|
||||
.. code-block::
|
||||
|
||||
📂ProjectRoot/
|
||||
📂myFramework/
|
||||
📦SubPackage/
|
||||
🐍__init__.py
|
||||
🐍SubModuleA.py
|
||||
🐍__init__.py
|
||||
🐍ModuleB.py
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/unittest_python_version:
|
||||
.. _JOBTMPL/CompletePipeline/Input/unittest_python_version:
|
||||
|
||||
unittest_python_version
|
||||
=======================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| unittest_python_version | no | string | ``'3.13'`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'3.13'``
|
||||
:Possible Values: Any valid Python version conforming to the pattern ``major.minor``.
|
||||
:Description: The default Python version used for intermediate jobs using Python tools.
|
||||
|
||||
The default Python version used for intermediate jobs using Python tools.
|
||||
|
||||
In case :ref:`JOBTMPL/CompletePipeline/Param/unittest_python_version_list` is empty, this default version is used to
|
||||
populate the ``unittest_python_version_list`` parameter.
|
||||
In case :ref:`JOBTMPL/CompletePipeline/Input/unittest_python_version_list` is empty, this default
|
||||
version is used to populate the :ref:`JOBTMPL/CompletePipeline/Input/unittest_python_version_list`
|
||||
parameter.
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/unittest_python_version_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/unittest_python_version_list:
|
||||
|
||||
unittest_python_version_list
|
||||
============================
|
||||
|
||||
+-------------------------------+----------+----------+-------------------------------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+=====================================+
|
||||
| unittest_python_version_list | no | string | ``'3.9 3.10 3.11 3.12 3.13'`` |
|
||||
+-------------------------------+----------+----------+-------------------------------------+
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'3.9 3.10 3.11 3.12 3.13'``
|
||||
:Possible Values: A space separated list of valid Python versions conforming to the pattern ``major.minor``.
|
||||
:Description: The list of space-separated Python versions used for unit testing.
|
||||
|
||||
The list of space-separated Python versions used for unit testing.
|
||||
|
||||
.. include:: ../PythonVersionList.rst
|
||||
.. include:: ../PythonVersionList.rst
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/unittest_system_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/unittest_system_list:
|
||||
|
||||
unittest_system_list
|
||||
====================
|
||||
|
||||
+-------------------------------+----------+----------+-----------------------------------------------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+=====================================================+
|
||||
| unittest_system_list | no | string | ``'ubuntu windows macos macos-arm mingw64 ucrt64'`` |
|
||||
+-------------------------------+----------+----------+-----------------------------------------------------+
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'ubuntu windows macos macos-arm mingw64 ucrt64'``
|
||||
:Possible Values: A space separated list of system names.
|
||||
:Description: The list of space-separated systems used for unit testing.
|
||||
|
||||
The list of space-separated systems used for unit testing.
|
||||
|
||||
.. include:: ../SystemList.rst
|
||||
.. include:: ../SystemList.rst
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/unittest_include_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/unittest_include_list:
|
||||
|
||||
unittest_include_list
|
||||
=====================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| unittest_include_list | no | string | ``''`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``''``
|
||||
:Possible Values: A space separated list of ``system:python_version`` tuples.
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/unittest_exclude_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/unittest_exclude_list:
|
||||
|
||||
unittest_exclude_list
|
||||
=====================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| unittest_exclude_list | no | string | ``''`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``''``
|
||||
:Possible Values: A space separated list of ``system:python_version`` tuples.
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/unittest_disable_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/unittest_disable_list:
|
||||
|
||||
unittest_disable_list
|
||||
=====================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| unittest_disable_list | no | string | ``''`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``''``
|
||||
:Possible Values: A space separated list of ``system:python_version`` tuples.
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/apptest_python_version:
|
||||
.. _JOBTMPL/CompletePipeline/Input/apptest_python_version:
|
||||
|
||||
apptest_python_version
|
||||
======================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| apptest_python_version | no | string | ``'3.13'`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'3.13'``
|
||||
:Possible Values: Any valid Python version conforming to the pattern ``major.minor``.
|
||||
:Description: The default Python version used for intermediate jobs using Python tools.
|
||||
|
||||
The name of the library or package.
|
||||
In case :ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version_list` is empty, this default
|
||||
version is used to populate the :ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version_list`
|
||||
parameter.
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/apptest_python_version_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/apptest_python_version_list:
|
||||
|
||||
apptest_python_version_list
|
||||
===========================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| apptest_python_version_list | no | string | ``''`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``''``
|
||||
:Possible Values: A space separated list of valid Python versions conforming to the pattern ``major.minor``.
|
||||
:Description: The list of space-separated Python versions used for application testing.
|
||||
|
||||
The name of the library or package.
|
||||
As this list is empty by default, the value is derived from
|
||||
:ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version`.
|
||||
|
||||
.. include:: ../PythonVersionList.rst
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/apptest_system_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/apptest_system_list:
|
||||
|
||||
apptest_system_list
|
||||
===================
|
||||
|
||||
+-------------------------------+----------+----------+--------------------------------------------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==================================================+
|
||||
| apptest_system_list | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` |
|
||||
+-------------------------------+----------+----------+--------------------------------------------------+
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'ubuntu windows macos macos-arm mingw64 ucrt64'``
|
||||
:Possible Values: A space separated list of system names.
|
||||
:Description: The list of space-separated systems used for application testing.
|
||||
|
||||
The name of the library or package.
|
||||
.. include:: ../SystemList.rst
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/apptest_include_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/apptest_include_list:
|
||||
|
||||
apptest_include_list
|
||||
====================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| apptest_include_list | no | string | ``''`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``''``
|
||||
:Possible Values: A space separated list of ``system:python_version`` tuples.
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/apptest_exclude_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/apptest_exclude_list:
|
||||
|
||||
apptest_exclude_list
|
||||
====================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| apptest_exclude_list | no | string | ``''`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``''``
|
||||
:Possible Values: A space separated list of ``system:python_version`` tuples.
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/apptest_disable_list:
|
||||
.. _JOBTMPL/CompletePipeline/Input/apptest_disable_list:
|
||||
|
||||
apptest_disable_list
|
||||
====================
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| apptest_disable_list | no | string | ``''`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``''``
|
||||
:Possible Values: A space separated list of ``system:python_version`` tuples.
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/codecov:
|
||||
.. _JOBTMPL/CompletePipeline/Input/codecov:
|
||||
|
||||
codecov
|
||||
=======
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| codecov | no | string | ``'false'`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/codacy:
|
||||
.. _JOBTMPL/CompletePipeline/Input/codacy:
|
||||
|
||||
codacy
|
||||
======
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| codacy | no | string | ``'false'`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/dorny:
|
||||
.. _JOBTMPL/CompletePipeline/Input/dorny:
|
||||
|
||||
dorny
|
||||
=====
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| dorny | no | string | ``'false'`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Param/cleanup:
|
||||
.. _JOBTMPL/CompletePipeline/Input/cleanup:
|
||||
|
||||
cleanup
|
||||
=======
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| cleanup | no | string | ``'true'`` |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: ``'true'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description:
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Secrets:
|
||||
@@ -602,18 +587,16 @@ Secrets
|
||||
|
||||
The workflow template uses the following secrets to publish results to other services.
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Secret/PYPI_TOKEN:
|
||||
|
||||
PYPI_TOKEN
|
||||
==========
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Token Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| PYPI_TOKEN | no | string | — — — — |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: — — — —
|
||||
:Description: The token to publish and upload packages on `PyPI <https://pypi.org/>`__.
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Secret/CODECOV_TOKEN:
|
||||
@@ -621,13 +604,10 @@ The name of the library or package.
|
||||
CODECOV_TOKEN
|
||||
=============
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Token Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| CODECOV_TOKEN | no | string | — — — — |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
|
||||
The name of the library or package.
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: — — — —
|
||||
:Description: The token to publish code coverage and unit test results to `CodeCov <https://about.codecov.io//>`__.
|
||||
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Secret/CODACY_TOKEN:
|
||||
@@ -635,17 +615,15 @@ The name of the library or package.
|
||||
CODACY_TOKEN
|
||||
============
|
||||
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
| Token Name | Required | Type | Default |
|
||||
+===============================+==========+==========+==============+
|
||||
| CODACY_TOKEN | no | string | — — — — |
|
||||
+-------------------------------+----------+----------+--------------+
|
||||
:Type: string
|
||||
:Required: no
|
||||
:Default Value: — — — —
|
||||
:Description: The token to publish code coverage results to `Codacy <https://www.codacy.com/>`__.
|
||||
|
||||
The name of the library or package.
|
||||
|
||||
.. _JOBTMPL/CompletePipeline/Results:
|
||||
.. _JOBTMPL/CompletePipeline/Outputs:
|
||||
|
||||
Results
|
||||
Outputs
|
||||
*******
|
||||
|
||||
This job template has no output parameters.
|
||||
|
||||
@@ -25,7 +25,7 @@ The job template generates various output parameters derived from
|
||||
|
||||
Due to GitHub Action's broken type system and missing implicit type conversions in YAML files, *boolean* values need
|
||||
to be returned as *string* values otherwise type compatibility and comparison are broken. This also requires all
|
||||
inputs to be *string* parameters, otherwise an step's, job's or template's output cannot be assigned to a template's
|
||||
inputs to be *string* parameters, otherwise step's, job's or template's output cannot be assigned to a template's
|
||||
input.
|
||||
|
||||
**Problems:**
|
||||
@@ -39,6 +39,11 @@ The job template generates various output parameters derived from
|
||||
comparison will not work as expected. Either the comparison works with ``inputs.param == false`` for the default
|
||||
value, **or** it works with a value from ``${{ needs }}`` context, which is a string ``inputs.param == 'false'``.
|
||||
|
||||
.. topic:: Job Execution
|
||||
|
||||
.. image:: ../../_static/pyTooling-Actions-PrepareJob.png
|
||||
:width: 600px
|
||||
|
||||
.. topic:: Dependencies
|
||||
|
||||
* :gh:`actions/checkout`
|
||||
@@ -50,10 +55,10 @@ The job template generates various output parameters derived from
|
||||
Instantiation
|
||||
*************
|
||||
|
||||
Simple Example
|
||||
==============
|
||||
|
||||
The following instantiation example creates a job `Params` derived from job template `PrepareJob` version `r5`.
|
||||
The following instantiation example creates a job ``Prepare`` derived from job template ``PrepareJob`` version ``@r5``.
|
||||
In a default usecase, no input parameters need to be specified for the job template assuming a main-branch and
|
||||
release-branch called ``main``, a development-branch called ``dev``, as well as semantic versioning for tags and
|
||||
pull-request titles.
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
@@ -75,69 +80,84 @@ The following instantiation example creates a job `Params` derived from job temp
|
||||
with:
|
||||
version: ${{ needs.Prepare.outputs.version }}
|
||||
|
||||
.. seealso::
|
||||
|
||||
:ref:`JOBTMPL/TagReleaseCommit`
|
||||
``PrepareJob`` is usualy used to identify if a pipeline's commit is a merge commit created by a pull-request. If
|
||||
so, this commit can be tagged automatically to trigger a release pipeline (tag pipeline) for the same commit
|
||||
resulting in a full release (PyPI, GitHub Pages, GitHub Release, ...).
|
||||
:ref:`JOBTMPL/PublishReleaseNotes`
|
||||
``PrepareJob`` is usually used to identify if a tag pipeline is a release pipeline.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Parameters:
|
||||
|
||||
Parameters
|
||||
**********
|
||||
Parameter Summary
|
||||
*****************
|
||||
|
||||
.. topic:: Parameter Summary
|
||||
.. rubric:: Goto :ref:`input parameters <JOBTMPL/PrepareJob/Inputs>`
|
||||
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+=====================================================================+==========+==========+===================================================================+
|
||||
| :ref:`JOBTMPL/PrepareJob/Param/ubuntu_image` | no | string | ``'ubuntu-24.04'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Param/main_branch` | no | string | ``'main'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Param/development_branch` | no | string | ``'dev'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Param/release_branch` | no | string | ``'main'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Param/nightly_tag_pattern` | no | string | ``'nightly'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Param/release_tag_pattern` | no | string | ``'(v|r)?[0-9]+(\.[0-9]+){0,2}(-(dev|alpha|beta|rc)([0-9]*))?'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| Parameter Name | Required | Type | Default |
|
||||
+=====================================================================+==========+==========+===================================================================+
|
||||
| :ref:`JOBTMPL/PrepareJob/Input/ubuntu_image` | no | string | ``'ubuntu-24.04'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Input/main_branch` | no | string | ``'main'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Input/development_branch` | no | string | ``'dev'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Input/release_branch` | no | string | ``'main'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Input/nightly_tag_pattern` | no | string | ``'nightly'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Input/release_tag_pattern` | no | string | ``'(v|r)?[0-9]+(\.[0-9]+){0,2}(-(dev|alpha|beta|rc)([0-9]*))?'`` |
|
||||
+---------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+
|
||||
|
||||
.. topic:: :ref:`Secret Summary <JOBTMPL/PrepareJob/Secrets>`
|
||||
.. rubric:: Goto Goto :ref:`secrets <JOBTMPL/PrepareJob/Secrets>`
|
||||
|
||||
This job template needs no secrets.
|
||||
This job template needs no secrets.
|
||||
|
||||
.. topic:: :ref:`Output Summary <JOBTMPL/PrepareJob/Results>`
|
||||
.. rubric:: Goto Goto :ref:`output parameters <JOBTMPL/PrepareJob/Outputs>`
|
||||
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| Result Name | Type | Description |
|
||||
+=====================================================================+==========+===================================================================+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/on_main_branch` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/on_dev_branch` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/on_release_branch` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/is_regular_commit` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/is_merge_commit` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/is_release_commit` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/is_nightly_tag` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/is_release_tag` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/ref_kind` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/branch` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/tag` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/version` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/pr_title` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Result/pr_number` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| Result Name | Type | Description |
|
||||
+=====================================================================+==========+===================================================================+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/on_main_branch` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/on_dev_branch` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/on_release_branch` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/is_regular_commit` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/is_merge_commit` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/is_release_commit` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/is_nightly_tag` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/is_release_tag` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/ref_kind` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/branch` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/tag` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/version` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/pr_title` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
| :ref:`JOBTMPL/PrepareJob/Output/pr_number` | string | |
|
||||
+---------------------------------------------------------------------+----------+-------------------------------------------------------------------+
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Param/ubuntu_image:
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Inputs:
|
||||
|
||||
Input Parameters
|
||||
****************
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Input/ubuntu_image:
|
||||
|
||||
ubuntu_image
|
||||
============
|
||||
@@ -149,7 +169,7 @@ ubuntu_image
|
||||
:Description: Name of the Ubuntu image used to run this job.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Param/main_branch:
|
||||
.. _JOBTMPL/PrepareJob/Input/main_branch:
|
||||
|
||||
main_branch
|
||||
===========
|
||||
@@ -161,7 +181,7 @@ main_branch
|
||||
:Description: Name of the main branch.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Param/development_branch:
|
||||
.. _JOBTMPL/PrepareJob/Input/development_branch:
|
||||
|
||||
development_branch
|
||||
==================
|
||||
@@ -173,7 +193,7 @@ development_branch
|
||||
:Description: Name of the development branch.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Param/release_branch:
|
||||
.. _JOBTMPL/PrepareJob/Input/release_branch:
|
||||
|
||||
release_branch
|
||||
==============
|
||||
@@ -185,7 +205,7 @@ release_branch
|
||||
:Description: Name of the branch containing releases.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Param/nightly_tag_pattern:
|
||||
.. _JOBTMPL/PrepareJob/Input/nightly_tag_pattern:
|
||||
|
||||
nightly_tag_pattern
|
||||
===================
|
||||
@@ -199,7 +219,7 @@ nightly_tag_pattern
|
||||
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Param/release_tag_pattern:
|
||||
.. _JOBTMPL/PrepareJob/Input/release_tag_pattern:
|
||||
|
||||
release_tag_pattern
|
||||
===================
|
||||
@@ -232,12 +252,12 @@ Secrets
|
||||
This job template needs no secrets.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Results:
|
||||
.. _JOBTMPL/PrepareJob/Outputs:
|
||||
|
||||
Results
|
||||
Outputs
|
||||
*******
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/on_main_branch:
|
||||
.. _JOBTMPL/PrepareJob/Output/on_main_branch:
|
||||
|
||||
on_main_branch
|
||||
==============
|
||||
@@ -245,11 +265,11 @@ on_main_branch
|
||||
:Type: string
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`main branch <JOBTMPL/PrepareJob/Param/main_branch>`,
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`main branch <JOBTMPL/PrepareJob/Input/main_branch>`,
|
||||
otherwise return ``'false'``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/on_dev_branch:
|
||||
.. _JOBTMPL/PrepareJob/Output/on_dev_branch:
|
||||
|
||||
on_dev_branch
|
||||
=============
|
||||
@@ -257,11 +277,11 @@ on_dev_branch
|
||||
:Type: string
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`development branch <JOBTMPL/PrepareJob/Param/development_branch>`,
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`development branch <JOBTMPL/PrepareJob/Input/development_branch>`,
|
||||
otherwise return ``'false'``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/on_release_branch:
|
||||
.. _JOBTMPL/PrepareJob/Output/on_release_branch:
|
||||
|
||||
on_release_branch
|
||||
=================
|
||||
@@ -269,11 +289,11 @@ on_release_branch
|
||||
:Type: string
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`release branch <JOBTMPL/PrepareJob/Param/release_branch>`,
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`release branch <JOBTMPL/PrepareJob/Input/release_branch>`,
|
||||
otherwise return ``'false'``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/is_regular_commit:
|
||||
.. _JOBTMPL/PrepareJob/Output/is_regular_commit:
|
||||
|
||||
is_regular_commit
|
||||
=================
|
||||
@@ -281,11 +301,11 @@ is_regular_commit
|
||||
:Type: string
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is not a :ref:`merge commit <JOBTMPL/PrepareJob/Result/is_merge_commit>`
|
||||
nor :ref:`release commit <JOBTMPL/PrepareJob/Result/is_release_commit>`, otherwise return ``'false'``.
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is not a :ref:`merge commit <JOBTMPL/PrepareJob/Output/is_merge_commit>`
|
||||
nor :ref:`release commit <JOBTMPL/PrepareJob/Output/is_release_commit>`, otherwise return ``'false'``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/is_merge_commit:
|
||||
.. _JOBTMPL/PrepareJob/Output/is_merge_commit:
|
||||
|
||||
is_merge_commit
|
||||
===============
|
||||
@@ -293,12 +313,12 @@ is_merge_commit
|
||||
:Type: string
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`main branch <JOBTMPL/PrepareJob/Param/main_branch>`
|
||||
or :ref:`development branch <JOBTMPL/PrepareJob/Param/development_branch>` and has more than one
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`main branch <JOBTMPL/PrepareJob/Input/main_branch>`
|
||||
or :ref:`development branch <JOBTMPL/PrepareJob/Input/development_branch>` and has more than one
|
||||
parent (merge commit), otherwise return ``'false'``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/is_release_commit:
|
||||
.. _JOBTMPL/PrepareJob/Output/is_release_commit:
|
||||
|
||||
is_release_commit
|
||||
=================
|
||||
@@ -306,11 +326,11 @@ is_release_commit
|
||||
:Type: string
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`release branch <JOBTMPL/PrepareJob/Param/release_branch>`
|
||||
:Description: Returns ``'true'`` if the pipeline's commit is on :ref:`release branch <JOBTMPL/PrepareJob/Input/release_branch>`
|
||||
and has more than one parent (merge commit), otherwise return ``'false'``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/is_nightly_tag:
|
||||
.. _JOBTMPL/PrepareJob/Output/is_nightly_tag:
|
||||
|
||||
is_nightly_tag
|
||||
==============
|
||||
@@ -318,12 +338,12 @@ is_nightly_tag
|
||||
:Type: string
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns ``'true'`` if the pipeline is a tag pipeline for a commit on :ref:`release branch <JOBTMPL/PrepareJob/Param/release_branch>`
|
||||
and the tag's name matches the :ref:`nightly tag pattern <JOBTMPL/PrepareJob/Param/nightly_tag_pattern>`,
|
||||
:Description: Returns ``'true'`` if the pipeline is a tag pipeline for a commit on :ref:`release branch <JOBTMPL/PrepareJob/Input/release_branch>`
|
||||
and the tag's name matches the :ref:`nightly tag pattern <JOBTMPL/PrepareJob/Input/nightly_tag_pattern>`,
|
||||
otherwise return ``'false'``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/is_release_tag:
|
||||
.. _JOBTMPL/PrepareJob/Output/is_release_tag:
|
||||
|
||||
is_release_tag
|
||||
==============
|
||||
@@ -331,12 +351,12 @@ is_release_tag
|
||||
:Type: string
|
||||
:Default Value: ``'false'``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns ``'true'`` if the pipeline is a tag pipeline for a commit on :ref:`release branch <JOBTMPL/PrepareJob/Param/release_branch>`
|
||||
and the tag's name matches the :ref:`release tag pattern <JOBTMPL/PrepareJob/Param/release_tag_pattern>`,
|
||||
:Description: Returns ``'true'`` if the pipeline is a tag pipeline for a commit on :ref:`release branch <JOBTMPL/PrepareJob/Input/release_branch>`
|
||||
and the tag's name matches the :ref:`release tag pattern <JOBTMPL/PrepareJob/Input/release_tag_pattern>`,
|
||||
otherwise return ``'false'``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/ref_kind:
|
||||
.. _JOBTMPL/PrepareJob/Output/ref_kind:
|
||||
|
||||
ref_kind
|
||||
========
|
||||
@@ -347,12 +367,12 @@ ref_kind
|
||||
:Description: Returns ``'branch'`` if pipeline's commit is on a branch or returns ``'tag'`` if the pipeline runs for
|
||||
a tagged commit, otherwise returns ``'unknown'`` in case of an internal error.
|
||||
|
||||
If the kind is a branch, the branch name is available in the job's :ref:`JOBTMPL/PrepareJob/Result/branch`
|
||||
If the kind is a branch, the branch name is available in the job's :ref:`JOBTMPL/PrepareJob/Output/branch`
|
||||
result. |br|
|
||||
If the kind is a tag, the tags name is available in the job's :ref:`JOBTMPL/PrepareJob/Result/tag`
|
||||
If the kind is a tag, the tags name is available in the job's :ref:`JOBTMPL/PrepareJob/Output/tag`
|
||||
result. |br|
|
||||
Moreover, if the tag matches the :ref:`JOBTMPL/PrepareJob/Param/release_tag_pattern`, the extracted
|
||||
version is available in the job's :ref:`JOBTMPL/PrepareJob/Result/version` result.
|
||||
Moreover, if the tag matches the :ref:`JOBTMPL/PrepareJob/Input/release_tag_pattern`, the extracted
|
||||
version is available in the job's :ref:`JOBTMPL/PrepareJob/Output/version` result.
|
||||
|
||||
.. note::
|
||||
|
||||
@@ -361,7 +381,7 @@ ref_kind
|
||||
and derives if a pipeline runs for a commit on a branch or a tagged commit.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/branch:
|
||||
.. _JOBTMPL/PrepareJob/Output/branch:
|
||||
|
||||
branch
|
||||
======
|
||||
@@ -369,10 +389,10 @@ branch
|
||||
:Type: string
|
||||
:Default Value: ``''``
|
||||
:Possible Values: Any valid branch name.
|
||||
:Description: Returns the branch's name the pipeline's commit is associated to, if :ref:`JOBTMPL/PrepareJob/Result/ref_kind`
|
||||
:Description: Returns the branch's name the pipeline's commit is associated to, if :ref:`JOBTMPL/PrepareJob/Output/ref_kind`
|
||||
is ``'branch'``, otherwise returns an empty string ``''``.
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/tag:
|
||||
.. _JOBTMPL/PrepareJob/Output/tag:
|
||||
|
||||
tag
|
||||
===
|
||||
@@ -380,28 +400,28 @@ tag
|
||||
:Type: string
|
||||
:Default Value: ``''``
|
||||
:Possible Values: Any valid tag name.
|
||||
:Description: Returns the tag's name the pipeline's commit is associated to, if :ref:`JOBTMPL/PrepareJob/Result/ref_kind`
|
||||
:Description: Returns the tag's name the pipeline's commit is associated to, if :ref:`JOBTMPL/PrepareJob/Output/ref_kind`
|
||||
is ``'tag'``, otherwise returns an empty string ``''``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/version:
|
||||
.. _JOBTMPL/PrepareJob/Output/version:
|
||||
|
||||
version
|
||||
=======
|
||||
|
||||
:Type: string
|
||||
:Default Value: ``''``
|
||||
:Possible Values: Any valid version matching :ref:`JOBTMPL/PrepareJob/Param/release_tag_pattern`.
|
||||
:Possible Values: Any valid version matching :ref:`JOBTMPL/PrepareJob/Input/release_tag_pattern`.
|
||||
:Description: In case the pipeline runs for a tag, it returns the tag's name, if the name matches
|
||||
:ref:`JOBTMPL/PrepareJob/Param/release_tag_pattern`, otherwise returns an empty string ``''``. |br|
|
||||
:ref:`JOBTMPL/PrepareJob/Input/release_tag_pattern`, otherwise returns an empty string ``''``. |br|
|
||||
In case the pipeline runs for a branch, then the commit is checked if it's a
|
||||
:ref:`merge commit <JOBTMPL/PrepareJob/Result/is_merge_commit>` and corresponding pull-request (PR) is
|
||||
:ref:`merge commit <JOBTMPL/PrepareJob/Output/is_merge_commit>` and corresponding pull-request (PR) is
|
||||
searched. When a matching PR can be located and it's title matches
|
||||
:ref:`JOBTMPL/PrepareJob/Param/release_tag_pattern`, then this title is returned as a version,
|
||||
:ref:`JOBTMPL/PrepareJob/Input/release_tag_pattern`, then this title is returned as a version,
|
||||
otherwise it returns an empty string ``''``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/pr_title:
|
||||
.. _JOBTMPL/PrepareJob/Output/pr_title:
|
||||
|
||||
pr_title
|
||||
========
|
||||
@@ -410,12 +430,12 @@ pr_title
|
||||
:Default Value: ``''``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns the associated pull-request's title, if the pipeline's commit is a
|
||||
:ref:`merge commit <JOBTMPL/PrepareJob/Result/is_merge_commit>` and the located pull-request's title
|
||||
for this commit matches :ref:`JOBTMPL/PrepareJob/Param/release_tag_pattern`, otherwise returns an
|
||||
:ref:`merge commit <JOBTMPL/PrepareJob/Output/is_merge_commit>` and the located pull-request's title
|
||||
for this commit matches :ref:`JOBTMPL/PrepareJob/Input/release_tag_pattern`, otherwise returns an
|
||||
empty string ``''``.
|
||||
|
||||
|
||||
.. _JOBTMPL/PrepareJob/Result/pr_number:
|
||||
.. _JOBTMPL/PrepareJob/Output/pr_number:
|
||||
|
||||
pr_number
|
||||
=========
|
||||
@@ -424,6 +444,6 @@ pr_number
|
||||
:Default Value: ``''``
|
||||
:Possible Values: ``'true'``, ``'false'``
|
||||
:Description: Returns the associated pull-request's number, if the pipeline's commit is a
|
||||
:ref:`merge commit <JOBTMPL/PrepareJob/Result/is_merge_commit>` and the located pull-request's title
|
||||
for this commit matches :ref:`JOBTMPL/PrepareJob/Param/release_tag_pattern`, otherwise returns an
|
||||
:ref:`merge commit <JOBTMPL/PrepareJob/Output/is_merge_commit>` and the located pull-request's title
|
||||
for this commit matches :ref:`JOBTMPL/PrepareJob/Input/release_tag_pattern`, otherwise returns an
|
||||
empty string ``''``.
|
||||
|
||||
@@ -4,7 +4,8 @@ Overview
|
||||
########
|
||||
|
||||
The following list categorizes all pre-defined job templates, which can be instantiated in a pipeline (GitHub Action
|
||||
Workflow). They can also serve as an example for creating or deriving own job templates.
|
||||
Workflow). They can also serve as an example for creating or deriving own job templates. All job templates are highly
|
||||
customizable.
|
||||
|
||||
.. include:: Templates.rst
|
||||
|
||||
@@ -47,9 +48,44 @@ Some templates might provide output parameters, which can be used in dependent j
|
||||
<Secret2>: ${{ secrets.<SecretVariable2> }}
|
||||
|
||||
<OtherInstance>:
|
||||
...
|
||||
needs:
|
||||
- <InstanceName>
|
||||
...
|
||||
with:
|
||||
<Param1>: ${{ needs.<InstanceName>.outputs.<Output1> }}
|
||||
|
||||
|
||||
.. _JOBTMPL/CommonParameters:
|
||||
|
||||
Common Parameters
|
||||
*****************
|
||||
|
||||
All jobs specified in the templates are executed in
|
||||
`images provided by GitHub Actions <https://github.com/actions/runner-images?tab=readme-ov-file#available-images>`__.
|
||||
Except for platform specific jobs (e.g., unit testing on macOS, Ubuntu, Windows Server, ...) allmost all other jobs use
|
||||
an Ubuntu image. This image can be configured by the job template input parameter :ref:`JOBTMPL/Common/Input/ubuntu_image`.
|
||||
Similarly, many jobs rely on Python scripting and therefore need a Python version, which can be configured via
|
||||
:ref:`JOBTMPL/Common/Input/python_version`.
|
||||
|
||||
.. _JOBTMPL/Common/Input/ubuntu_image:
|
||||
|
||||
ubuntu_image
|
||||
============
|
||||
|
||||
:Type: string
|
||||
:Required: usually no
|
||||
:Default Value: ``'ubuntu-24.04'``
|
||||
:Possible Values: See `actions/runner-images - Available Images <https://github.com/actions/runner-images?tab=readme-ov-file#available-images>`__
|
||||
:Description: Name of the Ubuntu image used to run a job.
|
||||
|
||||
|
||||
.. _JOBTMPL/Common/Input/python_version:
|
||||
|
||||
python_version
|
||||
==============
|
||||
|
||||
:Type: string
|
||||
:Required: usually no
|
||||
:Default Value: ``'3.13'``
|
||||
:Possible Values: See `actions/runner-images - Available Images <https://github.com/actions/runner-images?tab=readme-ov-file#available-images>`__
|
||||
:Description: Python version used to run Python scripts in a job.
|
||||
|
||||
BIN
doc/_static/pyTooling-Actions-PrepareJob.png
vendored
Normal file
BIN
doc/_static/pyTooling-Actions-PrepareJob.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 124 KiB |
Reference in New Issue
Block a user