Add support for local settings

This commit is contained in:
Pierre Pronchery 2020-11-03 15:27:09 +01:00
parent 793481234b
commit 0fec25465e

View File

@ -29,26 +29,10 @@
#environment #environment
umask 022 umask 022
#variables #variables
DATE=$(date '+%Y%m%d')
DESTDIR="/var/www"
DEVNULL="/dev/null"
EMAIL="devel@lists.defora.org"
HOMEPAGE="https://www.defora.org"
PROGNAME="deforaos-update"
ROOT=
SRC=
#CVS
CVSMODULE="DeforaOS"
SRC="$HOME/$CVSMODULE"
[ -z "$CVSROOT" ] && CVSROOT=":pserver:anonymous@anoncvs.defora.org:/home/cvs"
#Git
[ -z "$GITROOT" ] && GITROOT="https://git.defora.org/git/DeforaOS.git"
#executables #executables
CONFIGURE="configure" CONFIGURE="configure"
CVS="cvs -q" CVS="cvs -q"
DATE="date"
FIND="find" FIND="find"
GIT="git" GIT="git"
LN="ln -f" LN="ln -f"
@ -61,6 +45,25 @@ RMDIR="rmdir"
TAR="tar" TAR="tar"
TOUCH="touch" TOUCH="touch"
XARGS="xargs" XARGS="xargs"
#settings
CVSMODULE="DeforaOS"
[ -n "$CVSROOT" ] || CVSROOT=":pserver:anonymous@anoncvs.defora.org:/home/cvs"
DATE_TODAY=$($DATE '+%Y%m%d')
DESTDIR="/var/www"
DEVNULL="/dev/null"
EMAIL="devel@lists.defora.org"
[ -n "$GITROOT" ] || GITROOT="https://git.defora.org/git/DeforaOS.git"
HOMEPAGE="https://www.defora.org"
PREFIX="/usr/local"
PROGNAME="deforaos-update"
ROOT=
SRC="$HOME/$CVSMODULE"
SYSCONFDIR="$PREFIX/etc"
#load local settings
[ -f "$SYSCONFDIR/DeforaOS/$PROGNAME.conf" ] &&
. "$SYSCONFDIR/DeforaOS/$PROGNAME.conf"
[ -f "$HOME/.config/DeforaOS/$PROGNAME.conf" ] &&
. "$HOME/.config/DeforaOS/$PROGNAME.conf"
#functions #functions
@ -93,10 +96,10 @@ _deforaos_update_cvs()
echo "" echo ""
echo "Archiving CVS module $CVSMODULE:" echo "Archiving CVS module $CVSMODULE:"
for i in *; do for i in *; do
echo "DeforaOS-$DATE/$i" echo "DeforaOS-$DATE_TODAY/$i"
done | ($LN -s . "DeforaOS-$DATE" \ done | ($LN -s . "DeforaOS-$DATE_TODAY" \
&& $XARGS $TAR -czf "$DESTDIR/htdocs/download/snapshots/DeforaOS-daily.tar.gz") && $XARGS $TAR -czf "$DESTDIR/htdocs/download/snapshots/DeforaOS-daily.tar.gz")
$RM "DeforaOS-$DATE" $RM "DeforaOS-$DATE_TODAY"
echo "$HOMEPAGE/download/snapshots/DeforaOS-daily.tar.gz" echo "$HOMEPAGE/download/snapshots/DeforaOS-daily.tar.gz"
} }
@ -143,10 +146,10 @@ _deforaos_update_git()
echo "Archiving DeforaOS from Git repository $GITROOT:" echo "Archiving DeforaOS from Git repository $GITROOT:"
for i in "$ROOT/$SRC/.git" "$ROOT/$SRC/"*; do for i in "$ROOT/$SRC/.git" "$ROOT/$SRC/"*; do
i=${i##$ROOT/$SRC/} i=${i##$ROOT/$SRC/}
echo "DeforaOS-$DATE/$i" echo "DeforaOS-$DATE_TODAY/$i"
done | (cd "$ROOT" && $LN -s "$SRC" "DeforaOS-$DATE" \ done | (cd "$ROOT" && $LN -s "$SRC" "DeforaOS-$DATE_TODAY" \
&& $XARGS $TAR -czf "$DESTDIR/htdocs/download/snapshots/DeforaOS-daily.tar.gz") && $XARGS $TAR -czf "$DESTDIR/htdocs/download/snapshots/DeforaOS-daily.tar.gz")
$RM "$ROOT/DeforaOS-$DATE" $RM "$ROOT/DeforaOS-$DATE_TODAY"
echo "$HOMEPAGE/download/snapshots/DeforaOS-daily.tar.gz" echo "$HOMEPAGE/download/snapshots/DeforaOS-daily.tar.gz"
} }
@ -199,7 +202,7 @@ if [ -z "$ROOT" ]; then
fi fi
[ -n "$ROOT" ] || exit 2 [ -n "$ROOT" ] || exit 2
if [ $email -eq 1 ]; then if [ $email -eq 1 ]; then
$update 2>&1 | $MAIL -s "Daily $scm update: $DATE" "$EMAIL" $update 2>&1 | $MAIL -s "Daily $scm update: $DATE_TODAY" "$EMAIL"
else else
$update $update
fi fi