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