]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | #!/bin/bash -ex |
2 | ||
3 | STACK_BRANCH=stable/ocata | |
4 | ||
5 | STACK_USER=${STACK_USER:-stack} | |
6 | STACK_GROUP=${STACK_GROUP:-stack} | |
7 | TEMPEST_USER=${TEMPEST_USER:-tempest} | |
8 | ||
9 | STACK_HOME_PATH=${STACK_HOME_PATH:-/home/stack} | |
10 | STACK_OPT_PATH=${STACK_OPT_PATH:-/opt/stack} | |
11 | STACK_LOG_PATH=${STACK_LOG_PATH:-/mnt/log/stack} | |
12 | ||
13 | cleanup() { | |
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 | ||
224ce89b WB |
19 | mkdir ${STACK_LOG_PATH}/etc |
20 | cp -dpr /etc/cinder ${STACK_LOG_PATH}/etc || true | |
21 | cp -dpr /etc/glance ${STACK_LOG_PATH}/etc || true | |
22 | cp -dpr /etc/nova ${STACK_LOG_PATH}/etc || true | |
23 | ||
7c673cae FG |
24 | # kill all OpenStack services |
25 | if [ -d ${STACK_OPT_PATH}/devstack ]; then | |
26 | cd ${STACK_OPT_PATH}/devstack | |
27 | sudo -H -u ${STACK_USER} ./unstack.sh || true | |
28 | fi | |
29 | } | |
30 | ||
31 | trap cleanup INT TERM EXIT | |
32 | ||
33 | # devstack configuration adapted from upstream gate | |
34 | cat<<EOF > ${STACK_HOME_PATH}/local.conf | |
35 | [[local|localrc]] | |
36 | Q_USE_DEBUG_COMMAND=True | |
37 | NETWORK_GATEWAY=10.1.0.1 | |
38 | USE_SCREEN=False | |
39 | DATA_DIR=${STACK_OPT_PATH}/data | |
40 | ACTIVE_TIMEOUT=90 | |
41 | BOOT_TIMEOUT=90 | |
42 | ASSOCIATE_TIMEOUT=60 | |
43 | TERMINATE_TIMEOUT=60 | |
44 | MYSQL_PASSWORD=secretmysql | |
45 | DATABASE_PASSWORD=secretdatabase | |
46 | RABBIT_PASSWORD=secretrabbit | |
47 | ADMIN_PASSWORD=secretadmin | |
48 | SERVICE_PASSWORD=secretservice | |
49 | SERVICE_TOKEN=111222333444 | |
50 | SWIFT_HASH=1234123412341234 | |
51 | ROOTSLEEP=0 | |
224ce89b | 52 | NOVNC_FROM_PACKAGE=True |
7c673cae FG |
53 | ENABLED_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 |
54 | SKIP_EXERCISES=boot_from_volume,bundle,client-env,euca | |
55 | SYSLOG=False | |
56 | SCREEN_LOGDIR=${STACK_LOG_PATH}/screen-logs | |
57 | LOGFILE=${STACK_LOG_PATH}/devstacklog.txt | |
58 | VERBOSE=True | |
59 | FIXED_RANGE=10.1.0.0/20 | |
60 | IPV4_ADDRS_SAFE_TO_USE=10.1.0.0/20 | |
61 | FLOATING_RANGE=172.24.5.0/24 | |
62 | PUBLIC_NETWORK_GATEWAY=172.24.5.1 | |
63 | FIXED_NETWORK_SIZE=4096 | |
64 | VIRT_DRIVER=libvirt | |
65 | SWIFT_REPLICAS=1 | |
66 | LOG_COLOR=False | |
67 | UNDO_REQUIREMENTS=False | |
68 | CINDER_PERIODIC_INTERVAL=10 | |
69 | ||
70 | export OS_NO_CACHE=True | |
71 | OS_NO_CACHE=True | |
72 | CEILOMETER_BACKEND=mysql | |
73 | LIBS_FROM_GIT= | |
74 | DATABASE_QUERY_LOGGING=True | |
75 | EBTABLES_RACE_FIX=True | |
76 | CINDER_SECURE_DELETE=False | |
77 | CINDER_VOLUME_CLEAR=none | |
78 | LIBVIRT_TYPE=kvm | |
79 | VOLUME_BACKING_FILE_SIZE=24G | |
80 | TEMPEST_HTTP_IMAGE=http://git.openstack.org/static/openstack.png | |
81 | FORCE_CONFIG_DRIVE=False | |
82 | ||
83 | CINDER_ENABLED_BACKENDS=ceph:ceph | |
84 | TEMPEST_STORAGE_PROTOCOL=ceph | |
85 | REMOTE_CEPH=True | |
86 | enable_plugin devstack-plugin-ceph git://git.openstack.org/openstack/devstack-plugin-ceph | |
87 | EOF | |
88 | ||
89 | cat<<EOF > ${STACK_HOME_PATH}/start.sh | |
90 | #!/bin/bash -ex | |
91 | cd ${STACK_OPT_PATH} | |
92 | git clone https://git.openstack.org/openstack-dev/devstack -b ${STACK_BRANCH} | |
93 | ||
94 | # TODO workaround for https://github.com/pypa/setuptools/issues/951 | |
95 | git clone https://git.openstack.org/openstack/requirements.git -b ${STACK_BRANCH} | |
96 | sed -i 's/appdirs===1.4.0/appdirs===1.4.3/' requirements/upper-constraints.txt | |
97 | ||
98 | cd devstack | |
99 | cp ${STACK_HOME_PATH}/local.conf . | |
100 | ||
101 | export PYTHONUNBUFFERED=true | |
102 | export PROJECTS="openstack/devstack-plugin-ceph" | |
103 | ||
104 | ./stack.sh | |
105 | EOF | |
106 | ||
107 | # execute devstack | |
108 | chmod 0755 ${STACK_HOME_PATH}/start.sh | |
109 | sudo -H -u ${STACK_USER} ${STACK_HOME_PATH}/start.sh | |
110 | ||
c07f9fc5 FG |
111 | # switch to rbd profile caps |
112 | ceph auth caps client.cinder mon 'profile rbd' osd 'profile rbd pool=volumes, profile rbd pool=vms, profile rbd pool=images' | |
113 | ceph auth caps client.cinder-bak mon 'profile rbd' osd 'profile rbd pool=backups, profile rbd pool=volumes' | |
114 | ceph auth caps client.glance mon 'profile rbd' osd 'profile rbd pool=images' | |
115 | ||
7c673cae FG |
116 | # execute tempest |
117 | chown -R ${TEMPEST_USER}:${STACK_GROUP} ${STACK_OPT_PATH}/tempest | |
118 | chown -R ${TEMPEST_USER}:${STACK_GROUP} ${STACK_OPT_PATH}/data/tempest | |
119 | chmod -R o+rx ${STACK_OPT_PATH}/devstack/files | |
120 | ||
121 | cd ${STACK_OPT_PATH}/tempest | |
122 | sudo -H -u ${TEMPEST_USER} tox -eall-plugin -- '(?!.*\[.*\bslow\b.*\])(^tempest\.(api|scenario)|(^cinder\.tests.tempest))' --concurrency=3 |