summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorInstrumental <jonathan.gathman@att.com>2018-11-03 14:38:21 -0500
committerInstrumental <jonathan.gathman@att.com>2018-11-04 08:50:48 -0600
commitca788dc542830b054f0a46df2dfd774fc318872c (patch)
treee560db799400396278923b7cf1dbf6b40834901a
parent014494d662fee62eb0911b693aa6baf0ba54e26f (diff)
Liveness for CSIT
Issue-ID: AAF-606 Change-Id: I740c153d36d7428fbe0b35e8e997d1a5603d6f63 Signed-off-by: Instrumental <jonathan.gathman@att.com>
-rw-r--r--auth/auth-cass/docker/drun.sh1
-rw-r--r--auth/docker/Dockerfile.config1
-rw-r--r--auth/docker/aaf.sh19
-rw-r--r--auth/docker/drun.sh27
-rw-r--r--auth/sample/bin/pod_wait.sh50
-rw-r--r--auth/sample/bin/service.sh3
6 files changed, 79 insertions, 22 deletions
diff --git a/auth/auth-cass/docker/drun.sh b/auth/auth-cass/docker/drun.sh
index 1bcff83c..7d05c7f9 100644
--- a/auth/auth-cass/docker/drun.sh
+++ b/auth/auth-cass/docker/drun.sh
@@ -27,6 +27,7 @@ if [ "`$DOCKER ps -a | grep aaf_cass`" == "" ]; then
-e CASSANDRA_DC=dc1 \
-e CASSANDRA_CLUSTER_NAME=osaaf \
-v "aaf_cass_data:/var/lib/cassandra" \
+ -v "aaf_status:/opt/app/aaf/status" \
$PUBLISH \
-d ${PREFIX}${ORG}/${PROJECT}/aaf_cass:${VERSION} "onap"
else
diff --git a/auth/docker/Dockerfile.config b/auth/docker/Dockerfile.config
index bc1eafca..59d8c56e 100644
--- a/auth/docker/Dockerfile.config
+++ b/auth/docker/Dockerfile.config
@@ -13,6 +13,7 @@ COPY public /opt/app/aaf_config/public
COPY CA /opt/app/aaf_config/CA
COPY logs /opt/app/aaf_config/logs
COPY bin/service.sh /opt/app/aaf_config/bin/agent.sh
+COPY bin/pod_wait.sh /opt/app/aaf_config/bin/
COPY bin/aaf-auth-cmd-${AAF_VERSION}-full.jar /opt/app/aaf_config/bin/
ENTRYPOINT ["/bin/bash","/opt/app/aaf_config/bin/agent.sh"]
diff --git a/auth/docker/aaf.sh b/auth/docker/aaf.sh
index 0512944d..6ba8631d 100644
--- a/auth/docker/aaf.sh
+++ b/auth/docker/aaf.sh
@@ -5,6 +5,7 @@ DOCKER=${DOCKER:=docker}
function run_it() {
$DOCKER run $@ \
-v "aaf_config:$CONF_ROOT_DIR" \
+ -v "aaf_status:/opt/app/aaf/status" \
--add-host="$HOSTNAME:$HOST_IP" \
--add-host="aaf.osaaf.org:$HOST_IP" \
--env HOSTNAME=${HOSTNAME} \
@@ -24,9 +25,17 @@ function run_it() {
}
PARAMS="$@"
-if [ -z "$PARAMS" ]; then
- run_it --rm
-else
- run_it -it --rm
-fi
+case "$1" in
+ bash)
+ run_it -it --rm
+ ;;
+ -it)
+ shift
+ PARAMS="$@"
+ run_it -it --rm
+ ;;
+ *)
+ run_it --rm
+ ;;
+esac
diff --git a/auth/docker/drun.sh b/auth/docker/drun.sh
index 358e9239..f5756b81 100644
--- a/auth/docker/drun.sh
+++ b/auth/docker/drun.sh
@@ -25,7 +25,7 @@ fi
DOCKER=${DOCKER:=docker}
# Running without params keeps from being TTY
-bash aaf.sh
+bash ./aaf.sh
if [ "$1" == "" ]; then
AAF_COMPONENTS=$(cat components)
@@ -34,31 +34,49 @@ else
fi
for AAF_COMPONENT in ${AAF_COMPONENTS}; do
+ LINKS=""
+ CMD_LINE=""
+ PORTMAP=""
case "$AAF_COMPONENT" in
"service")
PORTMAP="8100:8100"
LINKS="--link aaf_cass:cassandra "
+ # CASS_HOST is for Container based Cassadra
+ if [ -z "$CASS_HOST" ]; then
+ CMD_LINE="/bin/bash /opt/app/aaf/pod/pod_wait.sh aaf_service sleep 0 cd /opt/app/aaf;bin/service"
+ else
+ CMD_LINE="/bin/bash /opt/app/aaf/pod/pod_wait.sh aaf_service aaf_cass cd /opt/app/aaf;bin/service"
+ fi
;;
"locate")
PORTMAP="8095:8095"
LINKS="--link aaf_cass:cassandra "
+ CMD_LINE="/bin/bash /opt/app/aaf/pod/pod_wait.sh aaf_locate aaf_service cd /opt/app/aaf;bin/locate"
;;
"oauth")
PORTMAP="8140:8140"
LINKS="--link aaf_cass:cassandra "
+ CMD_LINE="/bin/bash /opt/app/aaf/pod/pod_wait.sh aaf_oauth aaf_service cd /opt/app/aaf;bin/oauth"
;;
"gui")
PORTMAP="8200:8200"
+ LINKS=""
+ CMD_LINE="/bin/bash /opt/app/aaf/pod/pod_wait.sh aaf_gui aaf_locate cd /opt/app/aaf;bin/gui"
;;
"cm")
PORTMAP="8150:8150"
LINKS="--link aaf_cass:cassandra "
+ CMD_LINE="/bin/bash /opt/app/aaf/pod/pod_wait.sh aaf_cm aaf_locate cd /opt/app/aaf;bin/cm"
;;
"hello")
PORTMAP="8130:8130"
+ LINKS=""
+ CMD_LINE="/bin/bash /opt/app/aaf/pod/pod_wait.sh aaf_hello aaf_locate cd /opt/app/aaf;bin/hello"
;;
"fs")
PORTMAP="80:8096"
+ LINKS=""
+ CMD_LINE="/bin/bash /opt/app/aaf/pod/pod_wait.sh aaf_fs aaf_locate cd /opt/app/aaf;bin/fs"
;;
esac
@@ -74,8 +92,7 @@ for AAF_COMPONENT in ${AAF_COMPONENTS}; do
ADD_HOST="$ADD_HOST --add-host=$A:$HOST_IP"
done
- if [[ "$CASS_HOST" =~ ":" ]]; then
- echo "Adding Cassandra Host $CASS_HOST"
+ if [ ! -z "$LINKS" ] && [[ "$CASS_HOST" =~ ":" ]]; then
ADD_HOST="$ADD_HOST --add-host=$CASS_HOST"
fi
$DOCKER run \
@@ -95,5 +112,7 @@ for AAF_COMPONENT in ${AAF_COMPONENTS}; do
--env CASSANDRA_PORT=${CASSANDRA_PORT} \
--publish $PORTMAP \
-v "aaf_config:$CONF_ROOT_DIR" \
- ${PREFIX}${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION}
+ -v "aaf_status:/opt/app/aaf/status" \
+ ${PREFIX}${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} \
+ $CMD_LINE
done
diff --git a/auth/sample/bin/pod_wait.sh b/auth/sample/bin/pod_wait.sh
index 14350366..5a8d0625 100644
--- a/auth/sample/bin/pod_wait.sh
+++ b/auth/sample/bin/pod_wait.sh
@@ -27,6 +27,22 @@ function check {
fi
}
+function wait {
+ n=0
+ while [ $n -lt 40 ]; do
+ rv="$(check)"
+ echo "$rv"
+ if [ "$rv" = "ready" ]; then
+ echo "$OTHER is $rv"
+ n=10000
+ else
+ (( ++n ))
+ echo "Sleep 10 (iteration $n)"
+ sleep 10
+ fi
+ done
+}
+
function start {
n=0
while [ $n -lt 40 ]; do
@@ -45,18 +61,26 @@ function start {
done
}
-if [ "sleep" = "$OTHER" ]; then
- echo "Sleeping $1"
- status "Sleeping $1"
- sleep $1
- shift
- status "ready"
- echo "Done"
-else
- echo "App $APP is waiting to start until $OTHER is ready"
- status "waiting for $OTHER"
-
- start
-fi
+case "$OTHER" in
+ sleep)
+ echo "Sleeping $1"
+ status "Sleeping $1"
+ sleep $1
+ shift
+ status "ready"
+ echo "Done"
+ ;;
+ wait)
+ OTHER="$1"
+ shift
+ wait
+ ;;
+ *)
+ echo "App $APP is waiting to start until $OTHER is ready"
+ status "waiting for $OTHER"
+
+ start
+ ;;
+esac
eval "$@"
diff --git a/auth/sample/bin/service.sh b/auth/sample/bin/service.sh
index 7e443b53..5116d36d 100644
--- a/auth/sample/bin/service.sh
+++ b/auth/sample/bin/service.sh
@@ -248,6 +248,9 @@ else
taillog)
sh /opt/app/osaaf/logs/taillog
;;
+ wait)
+ bash $CONFIG/bin/pod_wait.sh wait $1
+ ;;
--help | -?)
case "$1" in
"")