ci: make a separate job per node
Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/48ef8703 Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/48ef8703 Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/48ef8703 Branch: refs/heads/master Commit: 48ef870335b87aba55c2f767d7b47afd2997fbee Parents: 3f2b562 Author: James Peach <[email protected]> Authored: Mon Aug 19 11:16:34 2013 -0700 Committer: James Peach <[email protected]> Committed: Mon Aug 19 11:16:34 2013 -0700 ---------------------------------------------------------------------- ci/jenkins.yaml | 281 ++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 268 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/48ef8703/ci/jenkins.yaml ---------------------------------------------------------------------- diff --git a/ci/jenkins.yaml b/ci/jenkins.yaml index 606a8ff..0236700 100644 --- a/ci/jenkins.yaml +++ b/ci/jenkins.yaml @@ -31,6 +31,25 @@ - shell: | rm -rf "${WORKSPACE}/install/${JOB_NAME}.${BUILD_NUMBER}" +# XXX if we can pass down a $MAKE environment variable from the project, then we can +# remove the BSD builder and just use the linux one. +- builder: + name: bsd-regression + builders: + - shell: | + git clean -d -f -x -q + mkdir -p "${WORKSPACE}/install/${JOB_NAME}.${BUILD_NUMBER}" + autoreconf -fi + - shell: | + ./configure --prefix="${WORKSPACE}/install/${JOB_NAME}.${BUILD_NUMBER}" --enable-experimental-plugins + - shell: gmake -j2 V=1 + - shell: gmake check + - shell: gmake install + - shell: | + "${WORKSPACE}/install/${JOB_NAME}.${BUILD_NUMBER}"/bin/traffic_server -R 1 + - shell: | + rm -rf "${WORKSPACE}/install/${JOB_NAME}.${BUILD_NUMBER}" + - builder: name: 'omnios-regression' builders: @@ -57,8 +76,8 @@ rm -rf "${WORKSPACE}/install/${JOB_NAME}.${BUILD_NUMBER}" - job-template: - name: '{name}-regression' - node: '{label}' + name: '{node}-{name}-regression' + node: '{node}' logrotate: daysToKeep: -1 numToKeep: 2 @@ -72,40 +91,276 @@ triggers: - pollscm: 'H/2 * * * *' builders: - - '{label}-regression' + - '{builder}-regression' - project: - name: linux - label: linux + name: centos-5-x64 + node: centos_5_x64 + builder: linux jobs: - - '{name}-regression': + - '{node}-{name}-regression': name: linux-master branch: master repo: file:///home/jenkins/git/trafficserver - - '{name}-regression': + - '{node}-{name}-regression': name: linux-3.3.x branch: 3.3.x repo: file:///home/jenkins/git/trafficserver_3.2 - - '{name}-regression': + - '{node}-{name}-regression': name: linux-3.4.x branch: 3.4.x repo: file:///home/jenkins/git/trafficserver_3.4 - project: - name: omnios - label: omnios + name: centos-5-x86 + node: centos_5_x86 + builder: linux jobs: - - '{name}-regression': + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: centos-6.4-x64 + node: centos_6.4_x64 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: centos-6.4-x86 + node: centos_6.4_x86 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: fedora-15-x64 + node: fedora_15_x64 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: fedora-15-x86 + node: fedora_15_x86 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: fedora-18-x64 + node: fedora_18_x64 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: fedora-18-x86 + node: fedora_18_x86 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: fedora-rawhide-x64 + node: fedora_rawhide_x64 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: fedora-rawhide-x86 + node: fedora_rawhide_x86 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: freebsd-9.1-x64 + node: freebsd_9.1_x64 + builder: bsd + jobs: + - '{node}-{name}-regression': + name: freebsd-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: freebsd-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: freebsd-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: omnios-x64 + node: omnios_x64 + builder: omnios + jobs: + - '{node}-{name}-regression': name: omnios-master branch: master repo: file:///home/jenkins/git/trafficserver - - '{name}-regression': + - '{node}-{name}-regression': name: omnios-3.3.x branch: 3.3.x repo: file:///home/jenkins/git/trafficserver_3.2 - - '{name}-regression': + - '{node}-{name}-regression': name: omnios-3.4.x branch: 3.4.x repo: file:///home/jenkins/git/trafficserver_3.4 +- project: + name: opensuse-12-x64 + node: opensuse_12_x64 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: ubuntu-10.04-x64 + node: ubuntu_10.04_x64 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + +- project: + name: ubuntu-12.04-x64 + node: ubuntu_12.04_x64 + builder: linux + jobs: + - '{node}-{name}-regression': + name: linux-master + branch: master + repo: file:///home/jenkins/git/trafficserver + - '{node}-{name}-regression': + name: linux-3.3.x + branch: 3.3.x + repo: file:///home/jenkins/git/trafficserver_3.2 + - '{node}-{name}-regression': + name: linux-3.4.x + branch: 3.4.x + repo: file:///home/jenkins/git/trafficserver_3.4 + # vim: sw=4 ts=4 et ft=yaml :
