main configuration files were added
- CI devstack configuration files - zuul configuration files - nodepool configuration files - Jenkins jobs - scripts for Jenkins jobs Change-Id: I3b1318af2e4009c201d6582c9bf9fea0328cff0d
This commit is contained in:
247
jenkins_job_builder/macros.yaml
Normal file
247
jenkins_job_builder/macros.yaml
Normal file
@@ -0,0 +1,247 @@
|
||||
- builder:
|
||||
name: gerrit-git-prep
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/gerrit-git-prep.sh https://review.openstack.org https://review.openstack.org"
|
||||
|
||||
- builder:
|
||||
name: coverage
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-cover.sh {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: docs
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-docs.sh {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: bash8
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-bash8.sh {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: pep8
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-pep8.sh {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: pylint
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-pylint.sh {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: run-tests
|
||||
builders:
|
||||
- shell: "./run-tests.sh {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: selenium
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-selenium.sh {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: python26
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-unittests.sh 26 {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: python27
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-unittests.sh 27 {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: python33
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-unittests.sh 33 {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: pypy
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-unittests.sh py {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: tox
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-tox.sh {envlist} {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: assert-no-extra-files
|
||||
builders:
|
||||
- shell: |
|
||||
#!/bin/bash
|
||||
OUT=`git ls-files --other --exclude-standard --directory`
|
||||
if [ -z "$OUT" ]; then
|
||||
echo "No extra files created during test."
|
||||
exit 0
|
||||
else
|
||||
echo "The following un-ignored files were created during the test:"
|
||||
echo "$OUT"
|
||||
exit 0 # TODO: change to 1 to fail tests.
|
||||
fi
|
||||
|
||||
- builder:
|
||||
name: tarball
|
||||
builders:
|
||||
- shell: "/usr/local/jenkins/slave_scripts/run-tarball.sh {github-org} {project}"
|
||||
|
||||
- builder:
|
||||
name: devstack-checkout
|
||||
builders:
|
||||
- shell: |
|
||||
#!/bin/bash -xe
|
||||
if [[ ! -e devstack-gate ]]; then
|
||||
git clone git://git.openstack.org/openstack-infra/devstack-gate
|
||||
else
|
||||
cd devstack-gate
|
||||
git remote set-url origin git://git.openstack.org/openstack-infra/devstack-gate
|
||||
git remote update
|
||||
git reset --hard
|
||||
if ! git clean -x -f ; then
|
||||
sleep 1
|
||||
git clean -x -f
|
||||
fi
|
||||
git checkout master
|
||||
git reset --hard remotes/origin/master
|
||||
if ! git clean -x -f ; then
|
||||
sleep 1
|
||||
git clean -x -f
|
||||
fi
|
||||
cd ..
|
||||
fi
|
||||
|
||||
- builder:
|
||||
name: experimental-devstack-checkout
|
||||
builders:
|
||||
- shell: |
|
||||
#!/bin/bash -xe
|
||||
if [[ ! -e devstack-gate ]]; then
|
||||
git clone git://git.openstack.org/openstack-infra/devstack-gate
|
||||
fi
|
||||
cd devstack-gate
|
||||
/usr/local/jenkins/slave_scripts/gerrit-git-prep.sh https://review.openstack.org http://zuul.openstack.org git://git.openstack.org
|
||||
cd ..
|
||||
|
||||
- builder:
|
||||
name: link-logs
|
||||
builders:
|
||||
- shell: |
|
||||
#!/bin/sh
|
||||
if test "$LOG_PATH" ; then
|
||||
echo "Detailed logs: http://logs.openstack.org/$LOG_PATH/"
|
||||
else
|
||||
echo "Detailed logs: http://logs.openstack.org/periodic/$JOB_NAME/$NODE_NAME/$BUILD_NUMBER/"
|
||||
fi
|
||||
|
||||
- builder:
|
||||
name: update-pypi-mirror
|
||||
builders:
|
||||
- shell: |
|
||||
#!/bin/bash -xe
|
||||
/usr/local/bin/run-mirror -c /home/jenkins/pypimirror/etc/pypi-mirror.yaml
|
||||
find /home/jenkins/pypimirror/mirror/ \( -name index.html -or -name full.html \) -delete
|
||||
rsync -a --ignore-existing --itemize-changes /home/jenkins/pypimirror/mirror/ jenkins@static.openstack.org:/srv/static/pypi/
|
||||
|
||||
|
||||
# ======================================================================
|
||||
|
||||
- publisher:
|
||||
name: tarball
|
||||
publishers:
|
||||
- archive:
|
||||
artifacts: 'dist/*.tar.gz'
|
||||
- scp:
|
||||
site: '{site}'
|
||||
files:
|
||||
- target: 'tarballs/{project}/'
|
||||
source: 'dist/*.tar.gz'
|
||||
|
||||
- publisher:
|
||||
name: console-log
|
||||
publishers:
|
||||
- scp:
|
||||
site: 'localhost'
|
||||
files:
|
||||
- target: 'logs/$LOG_PATH'
|
||||
copy-console: true
|
||||
copy-after-failure: true
|
||||
|
||||
- publisher:
|
||||
name: console-log-periodic
|
||||
publishers:
|
||||
- scp:
|
||||
site: 'localhost'
|
||||
files:
|
||||
- target: 'logs/periodic/$JOB_NAME/$NODE_NAME/$BUILD_NUMBER'
|
||||
copy-console: true
|
||||
copy-after-failure: true
|
||||
|
||||
- publisher:
|
||||
name: devstack-logs
|
||||
publishers:
|
||||
- scp:
|
||||
site: 'localhost'
|
||||
files:
|
||||
- target: 'logs/$LOG_PATH'
|
||||
source: 'logs/**'
|
||||
keep-hierarchy: true
|
||||
copy-after-failure: true
|
||||
- target: 'logs/$LOG_PATH'
|
||||
source: '**/testr_results.html.gz'
|
||||
keep-hierarchy: false
|
||||
copy-after-failure: true
|
||||
- target: 'logs/$LOG_PATH'
|
||||
source: '**/subunit_log.txt.gz'
|
||||
keep-hierarchy: false
|
||||
copy-after-failure: true
|
||||
|
||||
- publisher:
|
||||
name: devstack-logs-periodic
|
||||
publishers:
|
||||
- scp:
|
||||
site: 'localhost'
|
||||
files:
|
||||
- target: 'logs/periodic/$JOB_NAME/$NODE_NAME/$BUILD_NUMBER'
|
||||
source: 'logs/**'
|
||||
keep-hierarchy: true
|
||||
copy-after-failure: true
|
||||
- target: 'logs/periodic/$JOB_NAME/$NODE_NAME/$BUILD_NUMBER'
|
||||
source: '**/testr_results.html.gz'
|
||||
keep-hierarchy: false
|
||||
copy-after-failure: true
|
||||
- target: 'logs/periodic/$JOB_NAME/$NODE_NAME/$BUILD_NUMBER'
|
||||
source: '**/subunit_log.txt.gz'
|
||||
keep-hierarchy: false
|
||||
copy-after-failure: true
|
||||
|
||||
- publisher:
|
||||
name: coverage-log
|
||||
publishers:
|
||||
- scp:
|
||||
site: 'localhost'
|
||||
files:
|
||||
- target: 'logs/$LOG_PATH'
|
||||
source: 'cover/**'
|
||||
keep-hierarchy: true
|
||||
copy-after-failure: true
|
||||
|
||||
- publisher:
|
||||
name: test-results
|
||||
publishers:
|
||||
- scp:
|
||||
site: 'localhost'
|
||||
files:
|
||||
- target: 'logs/$LOG_PATH'
|
||||
source: '**/*nose_results.html'
|
||||
keep-hierarchy: false
|
||||
copy-after-failure: true
|
||||
- target: 'logs/$LOG_PATH'
|
||||
source: '**/*testr_results.html.gz'
|
||||
keep-hierarchy: false
|
||||
copy-after-failure: true
|
||||
- target: 'logs/$LOG_PATH'
|
||||
source: '.testrepository/tmp*'
|
||||
keep-hierarchy: false
|
||||
copy-after-failure: true
|
||||
- target: 'logs/$LOG_PATH'
|
||||
source: '**/*subunit_log.txt.gz'
|
||||
keep-hierarchy: false
|
||||
copy-after-failure: true
|
||||
Reference in New Issue
Block a user