157 lines
3.8 KiB
YAML
157 lines
3.8 KiB
YAML
# TODO: further parameterize the base job and roles so that it can
|
|
# include log publishing and nodeset defaults once Zuul supports
|
|
# site-local variables.
|
|
- job:
|
|
name: base
|
|
description: |
|
|
A sample base job.
|
|
|
|
Zuul installations should override this job using the project
|
|
"shadow" functionality.
|
|
|
|
All jobs ultimately inherit from this. It runs a pre-playbook
|
|
which copies all of the job's prepared git repos on to all of
|
|
the nodes in the nodeset and sets the default timeout value.
|
|
|
|
Zuul installations should add a log publishing post playbook to
|
|
this job, and may wish to supply a default nodeset and adjust
|
|
the timeout values.
|
|
pre-run: playbooks/base/pre
|
|
post-run: playbooks/base/post-ssh
|
|
roles:
|
|
- zuul: openstack-infra/zuul-jobs
|
|
timeout: 1800
|
|
|
|
- job:
|
|
name: unittests
|
|
parent: base
|
|
description: |
|
|
Perform setup common to all unit test jobs.
|
|
|
|
This performs basic host and general project setup tasks common
|
|
to all types of unit test jobs.
|
|
roles:
|
|
- zuul: openstack-infra/zuul-jobs
|
|
pre-run: playbooks/unittests/pre
|
|
post-run: playbooks/unittests/post
|
|
|
|
- job:
|
|
name: tox
|
|
parent: unittests
|
|
description: |
|
|
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
|
|
work against specified environments (ALL selects all)
|
|
|
|
tox_environment
|
|
list of user defined environmental variables to pass to bash shell
|
|
|
|
tox_command_line
|
|
an optional command line
|
|
run: playbooks/tox/run
|
|
pre-run: playbooks/tox/pre
|
|
post-run: playbooks/tox/post
|
|
vars:
|
|
tox_environment_defaults:
|
|
NOSE_WITH_HTML_OUTPUT: 1
|
|
NOSE_HTML_OUT_FILE: nose_results.html
|
|
NOSE_WITH_XUNIT: 1
|
|
|
|
- job:
|
|
name: tox-py27
|
|
parent: tox
|
|
description: |
|
|
Run unit tests for a Python project under cPython version 2.7.
|
|
|
|
Uses tox with the "py27" environment.
|
|
vars:
|
|
tox_envlist: py27
|
|
|
|
- job:
|
|
name: tox-py34
|
|
parent: tox
|
|
description: |
|
|
Run unit tests for a Python project under cPython version 3.4.
|
|
|
|
Uses tox with the "py34" environment.
|
|
vars:
|
|
tox_envlist: py34
|
|
|
|
- job:
|
|
name: tox-py35
|
|
parent: tox
|
|
description: |
|
|
Run unit tests for a Python project under cPython version 3.5.
|
|
|
|
Uses tox with the "py35" environment.
|
|
vars:
|
|
tox_envlist: py35
|
|
|
|
- job:
|
|
name: tox-docs
|
|
parent: tox
|
|
# NOTE: This is not the OpenStack docs job, this is a job to run a tox
|
|
# environment called "docs". OpenStack will want a different job
|
|
# in openstack-infra/zuul-jobs
|
|
description: |
|
|
Run documentation unit tests.
|
|
|
|
Uses tox with the "docs" environment.
|
|
vars:
|
|
tox_envlist: docs
|
|
post-run: playbooks/tox/docs-post
|
|
|
|
- job:
|
|
name: tox-linters
|
|
parent: tox
|
|
description: |
|
|
Runs code linting tests.
|
|
|
|
Uses tox with the "linters" environment.
|
|
vars:
|
|
tox_envlist: linters
|
|
|
|
- job:
|
|
name: tox-pep8
|
|
parent: tox
|
|
description: |
|
|
Runs code pep8 tests.
|
|
|
|
Uses tox with the "pep8" environment.
|
|
vars:
|
|
tox_envlist: pep8
|
|
|
|
- job:
|
|
name: tox-cover
|
|
parent: tox
|
|
description: |
|
|
Run code coverage tests.
|
|
|
|
Uses tox with the "cover" environment.
|
|
vars:
|
|
tox_envlist: cover
|
|
|
|
- job:
|
|
name: tox-tarball
|
|
parent: tox
|
|
description: |
|
|
Generate a python source tarball and a binary wheel
|
|
|
|
Uses tox with the "venv" environment.
|
|
vars:
|
|
tox_envlist: venv
|
|
run: playbooks/tox/tarball
|
|
post-run: playbooks/tox/tarball-post
|
|
|
|
- project:
|
|
name: openstack-infra/zuul-jobs
|
|
check:
|
|
jobs:
|
|
- tox-linters
|