56a8b92ce9
Now that stable/folsom has been released add periodic bitrot jobs for that stable release. Do this early to catch bitrot early. Change-Id: Ie83263209aed8b76a2d7fa0f5eda88f6e2e779f6 Reviewed-on: https://review.openstack.org/13768 Reviewed-by: James E. Blair <corvus@inaugust.com> Approved: Monty Taylor <mordred@inaugust.com> Reviewed-by: Monty Taylor <mordred@inaugust.com> Tested-by: Jenkins
450 lines
12 KiB
YAML
450 lines
12 KiB
YAML
- job:
|
|
name: gate-tempest-devstack-vm
|
|
node: devstack-precise
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 90
|
|
fail: true
|
|
- timestamps
|
|
|
|
parameters:
|
|
- label:
|
|
name: NODE_LABEL
|
|
description: Label of node to use for this build
|
|
default: devstack-precise
|
|
|
|
triggers:
|
|
- zuul
|
|
|
|
builders:
|
|
- trigger-builds:
|
|
- project: devstack-update-inprogress
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_CINDER=0
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- scp:
|
|
site: 'static.openstack.org'
|
|
files:
|
|
- target: 'logs/$ZUUL_CHANGE/$ZUUL_PATCHSET/$ZUUL_PIPELINE/$JOB_NAME/$BUILD_NUMBER'
|
|
source: 'logs/*'
|
|
keep-hierarchy: true
|
|
copy-after-failure: true
|
|
- console-log
|
|
- trigger-parameterized-builds:
|
|
- project: devstack-update-complete
|
|
when: complete
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
|
|
|
|
- job:
|
|
name: gate-tempest-devstack-vm-cinder
|
|
node: devstack-precise
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 90
|
|
fail: true
|
|
- timestamps
|
|
|
|
parameters:
|
|
- label:
|
|
name: NODE_LABEL
|
|
description: Label of node to use for this build
|
|
default: devstack-precise
|
|
|
|
triggers:
|
|
- zuul
|
|
|
|
builders:
|
|
- trigger-builds:
|
|
- project: devstack-update-inprogress
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_CINDER=1
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- scp:
|
|
site: 'static.openstack.org'
|
|
files:
|
|
- target: 'logs/$ZUUL_CHANGE/$ZUUL_PATCHSET/$ZUUL_PIPELINE/$JOB_NAME/$BUILD_NUMBER'
|
|
source: 'logs/*'
|
|
keep-hierarchy: true
|
|
copy-after-failure: true
|
|
- console-log
|
|
- trigger-parameterized-builds:
|
|
- project: devstack-update-complete
|
|
when: complete
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
|
|
|
|
- job:
|
|
name: periodic-tempest-devstack-vm-stable-diablo
|
|
node: devstack-oneiric
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 90
|
|
fail: true
|
|
- timestamps
|
|
|
|
triggers:
|
|
- timed: '@daily'
|
|
|
|
builders:
|
|
- trigger-builds:
|
|
- project: devstack-update-inprogress
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_CINDER=0
|
|
export GERRIT_BRANCH=stable/diablo
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- scp:
|
|
site: 'static.openstack.org'
|
|
files:
|
|
- target: 'logs/periodic/$JOB_NAME/$BUILD_NUMBER'
|
|
source: 'logs/*'
|
|
keep-hierarchy: true
|
|
copy-after-failure: true
|
|
- console-log-periodic
|
|
- trigger-parameterized-builds:
|
|
- project: devstack-update-complete
|
|
when: complete
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
|
|
|
|
- job:
|
|
name: periodic-tempest-devstack-vm-stable-essex
|
|
node: devstack-precise
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 90
|
|
fail: true
|
|
- timestamps
|
|
|
|
triggers:
|
|
- timed: '@daily'
|
|
|
|
builders:
|
|
- trigger-builds:
|
|
- project: devstack-update-inprogress
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_CINDER=0
|
|
export GERRIT_BRANCH=stable/essex
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- scp:
|
|
site: 'static.openstack.org'
|
|
files:
|
|
- target: 'logs/periodic/$JOB_NAME/$BUILD_NUMBER'
|
|
source: 'logs/*'
|
|
keep-hierarchy: true
|
|
copy-after-failure: true
|
|
- console-log-periodic
|
|
- trigger-parameterized-builds:
|
|
- project: devstack-update-complete
|
|
when: complete
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
|
|
|
|
- job:
|
|
name: periodic-tempest-devstack-vm-stable-folsom
|
|
node: devstack-precise
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 90
|
|
fail: true
|
|
- timestamps
|
|
|
|
triggers:
|
|
- timed: '@daily'
|
|
|
|
builders:
|
|
- trigger-builds:
|
|
- project: devstack-update-inprogress
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
#
|
|
# This job also gates devstack-gate, but in case a previous run fails,
|
|
# we need to always make sure that we're starting with the latest copy
|
|
# from master, before we start applying changes to it. If a previous run
|
|
# leaves a bad copy of the gate script, we may get stuck.
|
|
#
|
|
if [[ ! -e devstack-gate ]]; then
|
|
git clone https://review.openstack.org/p/openstack-ci/devstack-gate
|
|
else
|
|
cd devstack-gate
|
|
git remote update
|
|
git reset --hard
|
|
git clean -x -f
|
|
git checkout master
|
|
git reset --hard remotes/origin/master
|
|
git clean -x -f
|
|
cd ..
|
|
fi
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_CINDER=0
|
|
export GERRIT_BRANCH=stable/folsom
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- scp:
|
|
site: 'static.openstack.org'
|
|
files:
|
|
- target: 'logs/periodic/$JOB_NAME/$BUILD_NUMBER'
|
|
source: 'logs/*'
|
|
keep-hierarchy: true
|
|
copy-after-failure: true
|
|
- console-log-periodic
|
|
- trigger-parameterized-builds:
|
|
- project: devstack-update-complete
|
|
when: complete
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
|
|
|
|
- job:
|
|
name: periodic-tempest-devstack-vm-cinder-stable-folsom
|
|
node: devstack-precise
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 90
|
|
fail: true
|
|
- timestamps
|
|
|
|
triggers:
|
|
- timed: '@daily'
|
|
|
|
builders:
|
|
- trigger-builds:
|
|
- project: devstack-update-inprogress
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
#
|
|
# This job also gates devstack-gate, but in case a previous run fails,
|
|
# we need to always make sure that we're starting with the latest copy
|
|
# from master, before we start applying changes to it. If a previous run
|
|
# leaves a bad copy of the gate script, we may get stuck.
|
|
#
|
|
if [[ ! -e devstack-gate ]]; then
|
|
git clone https://review.openstack.org/p/openstack-ci/devstack-gate
|
|
else
|
|
cd devstack-gate
|
|
git remote update
|
|
git reset --hard
|
|
git clean -x -f
|
|
git checkout master
|
|
git reset --hard remotes/origin/master
|
|
git clean -x -f
|
|
cd ..
|
|
fi
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_CINDER=1
|
|
export GERRIT_BRANCH=stable/folsom
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- scp:
|
|
site: 'static.openstack.org'
|
|
files:
|
|
- target: 'logs/periodic/$JOB_NAME/$BUILD_NUMBER'
|
|
source: 'logs/*'
|
|
keep-hierarchy: true
|
|
copy-after-failure: true
|
|
- console-log-periodic
|
|
- trigger-parameterized-builds:
|
|
- project: devstack-update-complete
|
|
when: complete
|
|
predefined-parameters:
|
|
DEVSTACK_NODE_NAME=${NODE_NAME}
|
|
|
|
|
|
# Called by devstack jobs to alert that they have started so that the
|
|
# jenkins slave they are running on can be disabled.
|
|
- job:
|
|
name: devstack-update-inprogress
|
|
concurrent: false
|
|
node: master
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 10
|
|
fail: true
|
|
- timestamps
|
|
|
|
builders:
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
$WORKSPACE/devstack-gate/devstack-vm-inprogress.py $DEVSTACK_NODE_NAME
|
|
|
|
|
|
# Called by devstack jobs to alert that they have completed so that the
|
|
# jenkins slave may be deleted.
|
|
- job:
|
|
name: devstack-update-complete
|
|
concurrent: false
|
|
node: master
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 10
|
|
fail: true
|
|
- timestamps
|
|
|
|
builders:
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
$WORKSPACE/devstack-gate/devstack-vm-delete.py $DEVSTACK_NODE_NAME
|
|
|
|
|
|
- job-template:
|
|
name: devstack-launch-vms-{provider}
|
|
concurrent: false
|
|
node: master
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 10
|
|
fail: true
|
|
- timestamps
|
|
|
|
triggers:
|
|
- timed: '*/10 * * * *'
|
|
|
|
builders:
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
$WORKSPACE/devstack-gate/devstack-vm-launch.py {provider}
|
|
|
|
|
|
- job-template:
|
|
name: devstack-reap-vms-{provider}
|
|
concurrent: false
|
|
node: master
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 10
|
|
fail: true
|
|
- timestamps
|
|
|
|
parameters:
|
|
- bool:
|
|
name: ALL_SERVERS
|
|
description: Delete all servers?
|
|
default: false
|
|
- bool:
|
|
name: ALL_IMAGES
|
|
description: Delete all images?
|
|
default: false
|
|
|
|
triggers:
|
|
- timed: '*/15 * * * *'
|
|
|
|
builders:
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
|
|
if [ "$ALL_SERVERS" == 'true' ]; then
|
|
ALL_SERVERS="--all-servers"
|
|
else
|
|
ALL_SERVERS=""
|
|
fi
|
|
|
|
if [ "$ALL_IMAGES" == 'true' ]; then
|
|
ALL_IMAGES="--all-images"
|
|
else
|
|
ALL_IMAGES=""
|
|
fi
|
|
|
|
export PYTHONUNBUFFERED=true
|
|
$WORKSPACE/devstack-gate/devstack-vm-reap.py {provider} $ALL_SERVERS $ALL_IMAGES
|
|
|
|
|
|
- job-template:
|
|
name: devstack-update-vm-image-{provider}
|
|
concurrent: false
|
|
node: master
|
|
|
|
wrappers:
|
|
- timeout:
|
|
timeout: 360
|
|
fail: true
|
|
- timestamps
|
|
|
|
triggers:
|
|
- timed: '3 5 * * *'
|
|
|
|
builders:
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
$WORKSPACE/devstack-gate/devstack-vm-update-image.sh {provider}
|
|
|
|
|
|
- job-group:
|
|
name: devstack-node-provider-jobs
|
|
jobs:
|
|
- devstack-launch-vms-{provider}
|
|
- devstack-reap-vms-{provider}
|
|
- devstack-update-vm-image-{provider}
|