mirror of
https://github.com/correl/melpa.git
synced 2024-11-28 19:19:50 +00:00
68 lines
1.7 KiB
Bash
Executable file
68 lines
1.7 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
export LANG=en_US.UTF-8
|
|
|
|
function timestamp {
|
|
date "+%Y%m%d %H:%M %z"
|
|
}
|
|
function unix_timestamp {
|
|
date "+%s"
|
|
}
|
|
|
|
function melpa {
|
|
timestamp
|
|
|
|
timestamp > $HOME/www/status.txt
|
|
echo "building..." >> $HOME/www/status.txt
|
|
|
|
MELPADIR=${MELPADIR:-$HOME/melpa}
|
|
MELPABRANCH=${MELPABRANCH:-master}
|
|
WEBROOT=${WEBROOT:-$HOME/www}
|
|
|
|
PATH=$HOME/.cabal/bin:$HOME/usr/bin:$HOME/bin:$PATH
|
|
|
|
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
|
|
|
|
ENVLOG=$HOME/log/melpaenv.log
|
|
env > ${ENVLOG}
|
|
|
|
STDOUT=`mktemp`
|
|
STDERR=`mktemp`
|
|
|
|
## git pull
|
|
cd ${MELPADIR}
|
|
git pull origin ${MELPABRANCH} &>> ${STDOUT}
|
|
echo >> ${STDOUT}
|
|
|
|
MELPASTDOUT=`mktemp`
|
|
|
|
## run the script
|
|
cd ${MELPADIR}
|
|
make 1>> ${MELPASTDOUT} 2>> ${STDERR}
|
|
|
|
## sync to the web directory
|
|
rsync -avz --delete ${MELPADIR}/packages ${MELPADIR}/html/* ${WEBROOT}/ 1>> ${STDOUT} 2>> ${STDERR}
|
|
|
|
chmod -R go+r ${WEBROOT}/packages/*
|
|
chmod -R go-x ${WEBROOT}/packages/*
|
|
|
|
/usr/sbin/logrotate -s $HOME/log/logrotate.state $HOME/log/melpa.logrotate 1>> ${STDOUT} 2>> ${STDERR}
|
|
|
|
EMAIL=`mktemp`
|
|
echo "Subject: Melpa status `timestamp`" > ${EMAIL}
|
|
cat ${MELPASTDOUT} ${STDOUT} ${ENVLOG} ${STDERR} >> ${EMAIL}
|
|
|
|
/usr/sbin/sendmail dcurtis@milkbox.net < ${EMAIL}
|
|
cat ${ENVLOG} ${STDERR} ${STDOUT} | tee $WEBROOT/lastrun.txt
|
|
|
|
timestamp > $HOME/www/status.txt
|
|
echo "completed" >> $HOME/www/status.txt
|
|
echo '{"completed":' `unix_timestamp` '}' > $HOME/www/build-status.json
|
|
}
|
|
|
|
if [[ `cat $HOME/www/updatemelpa.txt` == 1 ]] ; then
|
|
echo "Running MELPA"
|
|
echo "2" > $HOME/www/updatemelpa.txt
|
|
melpa
|
|
echo "0" > $HOME/www/updatemelpa.txt
|
|
fi
|