summaryrefslogtreecommitdiffstats
path: root/auth
diff options
context:
space:
mode:
Diffstat (limited to 'auth')
-rw-r--r--auth/auth-cass/cass_init/cmd.sh44
-rw-r--r--auth/auth-cass/docker/dinstall.sh18
-rw-r--r--auth/docker/drun.sh20
3 files changed, 67 insertions, 15 deletions
diff --git a/auth/auth-cass/cass_init/cmd.sh b/auth/auth-cass/cass_init/cmd.sh
index 09379730..afb66774 100644
--- a/auth/auth-cass/cass_init/cmd.sh
+++ b/auth/auth-cass/cass_init/cmd.sh
@@ -16,20 +16,36 @@ function status {
fi
}
-function install_cql {
- status install
+function wait_start {
sleep 10
status wait for cassandra to start
+ for CNT in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do
+ if [ -z "$(grep 'listening for CQL clients' /var/log/cassandra/system.log)" ]; then
+ echo "Waiting for Cassandra to start... Sleep 10"
+ sleep 10
+ else
+ break
+ fi
+ done
+}
+
+function wait_cql {
+ status wait for keyspace to be initialized
+ for CNT in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do
+ if [ "`/usr/bin/cqlsh -e 'describe keyspaces' | grep authz`" == "" ]; then
+ break
+ else
+ echo "Waiting for Keyspaces to be loaded... Sleep 10"
+ sleep 10
+ fi
+ done
+}
+
+function install_cql {
+ wait_start started
# Now, make sure data exists
if [ "$(/usr/bin/cqlsh -e 'describe keyspaces' | grep authz)" = "" ]; then
- for CNT in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do
- if [ -z "$(grep 'listening for CQL clients' /var/log/cassandra/system.log)" ]; then
- echo "Waiting for Cassandra to start... Sleep 10"
- sleep 10
- else
- break
- fi
- done
+ status install
echo "Initializing Cassandra DB"
if [ "`/usr/bin/cqlsh -e 'describe keyspaces' | grep authz`" == "" ]; then
echo "Docker Installed Basic Cassandra on aaf_cass. Executing the following "
@@ -108,6 +124,14 @@ case "$1" in
echo "Cassandra Startup"
/usr/local/bin/docker-entrypoint.sh
;;
+ wait)
+ # Wait for initialization. This can be called from Docker only as a check to make sure it is ready
+ wait_start started
+
+ # Make sure Keyspace is loaded
+ wait_cql
+ status ready
+ ;;
onap)
# start install_onap (which calls install_cql first) in background, waiting for process to start
install_onap &
diff --git a/auth/auth-cass/docker/dinstall.sh b/auth/auth-cass/docker/dinstall.sh
index c21b7fcc..ec82d8af 100644
--- a/auth/auth-cass/docker/dinstall.sh
+++ b/auth/auth-cass/docker/dinstall.sh
@@ -1,7 +1,19 @@
#!/bin/bash
-
+#
+# This is only called from HEAT, as it needs a single check and wait for Cassandra to be ready
+#
. drun.sh
-# echo $DOCKER
-# docker exec -it aaf_cass bash aaf_cmd onap
+echo "Waiting for Cass to be initialized"
+for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14; do
+ docker exec -it aaf_cass bash aaf_cmd wait 2> /dev/null
+ if [ "$?" -ne "0" ]; then
+ echo "Container not ready... Sleep 10"
+ sleep 10
+ else
+ echo "aaf_cass is ready"
+ break
+ fi
+done
+
diff --git a/auth/docker/drun.sh b/auth/docker/drun.sh
index 350ce3db..a8f03936 100644
--- a/auth/docker/drun.sh
+++ b/auth/docker/drun.sh
@@ -59,13 +59,29 @@ for AAF_COMPONENT in ${AAF_COMPONENTS}; do
echo Starting aaf_$AAF_COMPONENT...
+ if [ -n "$AAF_REGISTER_AS" ] && [ "$HOSTNAME" != "$AAF_REGISTER_AS" ]; then
+ AH_ROOT="$HOSTNAME $AAF_REGISTER_AS"
+ else
+ AH_ROOT="$HOSTNAME"
+ fi
+
+ for A in aaf.osaaf.org $AH_ROOT; do
+ ADD_HOST="$ADD_HOST --add-host=$A:$HOST_IP"
+ for SA in service locate oauth gui fs cm hello; do
+ ADD_HOST="$ADD_HOST --add-host=$SA.$A:$HOST_IP"
+ done
+ done
+
docker run \
-d \
--name aaf_$AAF_COMPONENT \
--hostname="${AAF_COMPONENT}.aaf.osaaf.org" \
- --add-host="$HOSTNAME:$HOST_IP" \
- --add-host="aaf.osaaf.org:$HOST_IP" \
+ $ADD_HOST \
${LINKS} \
+ --env AAF_ENV=${AAF_ENV} \
+ --env AAF_REGISTER_AS=${AAF_REGISTER_AS} \
+ --env LATITUDE=${LATITUDE} \
+ --env LONGITUDE=${LONGITUDE} \
--publish $PORTMAP \
--mount 'type=volume,src=aaf_config,dst='$CONF_ROOT_DIR',volume-driver=local' \
${PREFIX}${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION}