| #!/bin/sh |
| # Copyright 2015 AT&T Intellectual Properties |
| ############################################################################## |
| # Script to initialize the chef-repo branch and.chef |
| # |
| ############################################################################## |
| # Copy the certificates |
| echo 'Copying the *.crt provided in /shared folder' |
| cp --verbose /shared/*.crt /usr/local/share/ca-certificates |
| update-ca-certificates |
| |
| echo 'Running in JBOSS' |
| su - jboss |
| |
| DEBUG='' |
| if [ "$JBOSS_DEBUG" = true ] ; then |
| DEBUG="--debug" |
| fi |
| |
| #Start the chef-solo if mso-docker.json contains some data. |
| if [ -s /var/berks-cookbooks/${CHEF_REPO_NAME}/environments/mso-docker.json ] |
| then |
| echo "mso-docker.json has some configuration, replay the recipes." |
| chef-solo -c /var/berks-cookbooks/${CHEF_REPO_NAME}/solo.rb -o recipe[mso-config::apih],recipe[mso-config::bpmn],recipe[mso-config::jra] |
| else |
| echo "mso-docker.json is empty, do not replay the recipes." |
| fi |
| |
| JBOSS_PIDFILE=/tmp/jboss-standalone.pid |
| $JBOSS_HOME/bin/standalone.sh ${DEBUG} -c standalone-full-ha-mso.xml & |
| JBOSS_PID=$! |
| # Trap common signals and relay them to the jboss process |
| trap "kill -HUP $JBOSS_PID" HUP |
| trap "kill -TERM $JBOSS_PID" INT |
| trap "kill -QUIT $JBOSS_PID" QUIT |
| trap "kill -PIPE $JBOSS_PID" PIPE |
| trap "kill -TERM $JBOSS_PID" TERM |
| if [ "x$JBOSS_PIDFILE" != "x" ]; then |
| echo $JBOSS_PID > $JBOSS_PIDFILE |
| fi |
| # Wait until the background process exits |
| WAIT_STATUS=128 |
| while [ "$WAIT_STATUS" -ge 128 ]; do |
| wait $JBOSS_PID 2>/dev/null |
| WAIT_STATUS=$? |
| if [ "$WAIT_STATUS" -gt 128 ]; then |
| SIGNAL=`expr $WAIT_STATUS - 128` |
| SIGNAL_NAME=`kill -l $SIGNAL` |
| echo "*** JBossAS process ($JBOSS_PID) received $SIGNAL_NAME signal ***" >&2 |
| fi |
| done |
| if [ "$WAIT_STATUS" -lt 127 ]; then |
| JBOSS_STATUS=$WAIT_STATUS |
| else |
| JBOSS_STATUS=0 |
| fi |
| if [ "$JBOSS_STATUS" -ne 10 ]; then |
| # Wait for a complete shudown |
| wait $JBOSS_PID 2>/dev/null |
| fi |
| if [ "x$JBOSS_PIDFILE" != "x" ]; then |
| grep "$JBOSS_PID" $JBOSS_PIDFILE && rm $JBOSS_PIDFILE |
| fi |