Add full status for nbi healthcheck
[testsuite.git] / setup.sh
1 #!/bin/bash
2 #
3 # setup : script to setup required runtime environment. This script can be run again to update anything
4 # this should stay in your project directory
5
6
7 # save console output in setup_<timestamp>.log file in project directory
8 timestamp=$(date +"%m%d%Y_%H%M%S")
9 LOG_FILE=setup_$timestamp.log
10 exec > >(tee -a ${LOG_FILE} )
11 exec 2> >(tee -a ${LOG_FILE} >&2)
12
13
14 # get the path
15 path=$(pwd)
16 pip install \
17 --no-cache-dir \
18 --exists-action s \
19 --target="$path/robot/library" \
20 'robotframework-seleniumlibrary==3.3.1' \
21 'robotframework-databaselibrary==1.2' \
22 'robotframework-angularjs==0.0.9' \
23 'robotframework-requests==0.5.0' \
24 'robotframework-sshlibrary==3.3.0' \
25 'robotframework-ftplibrary==1.6' \
26 'robotframework-archivelibrary==0.4.0' \
27 'robotframework-jsonlibrary==0.3.1'
28
29 pip install \
30 --pre \
31 --no-cache-dir \
32 --exists-action s \
33 --target="$path/robot/library" \
34 --extra-index-url="https://nexus3.onap.org/repository/PyPi.staging/simple" \
35 'robotframework-onap==0.6.0.*'
36
37 # i dont why we need this, but lets protobuf work in docker
38 touch /var/opt/ONAP/robot/library/google/__init__.py
39
40 if [ -d $path/testsuite/heatbridge ]
41 then
42     # Support LF build location
43         cd $path/testsuite/heatbridge
44 else
45         cd ~
46         git config --global http.sslVerify false
47         if [ -d ~/heatbridge ]
48         then
49                 cd heatbridge
50                 git pull origin master
51         else
52                 git clone https://gerrit.onap.org/r/testsuite/heatbridge.git
53                 cd heatbridge
54         fi
55 fi
56
57 pip install \
58 --no-cache-dir \
59 --upgrade \
60 --exists-action s \
61 --target="$path/robot/library" \
62 ./heatbridge
63
64 sed -i 's/cinderclient\.v1\.client/cinderclient\.v2\.client/g' /var/opt/ONAP/robot/library/heatbridge/OpenstackManager.py
65
66 # Go back to execution folder
67 cd $path
68
69 # if the script is running during the image build skip the rest of it
70 # as required software is installed already.
71 if $BUILDTIME
72 then
73         # we need to update PATH with chromium-chromedriver
74         echo "Adding in-container chromedriver to PATH"
75         ln -s /usr/lib/chromium-browser/chromedriver /usr/local/bin/chromedriver
76
77         echo "Skipping desktop steps, building container image..."
78 else
79         #
80         # Get the appropriate chromedriver. Default to linux64
81         #
82         CHROMEDRIVER_URL=http://chromedriver.storage.googleapis.com/75.0.3770.140
83         CHROMEDRIVER_ZIP=chromedriver_linux64.zip
84         CHROMEDRIVER_TARGET=chromedriver.zip
85
86         # Handle mac and windows
87         OS=`uname -s`
88         case $OS in
89           MINGW*_NT*)
90                 CHROMEDRIVER_ZIP=chromedriver_win32.zip
91                 ;;
92           Darwin*)
93                 CHROMEDRIVER_ZIP=chromedriver_mac64.zip
94                 ;;
95           *) echo "Defaulting to Linux 64" ;;
96         esac
97
98         if [ $CHROMEDRIVER_ZIP == 'chromedriver_linux64.zip' ]
99         then
100             curl $CHROMEDRIVER_URL/$CHROMEDRIVER_ZIP -o $CHROMEDRIVER_TARGET
101                 unzip chromedriver.zip -d /usr/local/bin
102         else
103             curl $CHROMEDRIVER_URL/$CHROMEDRIVER_ZIP -o $CHROMEDRIVER_TARGET
104                 unzip $CHROMEDRIVER_TARGET
105         fi
106         rm -rf $CHROMEDRIVER_TARGET
107 fi