Add CSIT for Cert Service Client
[integration/csit.git] / plans / aaf / certservice / setup.sh
index 17a278d..995b31d 100644 (file)
@@ -27,6 +27,18 @@ SCRIPTS_DIRECTORY="scripts"
 JENKINS_SCRIPTS_PATH="$CURRENT_WORKDIR_PATH/$PROJECT_DIRECTORY/$SCRIPTS_DIRECTORY"
 LOCAL_SCRIPTS_PATH="$CURRENT_WORKDIR_PATH/$SCRIPTS_DIRECTORY"
 
+# ------------------------------------
+#Prepare enviroment for client
+#install docker sdk
+echo "Uninstall docker-py and reinstall docker."
+pip uninstall -y docker-py
+pip uninstall -y docker
+pip install -U docker==2.7.0
+
+#export container name
+export ClientContainerName=CertServiceClient
+# ------------------------------------
+
 if test -d "$JENKINS_SCRIPTS_PATH"; then
     SCRIPTS_PATH=$JENKINS_SCRIPTS_PATH
 else test -f "$LOCAL_SCRIPTS_PATH";
@@ -53,9 +65,23 @@ export SCRIPTS_PATH=${SCRIPTS_PATH}
 
 docker-compose up -d
 
-AAFCERT_IP=`get-instance-ip.sh aafcert`
-export AAFCERT_IP=${AAFCERT_IP}
-
+AAFCERT_IP='none'
 # Wait container ready
-sleep 10
+for i in {1..9}
+do
+   AAFCERT_IP=`get-instance-ip.sh aafcert`
+   RESP_CODE=$(curl -I -s -o /dev/null -w "%{http_code}"  http://${AAFCERT_IP}:8080/actuator/health)
+   if [[ "$RESP_CODE" == '200' ]]; then
+       echo 'AAF Cert Service is ready'
+       export AAFCERT_IP=${AAFCERT_IP}
+       docker exec aafcert-ejbca /opt/primekey/scripts/ejbca-configuration.sh
+       break
+   fi
+   echo 'Waiting for AAF Cert Service to start up...'
+   sleep 30s
+done
 
+if [[ $AAFCERT_IP == 'none' ] || [ $AAFCERT_IP == '' ]]; then
+    echo "AAF Cert Service is not ready!"
+    exit 1 # Return error code
+fi