Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Improvements to gte command: flags for --fg (don't detach), --rabbitm…
…q (run rabbitmq and link), can pass in other docker arguments and startup commands

Examples:

./gte
    Pass in which gte environment to spin up:
    101.1.1
    201.1.1
    ...

./gte -it 201.1.1 bash
    Removing old containers
    a1a5f15114f6
    Starting container tier/gte:201.1.1-202102
    grouperContainer; INFO: (library.sh) Start loading library.sh
    ...
    grouperContainer; INFO: (entrypoint.sh) Executing bash
    [root@f49a43dff360 WEB-INF]#

./gte --fg 201.1.1 ping rabbitmq
    Removing old containers
    b6df1e95053c
    Starting container tier/gte:201.1.1-202102
    grouperContainer; INFO: (library.sh) Start loading library.sh
    ...
    grouperContainer; INFO: (entrypoint.sh) Executing ping rabbitmq
    ping: rabbitmq: Name or service not known

./gte --fg --rabbitmq 201.1.1 ping rabbitmq
    Removing old containers
    f49a43dff360
    Removing any old rabbitmq containers
    Starting container rabbitmq:management
    14ea18b53c1f11f52ff29e8f2c7e176fec510b45a5ecc774f4664280702c24fa
    Starting container tier/gte:201.1.1-202102
    grouperContainer; INFO: (library.sh) Start loading library.sh
    ...
    grouperContainer; INFO: (entrypoint.sh) Executing ping rabbitmq
    PING rabbitmq (192.168.16.2) 56(84) bytes of data.
    64 bytes from rabbitmq (192.168.16.2): icmp_seq=1 ttl=64 time=0.110 ms
    64 bytes from rabbitmq (192.168.16.2): icmp_seq=2 ttl=64 time=0.110 ms
credman committed Jan 15, 2021
1 parent 6f1e420 commit 28ab157
Showing 1 changed file with 50 additions and 7 deletions.
57 changes: 50 additions & 7 deletions gte
@@ -1,10 +1,43 @@
#! /bin/bash


VERSION_TAG=202102

EXTRA_ARGS=
RABBITMQ_FL=

show_help() {
echo "$0 [--rabbitmq] [--fg|-it] [docker args ...] <gte lesson id> [container cmd ...]"
echo " --rabbitmq: also start up a rabbitmq container, and link it as name 'rabbitmq'"
echo " --fg: Don't detach (i.e., don't run container with -d flag"
echo " -h|--help: This help message"
echo ""
echo "If no GTE lesson id number is passed in, the command will list all the available ids"
}

for arg in $*; do
case $arg in
--rabbitmq) EXTRA_ARGS="$EXTRA_ARGS --link rabbitmq:rabbitmq"; RABBITMQ_FL=1; shift;;
--fg) is_foreground=1; shift;;
-it) is_foreground=1; EXTRA_ARGS="$EXTRA_ARGS $1"; shift;;
-h|--help) show_help; exit 0;;
-*) EXTRA_ARGS="$EXTRA_ARGS $1"; shift;;
*) break;;
esac
done

#echo args=$*
#echo EXTRA_ARGS=$EXTRA_ARGS
#echo RABBITMQ_FL=$RABBITMQ

if [ "$is_foreground" != 1 ]; then
EXTRA_ARGS="$EXTRA_ARGS -d"
fi

if [ -z "$1" ]
then
#docker images tier/gte
echo "Pass in which gte environment to spin up:"
my_array=( $( docker images | grep 'tier/gte' | grep -v base | awk '{print $2}' | sort ) )
my_array=( $( docker images | grep "tier/gte.*$VERSION_TAG" | grep -v base | awk '{print $2}' | sort ) )
for i in "${my_array[@]}"
do
# strip last 7 chars (-202102)
@@ -14,21 +47,31 @@ if [ -z "$1" ]
exit 1
fi

# remove rabbitmq and all gte containers
docker rm -f rabbitmq 2> /dev/null
LESSON_ID=$1
shift


# see if there is a container
CONTAINER="$( docker ps -a | grep 'tier/gte' | awk '{print $1}' )"
# if so, then rm it
if [ ! -z "$CONTAINER" ]; then
echo "Removing old containers"
docker ps -a | grep 'tier/gte' | awk '{print $1}' | xargs docker rm -f
fi

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
$DIR/start-rabbitmq.sh
if [ "$RABBITMQ_FL" == 1 ]; then
echo Removing any old rabbitmq containers
docker rm -f rabbitmq 2> /dev/null
#DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
#$DIR/start-rabbitmq.sh
echo "Starting container rabbitmq:management"
docker run -d -p 15672:15672 --env RABBITMQ_NODENAME=docker-rabbit --hostname rabbitmq --name=rabbitmq rabbitmq:management
fi

# lets see which

#docker stop "$1" 2> /dev/null
#docker rm "$1" 2> /dev/null
docker run -d -p 8443:443 --link rabbitmq:rabbitmq --name $1 tier/gte:"$1"-202102
#docker run -d -p 8443:443 --link rabbitmq:rabbitmq --name $1 tier/gte:"$1"-202102
echo "Starting container tier/gte:"$LESSON_ID"-$VERSION_TAG"
docker run -p 8443:443 $EXTRA_ARGS --name $LESSON_ID tier/gte:"$LESSON_ID"-$VERSION_TAG $*

0 comments on commit 28ab157

Please sign in to comment.