project-config-example/jenkins/jobs/dsvm-cinder-driver.yaml

76 lines
2.2 KiB
YAML

- job-template:
name: 'dsvm-tempest-my-cinder-driver'
node: '{node}'
wrappers:
- timeout:
timeout: 125
fail: true
- timestamps
builders:
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
function pre_test_hook {{
echo "Install thirdparty client libraries"
#TODO: update your client here if needed, otherwise delete
sudo -H pip install mydriverclient
echo "Configure the local.conf file to properly setup hp lefthand driver in cinder.conf"
cat <<EOF >$BASE/new/devstack/local.conf
[[post-config|\$CINDER_CONF]]
[DEFAULT]
enabled_backends=mybackend
default_volume_type=myvolumetype
[mybackend]
# add you driver configuration here
volume_driver=cinder.volume.drivers.MyDriver
volume_backend_name=mybackend
# Use post-extra because the tempest configuration file is
# overwritten with the .sample after post-config.
[[post-extra|\$TEMPEST_CONFIG]]
[volume]
storage_protocol=iSCSI
vendor_name=MyVendor
EOF
echo "Configure localrc file to properly setup CINDER_ENABLED_BACKENDS"
cat <<EOF >>$BASE/new/devstack/localrc
CINDER_ENABLED_BACKENDS=mybackend:myvolumetype
EOF
}}
export -f pre_test_hook
# To keep our CINDER_ENABLED_BACKENDS configuration in localrc
export KEEP_LOCALRC=true
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TIMEOUT=120
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_REGEX="volume"
# Let's use the http protocol instead of git protocol
export GIT_BASE=https://git.openstack.org
if [ -z $ZUUL_PROJECT ]; then
export ZUUL_PROJECT=openstack-dev/ci-sandbox
fi
if [ -z $ZUUL_BRANCH ]; then
export ZUUL_BRANCH=master
fi
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