project-config/jenkins/jobs/manila.yaml
vponomaryov a17dda1e94 [Manila] Fix new gate-manila-ui-dsvm-nv job
Recently was added new CI job [1] to manila-ui and manila projects.
But it does not enable python-manilaclient and it is not enabled
by default. It leads to error because manila devstack plugin is
trying to 'clone' its repo in this case and cloninng is prohibited
in OpenStack CI.

[1] I0bc284651263105c5cb14b6f61480f4eb7dcce20

Change-Id: Ic6890e02a5bd2a6de501291b2977a376e8179fe7
2016-11-23 15:24:27 +02:00

512 lines
18 KiB
YAML

- job:
name: gate-manila-ui-dsvm-nv
node: 'ubuntu-xenial'
wrappers:
- build-timeout:
timeout: 100
- timestamps
builders:
- link-logs
- net-info
- devstack-checkout
- firefox-install
- xvfb-install
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=0
export DEVSTACK_GATE_EXERCISES=0
export DEVSTACK_GATE_INSTALL_TESTONLY=1
export DEVSTACK_GATE_NEUTRON=1
export PROJECTS="openstack/python-manilaclient $PROJECTS"
export DEVSTACK_LOCAL_CONFIG="enable_plugin manila git://git.openstack.org/openstack/manila"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin manila-ui git://git.openstack.org/openstack/manila-ui"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
# Enable dummy driver in Manila
function pre_test_hook {
source $BASE/new/manila/contrib/ci/pre_test_hook.sh \
True \
dummy \
multibackend
}
export -f pre_test_hook
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
./safe-devstack-vm-gate-wrap.sh
publishers:
- test-results
- devstack-logs
- console-log
- job-template:
name: 'gate-manila-tempest-dsvm-{description}-{node}{suffix}'
node: '{node}'
wrappers:
- build-timeout:
timeout: 80
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_POSTGRES={postgres_enabled}
export PROJECTS="openstack/python-manilaclient $PROJECTS"
export ENABLED_SERVICES=tempest
# Enable manila devstack plugin. Provided repo should be
# cloned by zuul before devstack run and below provided
# link should not be used.
export DEVSTACK_LOCAL_CONFIG="enable_plugin manila git://git.openstack.org/openstack/manila"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {{
# 'dhss' - acronym for 'Driver Handles Share Servers',
# defines mode of a share driver. Boolean-like.
# 'driver' - codename of a share driver to configure.
# 'back_end_type' - defines which installation Manila should
# have - either 'singlebackend' or 'multibackend'.
source $BASE/new/manila/contrib/ci/pre_test_hook.sh \
{dhss} \
{driver} \
{back_end_type}
}}
export -f pre_test_hook
function post_test_hook {{
# 'back_end_type' - defines which installation Manila is
# configured to - either 'singlebackend' or 'multibackend'.
# 'driver' - codename of a share driver that is configured in
# Manila. It is used for enabling/disabling tests that are not
# supported by share driver that is used.
# 'test_type' - defines which set of test suites should be used,
# can have 'api' and 'scenario' values.
# 'postgres_enabled' - set of test suites depends on DB backend
# in some cases, so it is provided explicitely. Boolean-like.
source $BASE/new/manila/contrib/ci/post_test_hook.sh \
{back_end_type} \
{driver} \
{test_type} \
{postgres_enabled}
}}
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: 'gate-manila-tempest-minimal-dsvm-{driver}-{node}{suffix}'
node: '{node}'
wrappers:
- build-timeout:
timeout: 80
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_NEUTRON=1
export PROJECTS="openstack/python-manilaclient $PROJECTS"
# Basic services needed for minimal job
OVERRIDE_ENABLED_SERVICES=key,mysql,rabbit,tempest
if [ "{driver}" == "lvm" ]; then
# Enable glance for scenario tests
OVERRIDE_ENABLED_SERVICES+=,g-api,g-reg
# Enable nova for scenario tests
OVERRIDE_ENABLED_SERVICES+=,n-api,n-cpu,n-cond,n-sch,n-crt,n-cauth,n-obj
# Enable neutron for scenario tests
OVERRIDE_ENABLED_SERVICES+=,q-svc,q-dhcp,q-meta,q-l3,q-agt
fi
export OVERRIDE_ENABLED_SERVICES
# Enable manila devstack plugin. Provided repo should be
# cloned by zuul before devstack run and below provided
# link should not be used.
export DEVSTACK_LOCAL_CONFIG="enable_plugin manila git://git.openstack.org/openstack/manila"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {{
# 'dhss' - acronym for 'Driver Handles Share Servers',
# defines mode of a share driver. Boolean-like.
# 'driver' - codename of a share driver to configure.
# 'back_end_type' - defines which installation Manila should
# have - either 'singlebackend' or 'multibackend'.
source $BASE/new/manila/contrib/ci/pre_test_hook.sh False {driver} multibackend
}}
export -f pre_test_hook
function post_test_hook {{
# 'back_end_type' - defines which installation Manila is
# configured to - either 'singlebackend' or 'multibackend'.
# 'driver' - codename of a share driver that is configured in
# Manila. It is used for enabling/disabling tests that are not
# supported by share driver that is used.
# 'test_type' - defines which set of test suites should be used,
# can have 'api' and 'scenario' values.
# 'postgres_enabled' - set of test suites depends on DB backend
# in some cases, so it is provided explicitely. Boolean-like.
source $BASE/new/manila/contrib/ci/post_test_hook.sh multibackend {driver} api False
}}
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}-grenade-dsvm-manila-{node}{suffix}'
node: '{node}'
wrappers:
- build-timeout:
timeout: 180
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PROJECTS="openstack-dev/grenade $PROJECTS"
export PROJECTS="openstack/python-manilaclient $PROJECTS"
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_NEUTRON=0
export DEVSTACK_GATE_GRENADE=pullup
# Basic services needed for grenade manila job using dummy driver
export OVERRIDE_ENABLED_SERVICES=key,mysql,rabbit
# Enable manila grenade plugin. Provided repo should be
# cloned by zuul before devstack run and below provided
# link should not be used.
export GRENADE_PLUGINRC="enable_grenade_plugin manila git://git.openstack.org/openstack/manila"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {{
source $BASE/new/manila/contrib/ci/pre_test_hook.sh \
True \
dummy \
multibackend
}}
export -f pre_test_hook
export BRANCH_OVERRIDE={branch-override}
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
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
- job-template:
name: '{pipeline}-manilaclient-dsvm-neutron-functional-{node}{suffix}'
node: '{node}'
wrappers:
- build-timeout:
timeout: 80
- timestamps
builders:
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_NEUTRON=1
export PROJECTS="openstack/python-manilaclient $PROJECTS"
# Enable manila devstack plugin. Provided repo should be
# cloned by zuul before devstack run and below provided link
# should not be used.
export DEVSTACK_LOCAL_CONFIG="enable_plugin manila git://git.openstack.org/openstack/manila"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {{
source $BASE/new/python-manilaclient/contrib/ci/pre_test_hook.sh
}}
export -f pre_test_hook
function post_test_hook {{
# Configure and run functional tests
source $BASE/new/python-manilaclient/contrib/ci/post_test_hook.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:
- test-results
- devstack-logs
- console-log
- job-template:
name: 'gate-manila-publishimage-{image-name}'
node: ubuntu-trusty
builders:
- link-logs
- net-info
- gerrit-git-prep
- install-distro-packages
- shell: |
#!/bin/bash -xe
./tools/gate/build-images {image-name}
BRANCH=$ZUUL_REFNAME
BRANCH_PATH=`echo $BRANCH | tr / -`
mkdir -p images
mv manila-service-image.qcow2 images/manila-service-image-$BRANCH_PATH.qcow2
publishers:
- scp:
site: 'tarballs.openstack.org'
files:
- source: 'images/*'
target: 'tarballs/manila-image-elements/images/'
keep-hierarchy: false
copy-after-failure: false
- console-log
- job-template:
name: 'gate-manila-buildimage-{image-name}'
node: ubuntu-trusty
builders:
- link-logs
- net-info
- gerrit-git-prep
- install-distro-packages
- shell: |
#!/bin/bash -xe
./tools/gate/build-images {image-name}
publishers:
- console-log
- job-template:
name: gate-manila-tempest-dsvm-glusterfs-{variant}-{node}{suffix}
node: '{node}'
wrappers:
- build-timeout:
timeout: 80
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_NEUTRON=1
export ENABLED_SERVICES=tempest
export PROJECTS="openstack/python-manilaclient $PROJECTS"
export PROJECTS="openstack/devstack-plugin-glusterfs $PROJECTS"
# Enable manila devstack plugin. Provided repo should be
# cloned by zuul before devstack run and below provided link
# should not be used.
export DEVSTACK_LOCAL_CONFIG="enable_plugin manila git://git.openstack.org/openstack/manila"
# Enable devstack-plugin-glusterfs plugin, to install and configure GlusterFS.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin devstack-plugin-glusterfs git://git.openstack.org/stackforge/devstack-plugin-glusterfs"
# Configure devstack-plugin-glusterfs to enable GlusterFS as a backend for Manila.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"CONFIGURE_GLUSTERFS_MANILA=True"
# Configure devstack-plugin-glusterfs to use respective GlusterFS driver variant.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"GLUSTERFS_MANILA_DRIVER_TYPE=glusterfs-{variant}"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {{
# Configure devstack to run manila installation without handling of share servers
source $BASE/new/devstack-plugin-glusterfs/manila/pre_test_hook.sh
}}
export -f pre_test_hook
function post_test_hook {{
# Configure and run tempest on singlebackend manila installation
source $BASE/new/devstack-plugin-glusterfs/manila/post_test_hook.sh singlebackend
}}
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: 'gate-manila-tempest-dsvm-hdfs-{node}{suffix}'
node: '{node}'
wrappers:
- build-timeout:
timeout: 80
- timestamps
builders:
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_NEUTRON=1
export ENABLED_SERVICES=tempest
export PROJECTS="openstack/python-manilaclient openstack/devstack-plugin-hdfs $PROJECTS"
# Enable manila devstack plugin. Provided repo should be cloned by zuul before devstack run
# and below provided link should not be used.
export DEVSTACK_LOCAL_CONFIG="enable_plugin manila git://git.openstack.org/openstack/manila"
# Enable devstack-plugin-hdfs plugin, to install and configure HDFS.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin devstack-plugin-hdfs git://git.openstack.org/openstack/devstack-plugin-hdfs"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {{
# Configure devstack to run manila installation without handling of share servers
source $BASE/new/devstack-plugin-hdfs/manila/pre_test_hook.sh
}}
export -f pre_test_hook
function post_test_hook {{
# Configure and run tempest on multi-backend manila installation
source $BASE/new/devstack-plugin-hdfs/manila/post_test_hook.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: 'gate-manila-tempest-dsvm-cephfs-native-{node}{suffix}'
node: '{node}'
wrappers:
- build-timeout:
timeout: 80
- timestamps
builders:
- link-logs
- net-info
- devstack-checkout
- shell: |
#!/bin/bash -xe
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_NEUTRON=1
export ENABLED_SERVICES=tempest
export PROJECTS="openstack/python-manilaclient openstack/devstack-plugin-ceph $PROJECTS"
# Enable Manila's DevStack plugin. Provided repo should be
# cloned by zuul before devstack run and below provided link
# should not be used.
export DEVSTACK_LOCAL_CONFIG="enable_plugin manila git://git.openstack.org/openstack/manila"
# Enable devstack-plugin-ceph plugin, to install and configure
# CephFS.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin devstack-plugin-ceph git://git.openstack.org/openstack/devstack-plugin-ceph"
# Enable CephFS as the backend for Manila.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"ENABLE_CEPH_MANILA=True"
# Disable Ceph as the storage backend for Nova.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"ENABLE_CEPH_NOVA=False"
# Disable Ceph as the storage backend for Glance.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"ENABLE_CEPH_GLANCE=False"
# Disable Ceph as the storage backend for Cinder.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"ENABLE_CEPH_CINDER=False"
# Disable Ceph as the storage backend for Cinder backup.
export DEVSTACK_LOCAL_CONFIG+=$'\n'"ENABLE_CEPH_C_BAK=False"
# Keep localrc to be able to set some vars in pre_test_hook
export KEEP_LOCALRC=1
function pre_test_hook {{
# Configure Manila with a CephFSNative driver backend.
# Refer job-template's pre_test_hook for more details on the
# arguments.
source $BASE/new/devstack-plugin-ceph/manila/pre_test_hook.sh \
false cephfsnative singlebackend
}}
export -f pre_test_hook
function post_test_hook {{
# Configure and run Tempest API tests on Manila with a
# CephFSNative driver backend.
# Refer job-template's post_test_hook for more details on the
# arguments.
source $BASE/new/devstack-plugin-ceph/manila/post_test_hook.sh \
singlebackend cephfsnative api
}}
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