blob: a3b05b785dd97033532fcf2d5fd48981cccc6eaa (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#!/bin/sh
MAX_ATTEMPTS=3
# create and activate virtual env
virtualenv env
. env/bin/activate
# create SSH key pair of 4096 bits to use it for instances at Rackspace
ssh-keygen -f "${WORKSPACE}"/key -t rsa -b 4096
# Install dependencies
pip install pyrax ansible
#create the server maachines
/opt/qa/distributed-tests/rackspace-server-manager.py create -n "${MACHINES_COUNT}"
for retry in $(seq 1 $MAX_ATTEMPTS)
do
ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i hosts --private-key=key /opt/qa/distributed-tests/distributed-server.yml -u root
ret=$?
if [ $ret -eq 0 ]; then
break
fi
echo 'Attempting to run again...'
done
# run the script of distributed-test
/opt/qa/distributed-tests/run-distributed-test.py
ret=$?
#delete the server machines
/opt/qa/distributed-tests/rackspace-server-manager.py delete
if [ $ret -ne 0 ]; then
# Create tar file from all the failed test log files generated in /tmp
tar -czf "$WORKSPACE"/failed-tests-logs.tgz /tmp/*.log
scp -o "UserKnownHostsFile=/dev/null" -o "StrictHostKeyChecking=no" -i "$LOG_KEY" failed-tests-logs.tgz "_logs-collector@http.int.rht.gluster.org:/var/www/glusterfs-logs/$JOB_NAME-logs-$BUILD_ID.tgz" || true;
echo "Failed tests logs stored in https://ci-logs.gluster.org/$JOB_NAME-logs-$BUILD_ID.tgz"
exit $ret
else
exit 0
fi
|