3 # Copyright 2020 Nokia.
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
9 # http://www.apache.org/licenses/LICENSE-2.0
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.
18 # ------------------------------------
19 # Resolve path to script's directory and cmp servers configuration
22 CURRENT_WORKDIR_PATH=`dirname $SCRIPT`
23 PROJECT_DIRECTORY="plans/aaf/certservice"
25 SCRIPTS_DIRECTORY="scripts"
27 JENKINS_SCRIPTS_PATH="$CURRENT_WORKDIR_PATH/$PROJECT_DIRECTORY/$SCRIPTS_DIRECTORY"
28 LOCAL_SCRIPTS_PATH="$CURRENT_WORKDIR_PATH/$SCRIPTS_DIRECTORY"
30 # ------------------------------------
31 #Prepare enviroment for client
33 echo "Uninstall docker-py and reinstall docker."
34 pip uninstall -y docker-py
35 pip uninstall -y docker
36 pip install -U docker==2.7.0
38 #Disable proxy - for local run
39 unset http_proxy https_proxy
41 #export container name
42 export ClientContainerName=CertServiceClient
43 # ------------------------------------
45 if test -d "$JENKINS_SCRIPTS_PATH"; then
46 SCRIPTS_PATH=$JENKINS_SCRIPTS_PATH
47 else test -f "$LOCAL_SCRIPTS_PATH";
48 SCRIPTS_PATH=$LOCAL_SCRIPTS_PATH
50 echo "Use scripts from: $SCRIPTS_PATH"
52 CONFIGURATION_FILE="cmpServers.json"
54 JENKINS_CONFIGURATION_PATH="$CURRENT_WORKDIR_PATH/$PROJECT_DIRECTORY/$CONFIGURATION_FILE"
55 LOCAL_CONFIGURATION_PATH="$CURRENT_WORKDIR_PATH/$CONFIGURATION_FILE"
57 if test -f "$JENKINS_CONFIGURATION_PATH"; then
58 CONFIGURATION_PATH="$JENKINS_CONFIGURATION_PATH"
59 else test -f "$LOCAL_CONFIGURATION_PATH";
60 CONFIGURATION_PATH=$LOCAL_CONFIGURATION_PATH
62 echo "Use configuration from: $CONFIGURATION_PATH"
64 # -------------------------------------
66 export CONFIGURATION_PATH=${CONFIGURATION_PATH}
67 export SCRIPTS_PATH=${SCRIPTS_PATH}
72 # Wait container ready
75 AAFCERT_IP=`get-instance-ip.sh aafcert`
76 RESP_CODE=$(curl -I -s -o /dev/null -w "%{http_code}" http://${AAFCERT_IP}:8080/actuator/health)
77 if [[ "$RESP_CODE" == '200' ]]; then
78 echo 'AAF Cert Service is ready'
79 export AAFCERT_IP=${AAFCERT_IP}
80 docker exec aafcert-ejbca /opt/primekey/scripts/ejbca-configuration.sh
83 echo 'Waiting for AAF Cert Service to start up...'
87 if [ "$AAFCERT_IP" == 'none' -o "$AAFCERT_IP" == '' ]; then
88 echo "AAF Cert Service is not ready!"
89 exit 1 # Return error code