Add DC gateway configplan
[integration/test.git] / csit / scripts / dcgw-setup.sh
1 #!/bin/bash
2
3 cat > ${WORKSPACE}/dcgw-setup.sh <<EOF
4
5     echo "DC-Gateway install procedure"
6     Nexus_url="https://nexus.opendaylight.org/content/repositories/thirdparty/quagga4"
7     HOST_NAME=\`hostname\`
8     case \${HOST_NAME} in
9     *builder*)
10
11         echo "install rpm packages "
12         sudo rm -rf /tmp/install-quagga
13         sudo mkdir /tmp/install-quagga/
14         cd /tmp/install-quagga/
15         c_capn="c-capnproto/1.0.2.75f7901.CentOS7.4.1708-0.x86_64/c-capnproto-1.0.2.75f7901.CentOS7.4.1708-0.x86_64"
16         thirft="thrift/1.0.0.b2a4d4a.CentOS7.4.1708-0.x86_64/thrift-1.0.0.b2a4d4a.CentOS7.4.1708-0.x86_64"
17         zmq="zmq/4.1.3.56b71af.CentOS7.4.1708-0.x86_64/zmq-4.1.3.56b71af.CentOS7.4.1708-0.x86_64"
18         quagga="quagga/1.1.0.837f143.CentOS7.4.1708-0.x86_64/quagga-1.1.0.837f143.CentOS7.4.1708-0.x86_64"
19         zrpc="zrpc/0.2.56d11ae.thriftv4.CentOS7.4.1708-0.x86_64/zrpc-0.2.56d11ae.thriftv4.CentOS7.4.1708-0.x86_64"
20         for pkg in \${c_capn} \${thirft} \${zmq} \${quagga} \${zrpc}
21         do
22             sudo wget \${Nexus_url}/\${pkg}.rpm
23         done
24         sudo rpm -Uvh c-capnproto-1.0.2.75f7901.CentOS7.4.1708-0.x86_64.rpm
25         sudo rpm -Uvh thrift-1.0.0.b2a4d4a.CentOS7.4.1708-0.x86_64.rpm
26         sudo rpm -Uvh zmq-4.1.3.56b71af.CentOS7.4.1708-0.x86_64.rpm
27         sudo rpm -Uvh quagga-1.1.0.837f143.CentOS7.4.1708-0.x86_64.rpm
28         sudo rpm -Uvh zrpc-0.2.56d11ae.thriftv4.CentOS7.4.1708-0.x86_64.rpm
29         ;;
30
31     *devstack*)
32
33         echo "Quagga is not needed on devstack nodes"
34         ;;
35
36     *)
37
38         echo "install debian packages"
39         sudo rm -rf /tmp/install-quagga
40         sudo mkdir -p /tmp/install-quagga/
41         cd /tmp/install-quagga/
42         c_capn="c-capnproto/1.0.2.75f7901.Ubuntu16.04/c-capnproto-1.0.2.75f7901.Ubuntu16.04"
43         thirft="thrift/1.0.0.b2a4d4a.Ubuntu16.04/thrift-1.0.0.b2a4d4a.Ubuntu16.04"
44         zmq="zmq/4.1.3.56b71af.Ubuntu16.04/zmq-4.1.3.56b71af.Ubuntu16.04"
45         quagga="quagga/1.1.0.837f143.Ubuntu16.04/quagga-1.1.0.837f143.Ubuntu16.04"
46         zrpc="zrpc/0.2.56d11ae.thriftv4.Ubuntu16.04/zrpc-0.2.56d11ae.thriftv4.Ubuntu16.04"
47         for pkg in \${c_capn} \${thirft} \${zmq} \${quagga} \${zrpc}
48         do
49             sudo wget \${Nexus_url}/\${pkg}.deb
50         done
51         pkill -f dpkg
52         sudo rm /var/lib/dpkg/lock
53         sudo dpkg --configure -a
54         dpkg -i thrift-1.0.0.b2a4d4a.Ubuntu16.04.deb
55         dpkg -i c-capnproto-1.0.2.75f7901.Ubuntu16.04.deb
56         dpkg -i zmq-4.1.3.56b71af.Ubuntu16.04.deb
57         dpkg -i quagga-1.1.0.837f143.Ubuntu16.04.deb
58         dpkg -i zrpc-0.2.56d11ae.thriftv4.Ubuntu16.04.deb
59         ;;
60     esac
61 EOF
62
63 if [ ${NUM_TOOLS_SYSTEM} -ne 0 ]; then
64     for i in `seq 1 ${NUM_ODL_SYSTEM}`
65     do
66         ODLIP=ODL_SYSTEM_${i}_IP
67
68         echo "Execute the DC-Gateway install procedure on all the ODL VMS"
69         echo "Copying and running the /tmp/dcgw-setup.sh to ODL System  IP ${!ODLIP}"
70         scp ${WORKSPACE}/dcgw-setup.sh ${!ODLIP}:/tmp/
71         ssh ${!ODLIP} 'sudo bash /tmp/dcgw-setup.sh'
72     done
73
74     for i in `seq 1 ${NUM_TOOLS_SYSTEM}`
75     do
76         TOOLIP=TOOLS_SYSTEM_${i}_IP
77
78         echo "Execute the DC-Gateway install procedure on all the tools VMS"
79         echo "Copying and running the /tmp/dcgw-setup.sh to Tools System IP ${!TOOLIP}"
80         scp ${WORKSPACE}/dcgw-setup.sh ${!TOOLIP}:/tmp/
81         ssh ${!TOOLIP} 'sudo bash /tmp/dcgw-setup.sh'
82     done
83 else
84
85     echo "Quagga installation is not required in any of nodes"
86 fi