From b12b70b70e7b5ca000f2aff5531a4e97876a8538 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Thu, 29 Sep 2016 12:21:32 -0400 Subject: [PATCH] simple script for deploying EG master from git (dev servers) Signed-off-by: Bill Erickson --- update.sh | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100755 update.sh diff --git a/update.sh b/update.sh new file mode 100755 index 000000000..38552fef2 --- /dev/null +++ b/update.sh @@ -0,0 +1,99 @@ +#!/bin/bash +# Author Bill Erickson +# ------------------------------------------------------------------------- +# * Run as opensrf +# * opensrf needs sudo +# ------------------------------------------------------------------------- + +B=/home/opensrf +OSRF="$B/OpenSRF"; +ILS="$B/Evergreen"; +XUL_DIR=/openils/var/web/xul + +# options +BUILD_OSRF='' +CLEAN_BUILD='' +ENABLE_PYTHON="--disable-python" + +while getopts "cop" opt; do + case $opt in + c) CLEAN_BUILD=1;; + o) BUILD_OSRF=1;; + p) ENABLE_PYTHON="--enable-python";; + esac +done; + +echo "" +echo "CLEAN_BUILD => $CLEAN_BUILD"; +echo "BUILD_OSRF => $BUILD_OSRF"; +echo "ENABLE_PYTHON => $ENABLE_PYTHON"; +echo "" + + +# --------------------------------------------------- +sudo /etc/init.d/apache2 stop; +[ -f /etc/init.d/apache2-websockets ] && sudo apache2ctl-websockets stop; +cd; osrf_control --localhost --fast-shutdown-all + +# --------------------------------------------------- +if [ -n "$BUILD_OSRF" ]; then + + cd $OSRF; + git pull; + + if [ -n "$CLEAN_BUILD" ]; then + autoreconf -i && \ + ./configure --prefix=/openils --sysconfdir=/openils/conf "$ENABLE_PYTHON" && \ + make clean + fi; + make && sudo make install; +fi; + +# --------------------------------------------------- +cd $ILS +git pull; + +if [ -n "$CLEAN_BUILD" ]; then + autoreconf -i && \ + ./configure --prefix=/openils --sysconfdir=/openils/conf "$ENABLE_PYTHON" && \ + make clean +fi; + +BID=$(date +"%FT%T"); +make && sudo make install \ + STAFF_CLIENT_BUILD_ID=$BID STAFF_CLIENT_VERISON=$BID STAFF_CLIENT_STAMP_ID=$BID; + +# --------------------------------------------------- + +sudo chown -R opensrf:opensrf /openils + +rm -f $XUL_DIR/server; +rm -f $XUL_DIR/current; +rm -f $XUL_DIR/current-client-build.zip; +cp -r "$ILS/Open-ILS/xul/staff_client/build" $XUL_DIR/ +cd $XUL_DIR; +zip -rq $BID.zip build; +ln -s $BID.zip current-client-build.zip; +mv build $BID; +ln -s $BID current; +ln -s current/server server + +# --------------------------------------------------- +# update the DB first to catch errors +echo "---------------------------------------------------" +cd $ILS; +bash build/tools/update_db.sh localhost evergreen evergreen +echo "---------------------------------------------------" +echo "" + +sudo chown -R opensrf:opensrf $OSRF $ILS +cd; osrf_control --localhost --start-all +echo "Wait for it..." +sleep 8; +cd /openils/bin; ./autogen.sh ../conf/opensrf_core.xml; +sudo /etc/init.d/apache2 start; +[ -f /etc/init.d/apache2-websockets ] && sudo apache2ctl-websockets start; + +#echo "Restarting SIP..." +#echo "" +#/openils/bin/oils_ctl.sh -s /openils/conf/oils_sip.xml -a restart_sip -- 2.11.0