project-config/jenkins/jobs/python-jobs.yaml
Paul Belanger 322d7e5dfb
Ensure console-log is our last publisher
This is related to zuulv25, we make sure console-log is the last
publisher to ensure zuul-launcher logs are also uploaded.

Change-Id: I1616b97fad2b97fb9e977ec14543aab4bc673b58
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-06-16 18:32:16 -05:00

554 lines
13 KiB
YAML

- job-template:
name: '{name}-coverage'
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- install-distro-packages
- revoke-sudo
- coverage:
env: cover
publishers:
- scp:
site: 'static.openstack.org'
files:
- target: 'logs/$LOG_PATH'
source: 'cover/**'
keep-hierarchy: true
copy-after-failure: true
- console-log
node: ubuntu-trusty
- job-template:
name: '{name}-coverage-db'
description: 'Same job as {name}-coverage but sets up databases.'
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- install-distro-packages
- mysql-prep
- pgsql-prep
- mysql-db:
db_name: openstack_citest
- pgsql-db:
db_name: openstack_citest
- revoke-sudo
- coverage:
env: cover
publishers:
- scp:
site: 'static.openstack.org'
files:
- target: 'logs/$LOG_PATH'
source: 'cover/**'
keep-hierarchy: true
copy-after-failure: true
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-pep8'
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- revoke-sudo
- pep8:
env: pep8
publishers:
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-pylint'
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- revoke-sudo
- pylint:
env: pylint
publishers:
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-python27'
wrappers:
- build-timeout:
timeout: 50
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- revoke-sudo
- python27
- assert-no-extra-files
publishers:
- test-results
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-python27-db'
description: 'Same job as gate-{name}-python27 but sets up databases.'
wrappers:
- build-timeout:
timeout: 50
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- mysql-prep
- pgsql-prep
- mysql-db:
db_name: openstack_citest
- pgsql-db:
db_name: openstack_citest
- revoke-sudo
- python27
- assert-no-extra-files
publishers:
- test-results
- console-log
node: ubuntu-trusty
- job-template:
name: 'periodic-{name}-{python}-with-oslo-master'
node: ubuntu-trusty
wrappers:
- build-timeout:
timeout: 50
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-branch-prep-upper-constraints:
branch: master
- install-distro-packages
# The job runs with different repositories and invokes unittests, some
# of these repositories need a database set up.
- mysql-prep
- pgsql-prep
- mysql-db:
db_name: openstack_citest
- pgsql-db:
db_name: openstack_citest
- revoke-sudo
- shell: "/usr/local/jenkins/slave_scripts/run-tox-with-oslo-master.sh {python}"
- assert-no-extra-files
publishers:
- test-results
- console-log
- job-template:
name: 'gate-{name}-python34'
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- revoke-sudo
- python34
- assert-no-extra-files
publishers:
- test-results
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-python34-db'
description: 'Same job as gate-{name}-python34 but sets up databases.'
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- mysql-prep
- pgsql-prep
- mysql-db:
db_name: openstack_citest
- pgsql-db:
db_name: openstack_citest
- revoke-sudo
- python34
- assert-no-extra-files
publishers:
- test-results
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-pypy'
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- revoke-sudo
- pypy
- assert-no-extra-files
publishers:
- test-results
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-pypy-db'
description: 'Same job as gate-{name}-pypy but sets up databases.'
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- mysql-prep
- pgsql-prep
- mysql-db:
db_name: openstack_citest
- pgsql-db:
db_name: openstack_citest
- revoke-sudo
- pypy
- assert-no-extra-files
publishers:
- test-results
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-docs'
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- revoke-sudo
- docs
publishers:
- upload-sphinx-draft
- console-log
node: ubuntu-trusty
- job-template:
name: 'gate-{name}-tox-{envlist}'
description: 'Runs tox, does not set up any databases.'
node: ubuntu-trusty
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- revoke-sudo
- tox:
envlist: '{envlist}'
- assert-no-extra-files
publishers:
- test-results
- console-log
- job-template:
name: 'gate-{name}-tox-with-sudo-{envlist}'
description: 'Same job as gate-{name}-tox-{envlist}, allows sudo access.'
node: ubuntu-trusty
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- tox:
envlist: '{envlist}'
- assert-no-extra-files
publishers:
- test-results
- console-log
- job-template:
name: 'gate-{name}-tox-db-{envlist}'
description: 'Same job as gate-{name}-tox-{envlist} but sets up databases.'
node: ubuntu-trusty
wrappers:
- build-timeout:
timeout: 40
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- zuul-git-prep-upper-constraints
- install-distro-packages
- mysql-prep
- pgsql-prep
- mysql-db:
db_name: openstack_citest
- pgsql-db:
db_name: openstack_citest
- revoke-sudo
- tox:
envlist: '{envlist}'
- assert-no-extra-files
publishers:
- test-results
- console-log
- job-template:
name: '{name}-tarball'
node: ubuntu-trusty
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- install-distro-packages
- revoke-sudo
- tarball:
env: venv
publishers:
- tarball:
project: '{name}'
site: '{tarball-site}'
- wheel:
project: '{name}'
site: '{tarball-site}'
- console-log
- job-template:
name: '{name}-branch-tarball'
node: ubuntu-trusty
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- install-distro-packages
- revoke-sudo
- tarball:
env: venv
- shell: |
#!/bin/bash -xe
BRANCH=$ZUUL_REFNAME
BRANCH_PATH=`echo $BRANCH | tr / -`
mv dist/*.tar.gz dist/{name}-$BRANCH_PATH.tar.gz
publishers:
- tarball:
project: '{name}'
site: '{tarball-site}'
- console-log
- job-template:
name: 'gate-{name}-requirements'
node: ubuntu-trusty
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- install-distro-packages
- revoke-sudo
- shell: |
#!/bin/bash -xe
/usr/local/jenkins/slave_scripts/project-requirements-change.py $ZUUL_BRANCH
publishers:
- console-log
- job-template:
name: '{name}-announce-release'
node: ubuntu-trusty
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- install-distro-packages
- revoke-sudo
- shell: |
#!/bin/bash
set -x
# Report on the ZUUL settings.
env | grep '^ZUUL_'
# Save the version that was just tagged by parsing
# ref/tags/VALUE to get VALUE.
VERSION=$(echo $ZUUL_REF | cut -f3 -d/)
# Check out the release-tools, ignoring any other ZUUL
# variables that might confuse the cloner and cause it to
# try to check out anything like the commit that was just
# tagged or to look for a branch (we always want the master
# version of the tools).
for v in $(env | grep '^ZUUL_' | cut -f1 -d=); do
unset $v
done
TOOLS_TMP=$(mktemp -d)
/usr/zuul-env/bin/zuul-cloner \
--cache-dir /opt/git \
--workspace $TOOLS_TMP \
git://git.openstack.org \
openstack-infra/release-tools
TOOLS_DIR=$TOOLS_TMP/openstack-infra/release-tools
# Run the announce script.
$TOOLS_DIR/announce.sh $WORKSPACE $VERSION
publishers:
- console-log
- job-group:
name: periodic-python-jobs-with-oslo-master
jobs:
- 'periodic-{name}-{python}-with-oslo-master':
python:
- py27
- py34
- job-group:
name: python-jobs
jobs:
- '{name}-coverage'
- 'gate-{name}-pep8'
- 'gate-{name}-python27'
- 'gate-{name}-python34'
- 'gate-{name}-pypy'
- 'gate-{name}-docs'
- 'gate-{name}-requirements'
- '{name}-tarball'
- '{name}-branch-tarball'
- '{name}-announce-release'
# pylint isn't standard
# gate-{name}-tox-{envlist} also isn't standard, but is reserved for
# projects that want to run specific jobs via tox
- job-group:
name: python-db-jobs
jobs:
- '{name}-coverage-db'
- 'gate-{name}-pep8'
- 'gate-{name}-python27-db'
- 'gate-{name}-python34-db'
- 'gate-{name}-pypy-db'
- 'gate-{name}-docs'
- 'gate-{name}-requirements'
- '{name}-tarball'
- '{name}-branch-tarball'
- '{name}-announce-release'
# pylint isn't standard
# gate-{name}-tox-{envlist} also isn't standard, but is reserved for
# projects that want to run specific jobs via tox
- job-group:
name: python-jobs-searchlight
jobs:
- '{name}-coverage'
- 'gate-{name}-pep8'
- 'gate-{name}-python27-searchlight'
- 'gate-{name}-python34-searchlight'
- 'gate-{name}-python27-searchlight-es2'
- 'gate-{name}-pypy'
- 'gate-{name}-docs'
- 'gate-{name}-requirements'
- '{name}-tarball'
- '{name}-branch-tarball'
- '{name}-announce-release'
# pylint isn't standard
# gate-{name}-tox-{envlist} also isn't standard, but is reserved for
# projects that want to run specific jobs via tox