]> git.proxmox.com Git - ceph.git/blame - ceph/qa/workunits/rbd/run_devstack_tempest.sh
buildsys: fix parallel builds
[ceph.git] / ceph / qa / workunits / rbd / run_devstack_tempest.sh
CommitLineData
7c673cae
FG
1#!/bin/bash -ex
2
3STACK_BRANCH=stable/ocata
4
5STACK_USER=${STACK_USER:-stack}
6STACK_GROUP=${STACK_GROUP:-stack}
7TEMPEST_USER=${TEMPEST_USER:-tempest}
8
9STACK_HOME_PATH=${STACK_HOME_PATH:-/home/stack}
10STACK_OPT_PATH=${STACK_OPT_PATH:-/opt/stack}
11STACK_LOG_PATH=${STACK_LOG_PATH:-/mnt/log/stack}
12
13cleanup() {
14 echo "**** cleanup"
15
16 # ensure teuthology can clean up the logs
17 [ -d ${STACK_LOG_PATH} ] && chmod -R a+rwx ${STACK_LOG_PATH}
18
19 # kill all OpenStack services
20 if [ -d ${STACK_OPT_PATH}/devstack ]; then
21 cd ${STACK_OPT_PATH}/devstack
22 sudo -H -u ${STACK_USER} ./unstack.sh || true
23 fi
24}
25
26trap cleanup INT TERM EXIT
27
28# devstack configuration adapted from upstream gate
29cat<<EOF > ${STACK_HOME_PATH}/local.conf
30[[local|localrc]]
31Q_USE_DEBUG_COMMAND=True
32NETWORK_GATEWAY=10.1.0.1
33USE_SCREEN=False
34DATA_DIR=${STACK_OPT_PATH}/data
35ACTIVE_TIMEOUT=90
36BOOT_TIMEOUT=90
37ASSOCIATE_TIMEOUT=60
38TERMINATE_TIMEOUT=60
39MYSQL_PASSWORD=secretmysql
40DATABASE_PASSWORD=secretdatabase
41RABBIT_PASSWORD=secretrabbit
42ADMIN_PASSWORD=secretadmin
43SERVICE_PASSWORD=secretservice
44SERVICE_TOKEN=111222333444
45SWIFT_HASH=1234123412341234
46ROOTSLEEP=0
47ENABLED_SERVICES=c-api,c-bak,c-sch,c-vol,ceilometer-acentral,ceilometer-acompute,ceilometer-alarm-evaluator,ceilometer-alarm-notifier,ceilometer-anotification,ceilometer-api,ceilometer-collector,cinder,dstat,g-api,g-reg,horizon,key,mysql,n-api,n-cauth,n-cond,n-cpu,n-novnc,n-obj,n-sch,peakmem_tracker,placement-api,q-agt,q-dhcp,q-l3,q-meta,q-metering,q-svc,rabbit,s-account,s-container,s-object,s-proxy,tempest
48SKIP_EXERCISES=boot_from_volume,bundle,client-env,euca
49SYSLOG=False
50SCREEN_LOGDIR=${STACK_LOG_PATH}/screen-logs
51LOGFILE=${STACK_LOG_PATH}/devstacklog.txt
52VERBOSE=True
53FIXED_RANGE=10.1.0.0/20
54IPV4_ADDRS_SAFE_TO_USE=10.1.0.0/20
55FLOATING_RANGE=172.24.5.0/24
56PUBLIC_NETWORK_GATEWAY=172.24.5.1
57FIXED_NETWORK_SIZE=4096
58VIRT_DRIVER=libvirt
59SWIFT_REPLICAS=1
60LOG_COLOR=False
61UNDO_REQUIREMENTS=False
62CINDER_PERIODIC_INTERVAL=10
63
64export OS_NO_CACHE=True
65OS_NO_CACHE=True
66CEILOMETER_BACKEND=mysql
67LIBS_FROM_GIT=
68DATABASE_QUERY_LOGGING=True
69EBTABLES_RACE_FIX=True
70CINDER_SECURE_DELETE=False
71CINDER_VOLUME_CLEAR=none
72LIBVIRT_TYPE=kvm
73VOLUME_BACKING_FILE_SIZE=24G
74TEMPEST_HTTP_IMAGE=http://git.openstack.org/static/openstack.png
75FORCE_CONFIG_DRIVE=False
76
77CINDER_ENABLED_BACKENDS=ceph:ceph
78TEMPEST_STORAGE_PROTOCOL=ceph
79REMOTE_CEPH=True
80enable_plugin devstack-plugin-ceph git://git.openstack.org/openstack/devstack-plugin-ceph
81EOF
82
83cat<<EOF > ${STACK_HOME_PATH}/start.sh
84#!/bin/bash -ex
85cd ${STACK_OPT_PATH}
86git clone https://git.openstack.org/openstack-dev/devstack -b ${STACK_BRANCH}
87
88# TODO workaround for https://github.com/pypa/setuptools/issues/951
89git clone https://git.openstack.org/openstack/requirements.git -b ${STACK_BRANCH}
90sed -i 's/appdirs===1.4.0/appdirs===1.4.3/' requirements/upper-constraints.txt
91
92cd devstack
93cp ${STACK_HOME_PATH}/local.conf .
94
95export PYTHONUNBUFFERED=true
96export PROJECTS="openstack/devstack-plugin-ceph"
97
98./stack.sh
99EOF
100
101# execute devstack
102chmod 0755 ${STACK_HOME_PATH}/start.sh
103sudo -H -u ${STACK_USER} ${STACK_HOME_PATH}/start.sh
104
105# execute tempest
106chown -R ${TEMPEST_USER}:${STACK_GROUP} ${STACK_OPT_PATH}/tempest
107chown -R ${TEMPEST_USER}:${STACK_GROUP} ${STACK_OPT_PATH}/data/tempest
108chmod -R o+rx ${STACK_OPT_PATH}/devstack/files
109
110cd ${STACK_OPT_PATH}/tempest
111sudo -H -u ${TEMPEST_USER} tox -eall-plugin -- '(?!.*\[.*\bslow\b.*\])(^tempest\.(api|scenario)|(^cinder\.tests.tempest))' --concurrency=3