Python Jobs
- tox
Base job containing setup and teardown for tox-based test jobs.
This performs basic host and general project setup tasks common to all tox unit test jobs.
Responds to these variables:
-
tox_envlist
Use the specified tox environments (
ALL
selects all).
-
tox_environment
Type: dict Environment variables to pass in to the tox run.
-
tox_extra_args
String containing extra arguments to append to the tox command line.
-
tox_constraints_file
Path to a pip constraints file. Will be provided to tox in the TOX_CONSTRAINTS_FILE environment variable if it exists.
-
tox_install_siblings
Default:true
Override tox requirements that have corresponding zuul git repos on the node by installing the git versions into the tox virtualenv.
-
tox_install_bindep
Default:true
Whether or not to run the binary dependencies detection and installation with bindep.
-
tox_envlist
- tox-fips
Base job containing setup and teardown for fips and tox-based test jobs.
This performs basic host and general project setup tasks common to all tox unit test jobs related to fips.
Responds to these variables:
-
tox_envlist
Use the specified tox environments (
ALL
selects all).
-
tox_environment
Type: dict Environment variables to pass in to the tox run.
-
tox_extra_args
String containing extra arguments to append to the tox command line.
-
tox_constraints_file
Path to a pip constraints file. Will be provided to tox in the TOX_CONSTRAINTS_FILE environment variable if it exists.
-
tox_install_siblings
Default:true
Override tox requirements that have corresponding zuul git repos on the node by installing the git versions into the tox virtualenv.
-
tox_install_bindep
Default:true
Whether or not to run the binary dependencies detection and installation with bindep.
-
tox_envlist
- tox-py27
Run unit tests for a Python project under cPython version 2.7.
Uses tox with the
py27
environment.
- tox-py36
Run unit tests for a Python project under cPython version 3.6.
Uses tox with the
py36
environment.
- tox-py37
Run unit tests for a Python project under cPython version 3.7.
Uses tox with the
py37
environment.
- tox-py38
Run unit tests for a Python project under cPython version 3.8.
Uses tox with the
py38
environment.
- tox-py39
Run unit tests for a Python project under cPython version 3.9.
Uses tox with the
py39
environment.
- tox-py310
Run unit tests for a Python project under cPython version 3.10.
Uses tox with the
py310
environment.
- tox-py311
Run unit tests for a Python project under cPython version 3.11.
Uses tox with the
py311
environment.
- tox-py312
Run unit tests for a Python project under cPython version 3.12.
Uses tox with the
py312
environment.
- tox-docs
Run documentation unit tests.
Uses tox with the
docs
environment.
- tox-linters
Runs code linting tests.
Uses tox with the
linters
environment.
- tox-molecule
Runs Ansible molecule testing on a system where docker is available.
Uses tox with the
molecule
environment.
- tox-pep8
Runs code pep8 tests.
Uses tox with the
pep8
environment.
- tox-cover
Run code coverage tests.
Uses tox with the
cover
environment.
- tox-bashate
Run bashate tests.
Uses tox with the
bashate
environment.
- tox-nodejs-npm
Run tests using tox but with the javascript toolchain installed and available as well. A combination of the tox and nodejs-npm jobs. By default will run npm before running the tox environment listed.
Responds to these variables:
-
tox_envlist
Use the specified tox environments (
ALL
selects all).
-
tox_environment
Type: dict Environment variables to pass in to the tox run.
-
tox_extra_args
String containing extra arguments to append to the tox command line.
-
tox_constraints_file
Path to a pip constraints file. Will be provided to tox in the TOX_CONSTRAINTS_FILE environment variable if it exists.
-
tox_install_siblings
Default:true
Override tox requirements that have corresponding zuul git repos on the node by installing the git versions into the tox virtualenv.
-
npm_command
Default:build
Command to pass to npm.
-
node_version
Default:14
The version of Node to use.
-
javascript_content_dir
Default:dist
Directory, relative to zuul_work_dir, holding build content.
-
zuul_work_dir
Default:{{ zuul.project.src_dir }}
Path to operate in.
-
tox_envlist
- nox
Base job containing setup and teardown for nox-based test jobs.
This performs basic host and general project setup tasks common to all nox unit test jobs.
Responds to these variables:
-
nox_session
Use the specified nox sessions
-
nox_keyword
Use the specified nox keyword
-
nox_tag
Use the specified nox tag
-
nox_force_python
Force nox to run the selected sessions under this version of python.
-
nox_config_file
Override the default noxfile.py configuration path.
-
nox_environment
Type: dict Environment variables to pass in to the nox run. Nox behaves differently when CI=1 is set. Consider setting this if you override the role defaults.
-
nox_extra_args
String containing extra arguments to append to the nox command line.
-
nox_constraints_file
Path to a pip constraints file. Will be provided to nox in the NOX_CONSTRAINTS_FILE environment variable if it exists.
-
nox_install_siblings
Default:true
Override nox requirements that have corresponding zuul git repos on the node by installing the git versions into the nox virtualenv.
-
nox_install_bindep
Default:true
Whether or not to run the binary dependencies detection and installation with bindep.
-
nox_session
- nox-py36
Run unit tests for a Python project under cPython version 3.6.
Uses nox with the
test
keyword forcing python 3.6.
- nox-py37
Run unit tests for a Python project under cPython version 3.7.
Uses nox with the
test
keyword forcing python 3.7.
- nox-py38
Run unit tests for a Python project under cPython version 3.8.
Uses nox with the
test
keyword forcing python 3.8.
- nox-py39
Run unit tests for a Python project under cPython version 3.9.
Uses nox with the
test
keyword forcing python 3.9.
- nox-py310
Run unit tests for a Python project under cPython version 3.10.
Uses nox with the
test
keyword forcing python 3.10.
- nox-py311
Run unit tests for a Python project under cPython version 3.11.
Uses nox with the
test
keyword forcing python 3.11.
- nox-py312
Run unit tests for a Python project under cPython version 3.12.
Uses nox with the
test
keyword forcing python 3.12.
- nox-docs
Run documentation unit tests.
Uses nox with the
docs
keyword.
- nox-linters
Runs code linting tests.
Uses nox with the
linters
keyword.
- nox-cover
Run code coverage tests.
Uses nox with the
cover
keyword.
- build-python-release
Build a source tarball and a bdist wheel for uploading.
- python-upload-pypi
Generate and upload a python source tarball and binary wheel
Requires a variable
pypi_info
be set which is a dict containing authentication values. See https://zuul-ci.org/docs/zuul-jobs/python-roles.html#role-upload-pypi
- build-sphinx-docs
Build documentation using Sphinx
Additional requirements can be provided in a project in either the file
doc/requirements.txt
ortest-requirements.txt
. (The first file found in that order will be the one used) Non-python distro requirements can be specified inbindep.txt
using thedoc
tag.Runs whereto https://docs.openstack.org/whereto/latest/ after the build if it is installed.
Responds to these variables:
-
constraints_file
Optional path to a pip constraints file for installing python libraries.
-
sphinx_python
Default:python2
Version of python to use, either
python2
orpython3
.
-
zuul_work_dir
Default:{{ zuul.project.src_dir }}
Directory to operate in.
-
constraints_file
- build-reno-releasenotes
Build releasenotes using reno
Additional requirements can be provided in a project in either the file
doc/requirements.txt
ortest-requirements.txt
. (The first file found in that order will be the one used) Non-python distro requirements can be specified inbindep.txt
using thedoc
tag.Responds to these variables:
-
constraints_file
Optional path to a pip constraints file for installing python libraries.
-
sphinx_python
Default:python2
Version of python to use, either
python2
orpython3
.
-
zuul_work_dir
Default:{{ zuul.project.src_dir }}
Directory to operate in.
-
constraints_file