project-config/jenkins/jobs/nodepool.yaml

159 lines
7.5 KiB
YAML

- job-template:
name: '{pipeline}-dsvm-nodepool{suffix}'
node: '{node}'
wrappers:
- build-timeout:
timeout: 70
- timestamps
builders:
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
# Disable tempest as nodepool is talking to the cloud not tempest.
export DEVSTACK_GATE_TEMPEST=0
# Use neutron as the public clouds in use are neutron based.
export DEVSTACK_GATE_NEUTRON=1
# The nodepool process needs sudo rights in order to
# perform dib image builds
export DEVSTACK_GATE_REMOVE_STACK_SUDO=0
# Disable services we do not need for nodepool
export DEVSTACK_LOCAL_CONFIG="disable_service horizon"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-acentral"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-acompute"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-alarm-evaluator"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-alarm-notifier"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-anotification"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-api"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-collector"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service c-sch"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service c-api"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service c-vol"
export BRANCH_OVERRIDE={branch-override}
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
# Because we are testing a non standard project, add the
# our project repository. This makes zuul do the right
# reference magic for testing changes.
export PROJECTS="openstack-infra/nodepool $PROJECTS"
# note the actual url here is somewhat irrelevant because it
# caches in nodepool, however make it a valid url for
# documentation purposes.
export DEVSTACK_LOCAL_CONFIG="enable_plugin nodepool git://git.openstack.org/openstack-infra/nodepool"
function post_test_hook {{
/opt/stack/new/nodepool/tools/check_devstack_plugin.sh
}}
export -f post_test_hook
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
./safe-devstack-vm-gate-wrap.sh
publishers:
- devstack-logs
- console-log
- job-template:
name: '{pipeline}-dsvm-nodepool{images}-src{suffix}'
node: '{node}'
wrappers:
- build-timeout:
timeout: 70
- timestamps
builders:
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
# Disable tempest as nodepool is talking to the cloud not tempest.
export DEVSTACK_GATE_TEMPEST=0
# Use neutron as the public clouds in use are neutron based.
export DEVSTACK_GATE_NEUTRON=1
# The nodepool process needs sudo rights in order to
# perform dib image builds
export DEVSTACK_GATE_REMOVE_STACK_SUDO=0
# Disable services we do not need for nodepool
export DEVSTACK_LOCAL_CONFIG="disable_service horizon"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-acentral"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-acompute"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-alarm-evaluator"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-alarm-notifier"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-anotification"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-api"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service ceilometer-collector"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service c-sch"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service c-api"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"disable_service c-vol"
export BRANCH_OVERRIDE={branch-override}
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
# Because we are testing a non standard project, add the
# our project repository. This makes zuul do the right
# reference magic for testing changes.
export PROJECTS="openstack-infra/glean $PROJECTS"
export PROJECTS="openstack-infra/nodepool $PROJECTS"
export PROJECTS="openstack-infra/shade $PROJECTS"
export PROJECTS="openstack/diskimage-builder $PROJECTS"
# note the actual url here is somewhat irrelevant because it
# caches in nodepool, however make it a valid url for
# documentation purposes.
export DEVSTACK_LOCAL_CONFIG="enable_plugin nodepool git://git.openstack.org/openstack-infra/nodepool"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"LIBS_FROM_GIT=diskimage-builder,glean,shade"
# Start with all images disabled.
export NODEPOOL_PAUSE_CENTOS_7_DIB=true
export NODEPOOL_PAUSE_DEBIAN_JESSIE_DIB=true
export NODEPOOL_PAUSE_FEDORA_25_DIB=true
export NODEPOOL_PAUSE_OPENSUSE_42_2_DIB=true
export NODEPOOL_PAUSE_UBUNTU_PRECISE_DIB=true
export NODEPOOL_PAUSE_UBUNTU_TRUSTY_DIB=true
export NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB=true
if [ "{images}" == "" ] ; then
# dsvm-nodepool-src
export NODEPOOL_PAUSE_UBUNTU_TRUSTY_DIB=false
elif [ "{images}" == "-debian" ] ; then
# dsvm-nodepool-debian-src
export NODEPOOL_PAUSE_DEBIAN_JESSIE_DIB=false
elif [ "{images}" == "-opensuse" ] ; then
# dsvm-nodepool-opensuse-src
export NODEPOOL_PAUSE_OPENSUSE_42_2_DIB=false
elif [ "{images}" == "-redhat" ] ; then
# dsvm-nodepool-redhat-src
export NODEPOOL_PAUSE_CENTOS_7_DIB=false
export NODEPOOL_PAUSE_FEDORA_25_DIB=false
elif [ "{images}" == "-ubuntu" ] ; then
# dsvm-nodepool-ubuntu-src
export NODEPOOL_PAUSE_UBUNTU_PRECISE_DIB=false
export NODEPOOL_PAUSE_UBUNTU_TRUSTY_DIB=false
export NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB=false
fi
export DEVSTACK_LOCAL_CONFIG+=$'\n'"NODEPOOL_PAUSE_CENTOS_7_DIB=$NODEPOOL_PAUSE_CENTOS_7_DIB"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"NODEPOOL_PAUSE_DEBIAN_JESSIE_DIB=$NODEPOOL_PAUSE_DEBIAN_JESSIE_DIB"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"NODEPOOL_PAUSE_FEDORA_25_DIB=$NODEPOOL_PAUSE_FEDORA_25_DIB"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"NODEPOOL_PAUSE_UBUNTU_PRECISE_DIB=$NODEPOOL_PAUSE_UBUNTU_PRECISE_DIB"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"NODEPOOL_PAUSE_UBUNTU_TRUSTY_DIB=$NODEPOOL_PAUSE_UBUNTU_TRUSTY_DIB"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB=$NODEPOOL_PAUSE_UBUNTU_XENIAL_DIB"
function post_test_hook {{
/opt/stack/new/nodepool/tools/check_devstack_plugin.sh
}}
export -f post_test_hook
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
./safe-devstack-vm-gate-wrap.sh
publishers:
- devstack-logs
- console-log