#!/bin/sh
#
# This script does a yum upgrade
# If an new asterisk is installed, recompile asterisk-astium
# so it matches the new asterisk version
#
# This script also ensures that asterisk/astcfgd/astiumd/postgresql are not running
# 
set -x

log() {
  DATE=`date`
  HOST=`hostname`
  BASE=`dirname $0`
  echo $DATE $* >> $BASE/$HOST.log
}

log "running yum-update-vm"

LOCKFILE=/tmp/check-new-asteris-version.lock
if [ -f $LOCKFILE ]
then
  log "locked by $LOCKFILE"
  exit
fi
touch $LOCKFILE
trap "{ rm -f $LOCKFILE ; exit 0; }" EXIT

if [ -f /etc/nbe/mynbe.cfg ]
then
  . /etc/nbe/mynbe.cfg
fi

MYHOST=`hostname`
OLDASTVER=11111
OLDASTVER=`rpm -q asterisk | tail -1 | cut -d- -f3 | cut -d. -f1 | grep -v installed`

basepath=`dirname $0`
$basepath/yum-update-vm

NEWASTVER=`rpm -q asterisk | tail -1 | cut -d- -f3 | cut -d. -f1 | grep -v installed`
log "ASTVER=$OLDASTVER/$NEWASTVER"
if [[ "$NEWASTVER" != "$OLDASTVER" && "$NEWASTVER" != "" ]]  || [ "$1" == "-f" ]
then
  log "new version found: checkout the asterisk-astium sources and ensure recompilation"
  svn -q co $MYSVNPATH/asterisk-astium/branches/$MYPRODREL asterisk-astium
  sed "s/ASTVER=.*/ASTVER=$NEWASTVER/" asterisk-astium/BuildRpm > _tmp_
  mv -f _tmp_ asterisk-astium/BuildRpm
  svn commit asterisk-astium -m "Asterisk $NEWASTVER released, so asterisk-astium needs to be rebuild (from $MYHOST)"
  rm -rf asterisk-astium
fi

rm -f $LOCKFILE

