4738121dece6372ec8f536b3bd5d76ade88a7c1f
[releng.git] / jjb / functest / functest-env-presetup.sh
1 #!/usr/bin/env bash
2 set -o errexit
3 set -o nounset
4 set -o pipefail
5
6 # Fetch INSTALLER_IP for APEX deployments
7 if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
8     echo "Gathering IP information for Apex installer VM"
9     ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
10     if sudo virsh list | grep undercloud; then
11         echo "Installer VM detected"
12         undercloud_mac=$(sudo virsh domiflist undercloud | grep default | \
13                       grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+")
14         export INSTALLER_IP=$(/usr/sbin/arp -e | grep ${undercloud_mac} | awk {'print $1'})
15         export sshkey_vol="-v /root/.ssh/id_rsa:/root/.ssh/id_rsa"
16         sudo scp $ssh_options root@${INSTALLER_IP}:/home/stack/stackrc ${HOME}/stackrc
17         export stackrc_vol="-v ${HOME}/stackrc:/home/opnfv/functest/conf/stackrc"
18
19         if sudo iptables -C FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable 2> ${redirect}; then
20             sudo iptables -D FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
21         fi
22         if sudo iptables -C FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable 2> ${redirect}; then
23           sudo iptables -D FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable
24         fi
25         echo "Installer ip is ${INSTALLER_IP}"
26     else
27         echo "No available installer VM exists and no credentials provided...exiting"
28         exit 1
29     fi
30
31 elif [[ ${INSTALLER_TYPE} == 'daisy' ]]; then
32     echo "Gathering IP information for Daisy installer VM"
33     if sudo virsh list | grep daisy; then
34         echo "Installer VM detected"
35
36         bridge_name=$(sudo virsh domiflist daisy | grep vnet | awk '{print $3}')
37         echo "Bridge is $bridge_name"
38
39         installer_mac=$(sudo virsh domiflist daisy | grep vnet | \
40                       grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+")
41         export INSTALLER_IP=$(/usr/sbin/arp -e -i $bridge_name | grep ${installer_mac} | head -n 1 | awk {'print $1'})
42
43         echo "Installer ip is ${INSTALLER_IP}"
44     else
45         echo "No available installer VM exists...exiting"
46         exit 1
47     fi
48
49 elif [[ ${INSTALLER_TYPE} == 'fuel' ]]; then
50     if [[ ! "${BRANCH}" =~ "danube" ]]; then
51         echo "Map mcp ssh_key"
52         export sshkey_vol="-v ${SSH_KEY}:/root/.ssh/id_rsa"
53     fi
54 fi
55