install-osrf.sh: avoid appending useless entries to /etc/hosts
[sitka/sitka-tools.git] / deployment / install-osrf.sh
index 48ad78e..8ec185f 100755 (executable)
@@ -4,9 +4,9 @@ HOMEDIR="/home/${DEFAULT_USER}"
 BUILDDIR="${HOMEDIR}/opensrf"
 INSTALLDIR="/srv/openils"
 BRANCH="rel_2_4"
-HOSTNAME="nonprod-28"
+HOSTNAME="nonprod"
 SITKACONF="${HOMEDIR}/sysadmin"
-SITKACONF_BRANCH="master"
+SITKACONF_BRANCH="eg210"
 
 # test for ejabberd passwords
 if [ -z "$PRIVATE_ROUTER_PASSWD" -o -z "$PRIVATE_OPENSRF_PASSWD" -o -z "$PUBLIC_ROUTER_PASSWD" -o -z "$PUBLIC_OPENSRF_PASSWD" ]
@@ -15,6 +15,18 @@ then
   exit
 fi
 
+while getopts ":p" opt ; do
+  case $opt in
+    p ) PROD="prod";;
+  esac
+done
+shift $(($OPTIND - 1))
+
+if [[ -n "$PROD" ]] ; then
+  echo 'this is a production install'
+else
+  echo 'this is NOT a production install'
+fi
 # as root
 usermod -a -G sudo ${DEFAULT_USER}
 apt-get install git-core build-essential translate-toolkit python-polib bsdmainutils
@@ -38,6 +50,7 @@ then
   mv /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
 fi
 cp ${SITKACONF}/files/etc/apache2/apache2.conf/${HOSTNAME} /etc/apache2/apache2.conf
+sed -i "s|__HOSTNAME__|${THISHOST}|g" /etc/apache2/apache2.conf
 
 # as root
 echo "Installing OpenSRF prerequisites for Ubuntu..."
@@ -65,9 +78,15 @@ chown -R opensrf:opensrf ${INSTALLDIR}
 # as root, add the following two lines to /etc/hosts:
 #127.0.1.2     public.localhost        public
 #127.0.1.3     private.localhost       private
-echo "Updating /etc/hosts..."
-echo -e "127.0.1.2\tpublic.localhost\tpublic\n127.0.1.3\tprivate.localhost\tprivate\n" | \
-  cat - /etc/hosts > /etc/hosts.new && mv /etc/hosts.new /etc/hosts
+if [[ ! -n "$PROD" ]] ; then
+  if [[ ! `grep public.localhost /etc/hosts` ]] ; then
+    echo "Updating /etc/hosts..."
+    echo -e "127.0.1.2\tpublic.localhost\tpublic\n127.0.1.3\tprivate.localhost\tprivate\n" | \
+      cat - /etc/hosts > /etc/hosts.new && mv /etc/hosts.new /etc/hosts
+  fi
+else
+  echo 'WARNING: If this is a new production server, you will need to manually update /etc/hosts!'
+fi
  
 # as root
 echo "ldconfig stuff..."
@@ -77,6 +96,7 @@ ldconfig
 # as root
 echo "Setting up ejabberd..."
 cp ${SITKACONF}/files/etc/ejabberd/ejabberd.cfg/${HOSTNAME} /etc/ejabberd/ejabberd.cfg
+sed -i "s|__HOSTNAME__|${THISHOST}|g" /etc/ejabberd/ejabberd.cfg
 chgrp ejabberd /etc/ejabberd/ejabberd.cfg
 chmod 640 /etc/ejabberd/ejabberd.cfg
 /etc/init.d/ejabberd restart && sleep 10 && \