add docker scripts for CSIT 49/70149/2
authorSai Gandham <sg481n@att.com>
Wed, 10 Oct 2018 09:31:59 +0000 (04:31 -0500)
committerSai Gandham <sg481n@att.com>
Wed, 10 Oct 2018 09:48:20 +0000 (04:48 -0500)
Moving csit from docker folder

Issue-ID: AAF-388
Change-Id: I7efb8e7fec54ef54d3d2704ca53f1b80b0b3fea2
Signed-off-by: Sai Gandham <sg481n@att.com>
20 files changed:
auth/csit/.gitignore [new file with mode: 0644]
auth/csit/Dockerfile.client [new file with mode: 0644]
auth/csit/Dockerfile.config [new file with mode: 0644]
auth/csit/Dockerfile.core [new file with mode: 0644]
auth/csit/Dockerfile.ms [new file with mode: 0644]
auth/csit/README.txt [new file with mode: 0644]
auth/csit/aaf.sh [new file with mode: 0644]
auth/csit/agent.sh [new file with mode: 0644]
auth/csit/cass.props-e [new file with mode: 0644]
auth/csit/cass.props.init [new file with mode: 0644]
auth/csit/components [new file with mode: 0644]
auth/csit/d.props.init [new file with mode: 0644]
auth/csit/dbash.sh [new file with mode: 0644]
auth/csit/dbounce.sh [new file with mode: 0644]
auth/csit/dbuild.sh [new file with mode: 0644]
auth/csit/dclean.sh [new file with mode: 0644]
auth/csit/dpush.sh [new file with mode: 0644]
auth/csit/drun.sh [new file with mode: 0644]
auth/csit/dstart.sh [new file with mode: 0644]
auth/csit/dstop.sh [new file with mode: 0644]

diff --git a/auth/csit/.gitignore b/auth/csit/.gitignore
new file mode 100644 (file)
index 0000000..47b48da
--- /dev/null
@@ -0,0 +1,4 @@
+/local
+/d.props
+/aaf.props
+/cass.props
diff --git a/auth/csit/Dockerfile.client b/auth/csit/Dockerfile.client
new file mode 100644 (file)
index 0000000..2ecf6a5
--- /dev/null
@@ -0,0 +1,15 @@
+FROM nexus3.onap.org:10001/onap/aaf/aaf-base-xenial:latest
+MAINTAINER AAF Team, AT&T 2018
+ENV VERSION=${AAF_VERSION}
+
+LABEL description="aaf_agent"
+LABEL version=${AAF_VERSION}
+
+COPY logs /opt/app/aaf_config/logs
+COPY bin/client.sh /opt/app/aaf_config/bin/agent.sh
+COPY bin/aaf-cadi*full.jar /opt/app/aaf_config/bin/
+COPY cert/*trust*.b64 /opt/app/aaf_config/cert/
+
+ENTRYPOINT ["/bin/bash","/opt/app/aaf_config/bin/agent.sh"]
+CMD []
+
diff --git a/auth/csit/Dockerfile.config b/auth/csit/Dockerfile.config
new file mode 100644 (file)
index 0000000..b2f2bec
--- /dev/null
@@ -0,0 +1,20 @@
+FROM nexus3.onap.org:10001/onap/aaf/aaf-base-xenial:latest
+MAINTAINER AAF Team, AT&T 2018
+ENV VERSION=${AAF_VERSION}
+
+LABEL description="aaf_config"
+LABEL version=${AAF_VERSION}
+
+COPY data/sample.identities.dat /opt/app/aaf_config/data/
+COPY etc /opt/app/aaf_config/etc
+COPY local /opt/app/aaf_config/local
+COPY cert /opt/app/aaf_config/cert
+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/aaf-cadi-aaf-${VERSION}-full.jar /opt/app/aaf_config/bin/
+
+ENTRYPOINT ["/bin/bash","/opt/app/aaf_config/bin/agent.sh"]
+CMD []
+
diff --git a/auth/csit/Dockerfile.core b/auth/csit/Dockerfile.core
new file mode 100644 (file)
index 0000000..c511563
--- /dev/null
@@ -0,0 +1,12 @@
+FROM nexus3.onap.org:10001/onap/aaf/aaf-base-xenial:latest
+MAINTAINER AAF Team, AT&T 2018
+ENV VERSION=${AAF_VERSION}
+
+LABEL description="aaf_core"
+LABEL version=${AAF_VERSION}
+
+COPY lib /opt/app/aaf/lib
+COPY bin /opt/app/aaf/bin
+COPY theme /opt/app/aaf/theme
+
+
diff --git a/auth/csit/Dockerfile.ms b/auth/csit/Dockerfile.ms
new file mode 100644 (file)
index 0000000..c1d9d0d
--- /dev/null
@@ -0,0 +1,21 @@
+FROM onap/aaf/aaf_core:${AAF_VERSION}
+MAINTAINER AAF Team, AT&T 2018
+ENV VERSION=${AAF_VERSION}
+
+LABEL description="aaf_${AAF_COMPONENT}"
+LABEL version=${AAF_VERSION}
+
+COPY pod/* /opt/app/aaf/pod/
+
+CMD ["/bin/bash","-c","/opt/app/aaf/bin/${AAF_COMPONENT}"]
+
+# For Debugging installation
+# CMD ["/bin/bash","-c","pwd;cd /opt/app/osaaf;find /opt/app/osaaf -depth;df -k; cat /opt/app/aaf/${AAF_COMPONENT}/bin/${AAF_COMPONENT};cat /etc/hosts;/opt/app/aaf/${AAF_COMPONENT}/bin/${AAF_COMPONENT}"]
+# Java Debugging VM Args
+#     "-Xdebug",\
+#     "-Xnoagent",\
+#     "-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000",\
+
+# TLS Debugging VM Args
+#     "-Djavax.net.debug","ssl", \
+     
diff --git a/auth/csit/README.txt b/auth/csit/README.txt
new file mode 100644 (file)
index 0000000..3eb554b
--- /dev/null
@@ -0,0 +1,40 @@
+#
+# Edit the following in <your ONAP authz dir>/auth/sample/local
+# 
+aaf.props
+org.osaaf.aaf.cm.ca.props  (leave out Password)
+
+# cd to main docker dir
+cd ../../docker
+
+# Start the container in bash mode, so it stays up
+sh agent.sh bash
+
+# in another shell, find out your Container name
+docker container ls | grep aaf_agent
+
+# CD to directory with CA info in it.
+# (example)
+cd /opt/app/osaaf/CA/intermediate_7
+
+# copy keystore for this AAF Env 
+docker container cp -L org.osaaf.aaf.p12 aaf_agent_<Your ID>:/opt/app/osaaf/local
+# (in Agent Window)
+agent encrypt cadi_keystore_password
+
+# If you intend to use Certman to sign certs, it is a "local" CA
+# copy Signing Keystore into container
+docker container cp -L org.osaaf.aaf.signer.p12 aaf_agent_<Your ID>:/opt/app/osaaf/local
+# (in Agent Window)
+agent encrypt cm_ca.local 
+
+# Check to make sure all passwords are set
+grep "enc:" *.props
+
+
+# When good, run AAF
+bash drun.sh
+
+# watch logs in Agent Window
+cd ../logs
+sh taillog
diff --git a/auth/csit/aaf.sh b/auth/csit/aaf.sh
new file mode 100644 (file)
index 0000000..bc8a85e
--- /dev/null
@@ -0,0 +1,44 @@
+#!/bin/bash
+. ./d.props
+if [ -e ./cass.props ]; then
+  . ./cass.props
+fi
+
+DOCKER=${DOCKER:=docker}
+function run_it() {
+  $DOCKER run $@ \
+    -v "aaf_config:$CONF_ROOT_DIR" \
+    --add-host="$HOSTNAME:$HOST_IP" \
+    --add-host="aaf.osaaf.org:$HOST_IP" \
+    --env HOSTNAME=${HOSTNAME} \
+    --env AAF_ENV=${AAF_ENV} \
+    --env AAF_REGISTER_AS=${AAF_REGISTER_AS} \
+    --env LATITUDE=${LATITUDE} \
+    --env LONGITUDE=${LONGITUDE} \
+    --env CASS_HOST=${CASS_HOST} \
+    --env CASSANDRA_CLUSTER=${CASSANDRA_CLUSTER} \
+    --env CASSANDRA_USER=${CASSANDRA_USER} \
+    --env CASSANDRA_PASSWORD=${CASSANDRA_PASSWORD} \
+    --env CASSANDRA_PORT=${CASSANDRA_PORT} \
+    --name aaf_config_$USER \
+    $PREFIX${ORG}/${PROJECT}/aaf_config:${VERSION} \
+    /bin/bash $PARAMS
+}
+
+function set_prop() {
+  $DOCKER exec -it aaf_config_$USER /bin/bash /opt/app/aaf_config/bin/agent.sh NOOP setProp "$1" "$2" "$3"
+}
+
+function encrypt_it() {
+  $DOCKER exec -it aaf_config_$USER /bin/bash /opt/app/aaf_config/bin/agent.sh NOOP encrypt "$1" "$2"
+}
+
+function set_it() {
+  $DOCKER exec -it aaf_config_$USER /bin/bash /opt/app/aaf_config/bin/agent.sh NOOP setProp "$1" "$2"
+}
+
+PARAMS="$@"
+if [ "$PARAMS" != "" ]; then
+  run_it -it --rm 
+fi
+
diff --git a/auth/csit/agent.sh b/auth/csit/agent.sh
new file mode 100644 (file)
index 0000000..af04cf2
--- /dev/null
@@ -0,0 +1,82 @@
+#!/bin/bash
+
+
+# Fill out "aaf.props" if not filled out already
+if [ ! -e aaf.props ]; then
+  > ./aaf.props
+fi
+. ./aaf.props
+
+DOCKER=${DOCKER:=docker}
+CADI_VERSION=${CADI_VERSION:=2.1.2-SNAPSHOT}
+
+for V in VERSION DOCKER_REPOSITORY AAF_FQDN AAF_FQDN_IP DEPLOY_FQI APP_FQDN APP_FQI VOLUME DRIVER LATITUDE LONGITUDE; do
+   if [ "$(grep $V ./aaf.props)" = "" ]; then
+      unset DEF
+      case $V in
+        DOCKER_REPOSITORY) 
+               PROMPT="Docker Repo"
+               DEF=""
+               ;;
+         AAF_FQDN)   PROMPT="AAF's FQDN";;
+         DEPLOY_FQI) PROMPT="Deployer's FQI";;
+         AAF_FQDN_IP)
+               # Need AAF_FQDN's IP, because not might not be available in mini-container
+               PROMPT="AAF FQDN IP"
+               DEF=$(host $AAF_FQDN | grep "has address" | tail -1 | cut -f 4 -d ' ')
+                ;;
+         APP_FQI)    PROMPT="App's FQI";; 
+         APP_FQDN)   PROMPT="App's Root FQDN";; 
+         VOLUME)     PROMPT="APP's AAF Configuration Volume";;
+         DRIVER)     PROMPT=$V;DEF=local;;
+        VERSION)    PROMPT="CADI Version";DEF=$CADI_VERSION;;
+         LATITUDE|LONGITUDE) PROMPT="$V of Node";;
+         *)          PROMPT=$V;;
+      esac
+      if [ "$DEF" = "" ]; then
+           PROMPT="$PROMPT: "
+      else 
+           PROMPT="$PROMPT ($DEF): "
+      fi
+      read -p "$PROMPT" VAR 
+      if [ "$VAR" = "" ]; then
+         if [ "$DEF" = "" ]; then
+            echo "agent.sh needs each value queried.  Please start again."
+            exit
+         else
+            VAR=$DEF
+         fi
+      fi
+      echo "$V=$VAR" >> ./aaf.props
+   fi
+done
+. ./aaf.props
+
+# Make sure Container Volume exists
+if [ "$($DOCKER volume ls | grep ${VOLUME})" = "" ]; then
+  echo -n "Creating Volume: " 
+  $DOCKER volume create -d ${DRIVER} ${VOLUME}
+fi
+
+if [ -n "$DOCKER_REPOSITORY" ]; then
+  PREFIX="$DOCKER_REPOSITORY/"
+else
+  PREFIX=""
+fi 
+
+$DOCKER run \
+    -it \
+    --rm \
+    -v "${VOLUME}:/opt/app/osaaf" \
+    --add-host="$AAF_FQDN:$AAF_FQDN_IP" \
+    --env AAF_FQDN=${AAF_FQDN} \
+    --env DEPLOY_FQI=${DEPLOY_FQI} \
+    --env DEPLOY_PASSWORD=${DEPLOY_PASSWORD} \
+    --env APP_FQI=${APP_FQI} \
+    --env APP_FQDN=${APP_FQDN} \
+    --env LATITUDE=${LATITUDE} \
+    --env LONGITUDE=${LONGITUDE} \
+    --name aaf_agent_$USER \
+    "$PREFIX"onap/aaf/aaf_agent:$VERSION \
+    /bin/bash "$@"
diff --git a/auth/csit/cass.props-e b/auth/csit/cass.props-e
new file mode 100644 (file)
index 0000000..fc9bab4
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+CASS_HOST=cass.aaf.osaaf.org:<Cass IP>
diff --git a/auth/csit/cass.props.init b/auth/csit/cass.props.init
new file mode 100644 (file)
index 0000000..7512742
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+# Use for assigning to /etc/hosts, when DNS doesn't have Cassandra FQDN
+CASS_HOST=cass.aaf.osaaf.org:<IP of running Cass>
+
+####
+# Detailed Cassandra Environmental Variables
+####
+# CASSANDRA_CLUSTER=<unsert means default, host from CASS_HOST above, or "localhost">
+# CASSANDRA_USER=<unset means default (cassandra)>
+# CASSANDRA_PASSWORD=<unset means default (cassandra)>
+# CASSANDRA_PORT=<unset means default (9042)>
diff --git a/auth/csit/components b/auth/csit/components
new file mode 100644 (file)
index 0000000..0a4a66a
--- /dev/null
@@ -0,0 +1,7 @@
+service
+locate
+oauth
+gui
+fs
+cm
+hello
diff --git a/auth/csit/d.props.init b/auth/csit/d.props.init
new file mode 100644 (file)
index 0000000..0322cd6
--- /dev/null
@@ -0,0 +1,31 @@
+# Variables for building Docker entities
+ORG=onap
+PROJECT=aaf
+DOCKER_REPOSITORY=nexus3.onap.org:10003
+VERSION=2.1.2-SNAPSHOT
+CONF_ROOT_DIR=/opt/app/osaaf
+# For local builds, set PREFIX=   
+PREFIX="$DOCKER_REPOSITORY/"
+
+# Local Env info
+HOSTNAME=aaf.osaaf.org
+HOST_IP=
+
+# AAF Machine info
+AAF_ENV=DEV
+AAF_REGISTER_AS=$HOSTNAME
+LATITUDE=
+LONGITUDE=
+
+# Initial AAF Certificate (not Generated)
+CADI_X509_ISSUERS="CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_7, OU=OSAAF, O=ONAP, C=US"
+AAF_INITIAL_X509_P12=
+AAF_INITIAL_X509_PASSWORD=
+CADI_X509_ISSUERS=
+
+# CA info (leave blank unless functioning as CA)
+CM_CA_LOCAL=
+AAF_SIGNER_P12=
+AAF_SIGNER_PASSWORD=
+AAF_SIGNER_ALIAS=
+
diff --git a/auth/csit/dbash.sh b/auth/csit/dbash.sh
new file mode 100644 (file)
index 0000000..9f84427
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/bash
+. ./d.props
+${DOCKER:=docker} exec -it aaf_$1 bash
diff --git a/auth/csit/dbounce.sh b/auth/csit/dbounce.sh
new file mode 100644 (file)
index 0000000..dde8389
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/bash
+bash ./dstop.sh "$@"
+bash ./dstart.sh "$@"
diff --git a/auth/csit/dbuild.sh b/auth/csit/dbuild.sh
new file mode 100644 (file)
index 0000000..2b6c006
--- /dev/null
@@ -0,0 +1,74 @@
+#!/bin/bash
+#
+# Docker Building Script.  Reads all the components generated by install, on per-version basis
+#
+# Pull in Variables from d.props
+if [ ! -e ./d.props ]; then
+    cp d.props.init d.props
+fi
+
+. ./d.props
+
+DOCKER=${DOCKER:=docker}
+
+echo "Building Containers for aaf components, version $VERSION"
+
+# AAF_cass now needs a version...
+cd ../auth-cass/docker
+bash ./dbuild.sh
+cd -
+
+# Create the AAF Config (Security) Images
+cd ..
+cp ../cadi/aaf/target/aaf-cadi-aaf-${VERSION}-full.jar sample/bin
+cp -Rf ../conf/CA sample
+
+# AAF Config image (for AAF itself)
+sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' docker/Dockerfile.config > sample/Dockerfile
+$DOCKER build -t ${ORG}/${PROJECT}/aaf_config:${VERSION} sample
+$DOCKER tag ${ORG}/${PROJECT}/aaf_config:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_config:${VERSION}
+$DOCKER tag ${ORG}/${PROJECT}/aaf_config:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/latest
+
+# AAF Agent Image (for Clients)
+sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' docker/Dockerfile.client > sample/Dockerfile
+$DOCKER build -t ${ORG}/${PROJECT}/aaf_agent:${VERSION} sample
+$DOCKER tag ${ORG}/${PROJECT}/aaf_agent:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_agent:${VERSION}
+$DOCKER tag ${ORG}/${PROJECT}/aaf_agent:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_agent:latest
+
+# Clean up 
+rm sample/Dockerfile sample/bin/aaf-cadi-aaf-${VERSION}-full.jar
+rm -Rf sample/CA
+cd -
+
+########
+# Second, build a core Docker Image
+echo Building aaf_$AAF_COMPONENT...
+# Apply currrent Properties to Docker file, and put in place.
+sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' Dockerfile.core >../aaf_${VERSION}/Dockerfile
+cd ..
+$DOCKER build -t ${ORG}/${PROJECT}/aaf_core:${VERSION} aaf_${VERSION}
+$DOCKER tag ${ORG}/${PROJECT}/aaf_core:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_core:${VERSION}
+$DOCKER tag ${ORG}/${PROJECT}/aaf_core:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_core:latest
+rm aaf_${VERSION}/Dockerfile
+cd -
+
+if ["$1" == ""]; then
+    AAF_COMPONENTS=$(ls ../aaf_*HOT/bin | grep -v '\.')
+else
+    AAF_COMPONENTS=$1
+fi
+
+mkdir -p ../aaf_${VERSION}/pod
+cp ../sample/bin/pod_wait.sh  ../aaf_${VERSION}/pod
+for AAF_COMPONENT in ${AAF_COMPONENTS}; do
+    echo Building aaf_$AAF_COMPONENT...
+    sed -e 's/${AAF_VERSION}/'${VERSION}'/g' -e 's/${AAF_COMPONENT}/'${AAF_COMPONENT}'/g' Dockerfile.ms >../aaf_${VERSION}/Dockerfile
+    cd ..
+    $DOCKER build -t ${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} aaf_${VERSION}
+    $DOCKER tag ${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION}
+    $DOCKER tag ${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION} ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:latest
+    rm aaf_${VERSION}/Dockerfile
+    cd -
+done
+rm ../aaf_${VERSION}/pod/*
+rmdir ../aaf_${VERSION}/pod
diff --git a/auth/csit/dclean.sh b/auth/csit/dclean.sh
new file mode 100644 (file)
index 0000000..b943d08
--- /dev/null
@@ -0,0 +1,20 @@
+#!/bin/bash
+# Pull in Variables from d.props
+. ./d.props
+DOCKER=${DOCKER:=docker}
+
+if [ "$1" == "" ]; then
+    AAF_COMPONENTS="$(cat components) config core agent"
+else
+    AAF_COMPONENTS="$@"
+fi
+
+echo "Y" | $DOCKER container prune
+for AAF_COMPONENT in ${AAF_COMPONENTS}; do
+    $DOCKER image rm $ORG/$PROJECT/aaf_$AAF_COMPONENT:${VERSION}
+    if [ ! "$PREFIX" = "" ]; then
+      $DOCKER image rm $DOCKER_REPOSITORY/$ORG/$PROJECT/aaf_$AAF_COMPONENT:${VERSION}
+      $DOCKER image rm $DOCKER_REPOSITORY/$ORG/$PROJECT/aaf_$AAF_COMPONENT:latest
+    fi
+done
+echo "Y" | $DOCKER image prune
diff --git a/auth/csit/dpush.sh b/auth/csit/dpush.sh
new file mode 100644 (file)
index 0000000..f29b4c9
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/bash
+# Docker push Script.  Reads all the components generated by install, on per-version basis
+#
+# Pull in Variables from d.props
+. ./d.props
+DOCKER=${DOCKER:=docker}
+
+AAF_COMPONENTS="config agent core cass $(cat components) "
+
+for AAF_COMPONENT in ${AAF_COMPONENTS}; do
+        # docker push ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${OLD_VERSION}
+        $DOCKER push ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION}
+        # docker push ${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${NEW_VERSION}
+done
diff --git a/auth/csit/drun.sh b/auth/csit/drun.sh
new file mode 100644 (file)
index 0000000..be6795b
--- /dev/null
@@ -0,0 +1,88 @@
+#!/bin/bash
+# Pull in Variables from d.props
+. ./d.props
+
+# Only need Cassandra Link Info when initializing the container.
+if [ ! -e ./cass.props ]; then
+    cp cass.props.init cass.props
+fi
+. ./cass.props
+
+DOCKER=${DOCKER:=docker}
+
+CASS_IS_SET="$(grep '<Cass IP>' cass.props)"
+if [ -n "$CASS_IS_SET" ]; then
+    CASS_IP="$($DOCKER container inspect aaf_cass | grep \"IPAddress\": -m 1 | cut -d '"' -f 4)"
+    if [ -n "$CASS_IP" ]; then
+      sed -i -e "s/\(^.*:\).*/\1$CASS_IP/" cass.props
+    else
+      echo "Set CASSASNDRA IP in cass.props"
+      exit
+    fi
+fi
+
+. ./cass.props
+
+bash aaf.sh onap
+
+if [ "$1" == "" ]; then
+    AAF_COMPONENTS=$(cat components)
+else
+    AAF_COMPONENTS="$@"
+fi
+
+for AAF_COMPONENT in ${AAF_COMPONENTS}; do
+    case "$AAF_COMPONENT" in
+    "service")
+        PORTMAP="8100:8100"
+        LINKS="--link aaf_cass:cassandra --add-host=$CASS_HOST"
+        ;;
+    "locate")
+        PORTMAP="8095:8095"
+        LINKS="--link aaf_cass:cassandra --add-host=$CASS_HOST"
+        ;;
+    "oauth")
+        PORTMAP="8140:8140"
+        LINKS="--link aaf_cass:cassandra --add-host=$CASS_HOST"
+        ;;
+    "gui")
+        PORTMAP="8200:8200"
+        ;;
+    "cm")
+        PORTMAP="8150:8150"
+        LINKS="--link aaf_cass:cassandra --add-host=$CASS_HOST"
+        ;;
+    "hello")
+        PORTMAP="8130:8130"
+        ;;
+    "fs")
+        PORTMAP="80:8096"
+        ;;
+    esac
+
+    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"
+    done
+
+    $DOCKER run \
+        -d \
+        --name aaf_$AAF_COMPONENT \
+        --hostname="${AAF_COMPONENT}.aaf.osaaf.org" \
+       $ADD_HOST \
+        ${LINKS} \
+        --env AAF_ENV=${AAF_ENV} \
+        --env AAF_REGISTER_AS=${AAF_REGISTER_AS} \
+        --env LATITUDE=${LATITUDE} \
+        --env LONGITUDE=${LONGITUDE} \
+        --publish $PORTMAP \
+        -v "aaf_config:$CONF_ROOT_DIR" \
+        ${PREFIX}${ORG}/${PROJECT}/aaf_${AAF_COMPONENT}:${VERSION}
+done
diff --git a/auth/csit/dstart.sh b/auth/csit/dstart.sh
new file mode 100644 (file)
index 0000000..6ca4bae
--- /dev/null
@@ -0,0 +1,15 @@
+#!/bin/bash
+# Pull in Props
+. ./d.props
+
+DOCKER=${DOCKER:=docker}
+
+if [ "$1" == "" ]; then
+    AAF_COMPONENTS=$(cat components)
+else
+    AAF_COMPONENTS="$@"
+fi
+
+for AAF_COMPONENT in ${AAF_COMPONENTS}; do
+    $DOCKER start aaf_$AAF_COMPONENT
+done
diff --git a/auth/csit/dstop.sh b/auth/csit/dstop.sh
new file mode 100644 (file)
index 0000000..85e6f28
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/bash
+# Pull in Properties
+. ./d.props
+
+DOCKER=${DOCKER:=docker}
+if [ "$1" == "" ]; then
+    AAF_COMPONENTS=$(cat components)
+else
+    AAF_COMPONENTS="$@"
+fi
+
+for AAF_COMPONENT in ${AAF_COMPONENTS}; do
+    $DOCKER stop aaf_$AAF_COMPONENT
+done