blob: a89a1625eb589e61ee96fa5a1189b67338f7125f [file] [log] [blame]
Aleksandra Maciaga6def5972020-02-20 09:42:03 +01001#!/bin/bash
2#
Bogumil Zebek78bc8f32020-02-27 07:39:38 +01003# Copyright 2020 Nokia.
Aleksandra Maciaga6def5972020-02-20 09:42:03 +01004#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16#
17
Bogumil Zebek78bc8f32020-02-27 07:39:38 +010018# ------------------------------------
Aleksandra Maciaga93f9ea42020-03-03 13:38:58 +010019# Resolve path to script's directory and cmp servers configuration
Bogumil Zebek78bc8f32020-02-27 07:39:38 +010020
21SCRIPT=`realpath $0`
22CURRENT_WORKDIR_PATH=`dirname $SCRIPT`
Aleksandra Maciaga93f9ea42020-03-03 13:38:58 +010023PROJECT_DIRECTORY="plans/aaf/certservice"
Bogumil Zebek78bc8f32020-02-27 07:39:38 +010024
Aleksandra Maciaga7a5e3f62020-03-03 12:35:16 +010025SCRIPTS_DIRECTORY="scripts"
Aleksandra Maciaga93f9ea42020-03-03 13:38:58 +010026
27JENKINS_SCRIPTS_PATH="$CURRENT_WORKDIR_PATH/$PROJECT_DIRECTORY/$SCRIPTS_DIRECTORY"
28LOCAL_SCRIPTS_PATH="$CURRENT_WORKDIR_PATH/$SCRIPTS_DIRECTORY"
29
30if test -d "$JENKINS_SCRIPTS_PATH"; then
31 SCRIPTS_PATH=$JENKINS_SCRIPTS_PATH
32else test -f "$LOCAL_SCRIPTS_PATH";
33 SCRIPTS_PATH=$LOCAL_SCRIPTS_PATH
Aleksandra Maciaga7a5e3f62020-03-03 12:35:16 +010034fi
35echo "Use scripts from: $SCRIPTS_PATH"
36
Bogumil Zebek78bc8f32020-02-27 07:39:38 +010037CONFIGURATION_FILE="cmpServers.json"
Aleksandra Maciaga93f9ea42020-03-03 13:38:58 +010038
39JENKINS_CONFIGURATION_PATH="$CURRENT_WORKDIR_PATH/$PROJECT_DIRECTORY/$CONFIGURATION_FILE"
40LOCAL_CONFIGURATION_PATH="$CURRENT_WORKDIR_PATH/$CONFIGURATION_FILE"
41
42if test -f "$JENKINS_CONFIGURATION_PATH"; then
43 CONFIGURATION_PATH="$JENKINS_CONFIGURATION_PATH"
44else test -f "$LOCAL_CONFIGURATION_PATH";
45 CONFIGURATION_PATH=$LOCAL_CONFIGURATION_PATH
Bogumil Zebek78bc8f32020-02-27 07:39:38 +010046fi
47echo "Use configuration from: $CONFIGURATION_PATH"
Aleksandra Maciaga7a5e3f62020-03-03 12:35:16 +010048
Bogumil Zebek78bc8f32020-02-27 07:39:38 +010049# -------------------------------------
50
Aleksandra Maciaga7a5e3f62020-03-03 12:35:16 +010051export CONFIGURATION_PATH=${CONFIGURATION_PATH}
52export SCRIPTS_PATH=${SCRIPTS_PATH}
53
54docker-compose up -d
Aleksandra Maciaga6def5972020-02-20 09:42:03 +010055
Aleksandra Maciaga7ce07992020-03-09 10:01:12 +010056AAFCERT_IP='none'
Aleksandra Maciaga6def5972020-02-20 09:42:03 +010057# Wait container ready
Aleksandra Maciaga7ce07992020-03-09 10:01:12 +010058for i in {1..9}
59do
60 AAFCERT_IP=`get-instance-ip.sh aafcert`
61 RESP_CODE=$(curl -I -s -o /dev/null -w "%{http_code}" http://${AAFCERT_IP}:8080/actuator/health)
62 if [[ "$RESP_CODE" == '200' ]]; then
63 echo 'AAF Cert Service is ready'
64 export AAFCERT_IP=${AAFCERT_IP}
65 docker exec aafcert-ejbca /opt/primekey/scripts/ejbca-configuration.sh
66 break
67 fi
68 echo 'Waiting for AAF Cert Service to start up...'
69 sleep 30s
70done
Aleksandra Maciaga6def5972020-02-20 09:42:03 +010071
Aleksandra Maciaga7ce07992020-03-09 10:01:12 +010072if [[ $AAFCERT_IP == 'none' ] || [ $AAFCERT_IP == '' ]]; then
73 echo "AAF Cert Service is not ready!"
74 exit 1 # Return error code
75fi