Fixes to docker run
[sdc.git] / cucumber-js-test-apis-ci / docker_run.sh
1 #!/bin/bash
2
3
4 # checking some stuff for local run
5 if [ -z "$BUILD_NUMBER" ]
6 then
7     if [ -z "$WORKSPACE" ]
8     then
9         currentDir=`pwd`
10         cd ../
11         WORKSPACE=`pwd`
12         cd $currentDir
13     fi
14     if [ -z "$IMAGES_TAG" ]
15     then
16         IMAGES_TAG=1.4-STAGING-latest
17     fi
18 fi
19 echo "Workspace under: $WORKSPACE"
20 # add dynamic ports from kubernetes master
21 if [ -z "$TEST_CI_BE_HOST" ]
22 then
23     TEST_CI_BE_HOST="$(ifconfig  'eth0' | sed -n '2p' | awk '{print $2}' | sed 's/addr://g')"
24     TEST_CI_BE_PORT=8081
25     TEST_CI_CATALOG_HOST=$TEST_CI_BE_HOST
26     TEST_CI_AP_HOST=$TEST_CI_BE_HOST
27     TEST_CI_AP_PORT=8080
28 fi
29 if [ -z "$TEST_CI_CATALOG_PORT" ]
30 then
31     TEST_CI_CATALOG_PORT=8080
32 fi
33
34 echo "host $TEST_CI_BE_HOST"
35
36 if [ -e "$WORKSPACE/data" ]
37 then
38         rm -Rf $WORKSPACE/data
39 fi
40
41
42 mkdir -p $WORKSPACE/data/logs/cucumber
43 mkdir -p $WORKSPACE/data/scripts
44 mkdir -p $WORKSPACE/data/environments
45
46 cp $WORKSPACE/sdc-os-chef/environments/Template.json $WORKSPACE/TEST_CI.json
47 cp $WORKSPACE/sdc-os-chef/scripts/docker_run.sh $WORKSPACE/data/scripts
48 cp $WORKSPACE/cucumber-js-test-apis-ci/config.json $WORKSPACE/data/environments/dockerConfig.json
49
50
51 chmod 777 $WORKSPACE/data/scripts/docker_run.sh
52
53 sed -i "s/xxx/TEST_CI/g" $WORKSPACE/TEST_CI.json
54 sed -i "s/yyy/$TEST_CI_BE_HOST/g" $WORKSPACE/TEST_CI.json
55 mv $WORKSPACE/TEST_CI.json $WORKSPACE/data/environments
56
57 sed -i "s/8080:8080/$TEST_CI_CATALOG_PORT:8080/g" $WORKSPACE/data/scripts/docker_run.sh
58 sed -i "s/:8080\/sdc/:$TEST_CI_CATALOG_PORT\/sdc/g" $WORKSPACE/data/scripts/docker_run.sh
59
60
61 echo "getting images for $IMAGES_TAG"
62 $WORKSPACE/data/scripts/docker_run.sh -e TEST_CI -r $IMAGES_TAG -p 10001
63
64 echo "setting configuration"
65
66 sed -i "s/onboarding.port/$TEST_CI_BE_PORT/g" $WORKSPACE/data/environments/dockerConfig.json
67 sed -i "s/onboarding.server/$TEST_CI_BE_HOST/g" $WORKSPACE/data/environments/dockerConfig.json
68 sed -i "s/onboarding.user/cs0008/g" $WORKSPACE/data/environments/dockerConfig.json
69 sed -i "s/CatalogBE.port/$TEST_CI_CATALOG_PORT/g" $WORKSPACE/data/environments/dockerConfig.json
70 sed -i "s/CatalogBE.server/$TEST_CI_CATALOG_HOST/g" $WORKSPACE/data/environments/dockerConfig.json
71 sed -i "s/CatalogBE.user/cs0008/g" $WORKSPACE/data/environments/dockerConfig.json
72 sed -i "s/activity_spec.port/$TEST_CI_AP_PORT/g" $WORKSPACE/data/environments/dockerConfig.json
73 sed -i "s/activity_spec.server/$TEST_CI_AP_HOST/g" $WORKSPACE/data/environments/dockerConfig.json
74 sed -i "s/activity_spec.user/cs0008/g" $WORKSPACE/data/environments/dockerConfig.json
75
76 cat $WORKSPACE/data/environments/dockerConfig.json
77
78 echo "time to run the cucumber"
79
80 # TODO check status and tar stuff
81 docker run --name cucumber-sdc-api-tests --volume $WORKSPACE/data/environments:/var/lib/tests/environments --volume $WORKSPACE/data/logs/cucumber:/var/lib/tests/report onap/cucumber-sdc-api-tests:latest
82 echo "Checking exit status"
83 DOCKER_ID=`docker ps -a --filter name="cucumber-sdc-api-test" --format "{{.ID}}"`
84 EXIT_STATUS=`docker inspect  --format='{{.State.ExitCode}}' $DOCKER_ID`
85 docker rm -f $DOCKER_ID
86 echo "Exit status: $EXIT_STATUS"
87 echo " logs can be found under $WORKSPACE/data/logs"
88
89 echo "removing all the dockers"
90 docker ps -a --filter "name=sdc-" | grep $IMAGES_TAG | cut -d " " -f1 | xargs docker rm -f
91
92 exit $EXIT_STATUS
93