Compare commits
19 Commits
Author | SHA1 | Date | |
---|---|---|---|
bb64fe0188 | |||
1617e30950 | |||
f0eaac941b | |||
c0b7304aa4 | |||
7a268ce0c8 | |||
49a1ed773b | |||
99ab1fe252 | |||
112abc68c6 | |||
f2bb820de8 | |||
0f96bedecd | |||
70548ea687 | |||
67497d1d4f | |||
50d38312db | |||
82ab9d49c9 | |||
24f57a4cd4 | |||
0c9f7b442e | |||
03d939419c | |||
ea9bd6e623 | |||
6fc6b0bda6 |
7
Makefile
7
Makefile
@ -1,5 +1,5 @@
|
|||||||
# Makefile for autodist
|
# Makefile for autodist
|
||||||
# Copyright (C) 2006-2009 by Silvan Calarco <silvan.calarco@mambasoft.it>
|
# Copyright (C) 2006-2014 by Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||||
#
|
#
|
||||||
PACKAGE = autodist
|
PACKAGE = autodist
|
||||||
|
|
||||||
@ -47,6 +47,7 @@ install-dirs:
|
|||||||
@$(INSTALL_DIR) $(DESTDIR)$(sysconfdir)/cron.hourly
|
@$(INSTALL_DIR) $(DESTDIR)$(sysconfdir)/cron.hourly
|
||||||
@$(INSTALL_DIR) $(DESTDIR)$(sysconfdir)/cron.daily
|
@$(INSTALL_DIR) $(DESTDIR)$(sysconfdir)/cron.daily
|
||||||
@$(INSTALL_DIR) $(DESTDIR)$(sysconfdir)/sysconfig
|
@$(INSTALL_DIR) $(DESTDIR)$(sysconfdir)/sysconfig
|
||||||
|
@$(INSTALL_DIR) $(DESTDIR)$(sysconfdir)/logrotate.d
|
||||||
@$(INSTALL_DIR) $(DESTDIR)$(bindir)
|
@$(INSTALL_DIR) $(DESTDIR)$(bindir)
|
||||||
@$(INSTALL_DIR) $(DESTDIR)$(sbindir)
|
@$(INSTALL_DIR) $(DESTDIR)$(sbindir)
|
||||||
@$(INSTALL_DIR) $(DESTDIR)$(cgidir)
|
@$(INSTALL_DIR) $(DESTDIR)$(cgidir)
|
||||||
@ -71,6 +72,7 @@ install-programs:
|
|||||||
@$(INSTALL_SCRIPT) autoport $(DESTDIR)$(bindir)/autoport
|
@$(INSTALL_SCRIPT) autoport $(DESTDIR)$(bindir)/autoport
|
||||||
@$(INSTALL_SCRIPT) automaint $(DESTDIR)$(sbindir)/automaint
|
@$(INSTALL_SCRIPT) automaint $(DESTDIR)$(sbindir)/automaint
|
||||||
@$(INSTALL_SCRIPT) autoport-chroot $(DESTDIR)$(sbindir)/autoport-chroot
|
@$(INSTALL_SCRIPT) autoport-chroot $(DESTDIR)$(sbindir)/autoport-chroot
|
||||||
|
@$(INSTALL_SCRIPT) autodist-repository $(DESTDIR)$(sbindir)/autodist-repository
|
||||||
@$(INSTALL_SCRIPT) autodist-upstream-updates $(DESTDIR)$(sbindir)/autodist-upstream-updates
|
@$(INSTALL_SCRIPT) autodist-upstream-updates $(DESTDIR)$(sbindir)/autodist-upstream-updates
|
||||||
@$(INSTALL_SCRIPT) autoport-fix-environment $(DESTDIR)$(bindir)/autoport-fix-environment
|
@$(INSTALL_SCRIPT) autoport-fix-environment $(DESTDIR)$(bindir)/autoport-fix-environment
|
||||||
@$(INSTALL_SCRIPT) etc/autodist/scripts/* $(DESTDIR)$(configdir)/scripts/
|
@$(INSTALL_SCRIPT) etc/autodist/scripts/* $(DESTDIR)$(configdir)/scripts/
|
||||||
@ -107,7 +109,10 @@ install-data:
|
|||||||
@$(INSTALL_SCRIPT) etc/cron.hourly/66-autoport-chroot $(DESTDIR)$(sysconfdir)/cron.hourly/
|
@$(INSTALL_SCRIPT) etc/cron.hourly/66-autoport-chroot $(DESTDIR)$(sysconfdir)/cron.hourly/
|
||||||
@$(INSTALL_SCRIPT) etc/cron.daily/40-autodist-cleanold $(DESTDIR)$(sysconfdir)/cron.daily/
|
@$(INSTALL_SCRIPT) etc/cron.daily/40-autodist-cleanold $(DESTDIR)$(sysconfdir)/cron.daily/
|
||||||
@$(INSTALL_SCRIPT) etc/cron.daily/40-autodist-upstream-updates $(DESTDIR)$(sysconfdir)/cron.daily/
|
@$(INSTALL_SCRIPT) etc/cron.daily/40-autodist-upstream-updates $(DESTDIR)$(sysconfdir)/cron.daily/
|
||||||
|
@$(INSTALL_SCRIPT) etc/logrotate.d/webbuild $(DESTDIR)$(sysconfdir)/logrotate.d/webbuild
|
||||||
@$(INSTALL_DATA) autospec-conf $(DESTDIR)$(pck_statedir)/.autospec
|
@$(INSTALL_DATA) autospec-conf $(DESTDIR)$(pck_statedir)/.autospec
|
||||||
|
@$(INSTALL_DATA) autodist-bashrc $(DESTDIR)$(pck_statedir)/.bashrc
|
||||||
|
@$(INSTALL_DATA) autodist-bash_profile $(DESTDIR)$(pck_statedir)/.bash_profile
|
||||||
@touch $(DESTDIR)$(pck_statedir)/template/autoupdate/auto.success
|
@touch $(DESTDIR)$(pck_statedir)/template/autoupdate/auto.success
|
||||||
@touch $(DESTDIR)$(pck_statedir)/template/autoupdate/auto.skip
|
@touch $(DESTDIR)$(pck_statedir)/template/autoupdate/auto.skip
|
||||||
|
|
||||||
|
66
autodist
66
autodist
@ -5,7 +5,7 @@
|
|||||||
#
|
#
|
||||||
# Released under the terms of the GNU GPL release 3 license
|
# Released under the terms of the GNU GPL release 3 license
|
||||||
#
|
#
|
||||||
VERSION=0.9.8
|
VERSION=0.9.10
|
||||||
me=(${0##*/} $VERSION "Sat Aug 20 2010")
|
me=(${0##*/} $VERSION "Sat Aug 20 2010")
|
||||||
exec 3>`readlink /proc/self/fd/0`
|
exec 3>`readlink /proc/self/fd/0`
|
||||||
|
|
||||||
@ -220,12 +220,6 @@ done
|
|||||||
[ "$SEND_SERVER" ] || SEND_SERVER=$AUTODIST_REPOSITORY
|
[ "$SEND_SERVER" ] || SEND_SERVER=$AUTODIST_REPOSITORY
|
||||||
|
|
||||||
SEND_SERVER_CMD="--server $SEND_SERVER"
|
SEND_SERVER_CMD="--server $SEND_SERVER"
|
||||||
AUTOUPDATEDIR=${LOCAL_REPS_BASE_DIR}/$AUTODIST_REPOSITORY/autoupdate/
|
|
||||||
|
|
||||||
[ -r $AUTOUPDATEDIR ] || {
|
|
||||||
AUTOUPDATEDIR=$USERCONFDIR/$AUTODIST_REPOSITORY/autoupdate
|
|
||||||
mkdir -p $AUTOUPDATEDIR
|
|
||||||
}
|
|
||||||
|
|
||||||
# perform arch names conversions
|
# perform arch names conversions
|
||||||
case $BUILDARCH in
|
case $BUILDARCH in
|
||||||
@ -236,34 +230,6 @@ case $TARGETARCH in
|
|||||||
i386|i486|i686) TARGETARCH=i586 ;;
|
i386|i486|i686) TARGETARCH=i586 ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
SOURCESDIR=$AUTOUPDATEDIR/sources/
|
|
||||||
SUCCESSLISTDIR=$AUTOUPDATEDIR
|
|
||||||
SKIPPEDLISTDIR=$AUTOUPDATEDIR
|
|
||||||
|
|
||||||
SRCPKGLIST=`fetch_repository_list $AUTODIST_REPOSITORY/srcpkglist`
|
|
||||||
[ "$AUTODIST_DELAYED_REPOSITORY" ] && SRCPKGLIST_DELAYED=`fetch_repository_list $AUTODIST_DELAYED_REPOSITORY/srcpkglist`
|
|
||||||
|
|
||||||
BUILDSLIST=`fetch_repository_list distromatic/$AUTODIST_REPOSITORY/builds-$TARGETARCH`
|
|
||||||
[ "$AUTODIST_DELAYED_REPOSITORY" ] && BUILDSLIST_DELAYED=`fetch_repository_list distromatic/$AUTODIST_DELAYED_REPOSITORY/builds-$TARGETARCH`
|
|
||||||
|
|
||||||
[ -e "$DISTDB" ] || {
|
|
||||||
echo "ERROR: missing distdb file $DISTDB; aborting."
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
[ -e $LOGBASEDIR ] || {
|
|
||||||
mkdir -p $LOGBASEDIR/prepare/{ok,failed}
|
|
||||||
mkdir -p $LOGBASEDIR/update/{ok,failed}
|
|
||||||
mkdir -p $LOGBASEDIR/build/{ok,failed}
|
|
||||||
mkdir -p $LOGBASEDIR/install/{ok,failed}
|
|
||||||
mkdir -p $LOGBASEDIR/send/{ok,failed}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[ "$PACKAGE" ] || {
|
|
||||||
# echo "ERROR: missing target; aborting."
|
|
||||||
# usage
|
|
||||||
# exit 1
|
|
||||||
#}
|
|
||||||
|
|
||||||
# for webbuild message
|
# for webbuild message
|
||||||
function cgi_encodevar() {
|
function cgi_encodevar() {
|
||||||
@ -880,6 +846,19 @@ function log_date() {
|
|||||||
echo -n `LANG=C date +%Y%m%d@%H%M%S`
|
echo -n `LANG=C date +%Y%m%d@%H%M%S`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[ -e "$DISTDB" ] || {
|
||||||
|
echo "ERROR: missing distdb file $DISTDB; aborting."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -e $LOGBASEDIR ] || {
|
||||||
|
mkdir -p $LOGBASEDIR/prepare/{ok,failed}
|
||||||
|
mkdir -p $LOGBASEDIR/update/{ok,failed}
|
||||||
|
mkdir -p $LOGBASEDIR/build/{ok,failed}
|
||||||
|
mkdir -p $LOGBASEDIR/install/{ok,failed}
|
||||||
|
mkdir -p $LOGBASEDIR/send/{ok,failed}
|
||||||
|
}
|
||||||
|
|
||||||
DISTDBFILES="$DISTDB"
|
DISTDBFILES="$DISTDB"
|
||||||
[ -e $DISTDB.$TARGETARCH ] && DISTDBFILES="$DISTDBFILES $DISTDB.$TARGETARCH"
|
[ -e $DISTDB.$TARGETARCH ] && DISTDBFILES="$DISTDBFILES $DISTDB.$TARGETARCH"
|
||||||
[ -e ~/.autodist/distdb ] && DISTDBFILES="$DISTDBFILES ~/.autodist/distdb"
|
[ -e ~/.autodist/distdb ] && DISTDBFILES="$DISTDBFILES ~/.autodist/distdb"
|
||||||
@ -931,6 +910,23 @@ for a in $LOGBASEDIR/{,prepare/{,ok,failed},update/{,ok,failed},build/{,ok,faile
|
|||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
|
AUTOUPDATEDIR=${LOCAL_REPS_BASE_DIR}/$AUTODIST_REPOSITORY/autoupdate/
|
||||||
|
[ -r $AUTOUPDATEDIR ] || {
|
||||||
|
AUTOUPDATEDIR=$USERCONFDIR/$AUTODIST_REPOSITORY/autoupdate
|
||||||
|
mkdir -p $AUTOUPDATEDIR
|
||||||
|
}
|
||||||
|
|
||||||
|
SOURCESDIR=$AUTOUPDATEDIR/sources/
|
||||||
|
SUCCESSLISTDIR=$AUTOUPDATEDIR
|
||||||
|
SKIPPEDLISTDIR=$AUTOUPDATEDIR
|
||||||
|
|
||||||
|
SRCPKGLIST=`fetch_repository_list $AUTODIST_REPOSITORY/srcpkglist`
|
||||||
|
[ "$AUTODIST_DELAYED_REPOSITORY" ] && SRCPKGLIST_DELAYED=`fetch_repository_list $AUTODIST_DELAYED_REPOSITORY/srcpkglist`
|
||||||
|
|
||||||
|
BUILDSLIST=`fetch_repository_list distromatic/$AUTODIST_REPOSITORY/builds-$TARGETARCH`
|
||||||
|
[ "$AUTODIST_DELAYED_REPOSITORY" ] && BUILDSLIST_DELAYED=`fetch_repository_list distromatic/$AUTODIST_DELAYED_REPOSITORY/builds-$TARGETARCH`
|
||||||
|
|
||||||
|
|
||||||
echo "%% Autodist started with PID $$ @ `LANG=C date`"
|
echo "%% Autodist started with PID $$ @ `LANG=C date`"
|
||||||
|
|
||||||
# autobuild: add jobs ordered by oldest builds
|
# autobuild: add jobs ordered by oldest builds
|
||||||
|
14
autodist-bash_profile
Normal file
14
autodist-bash_profile
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# .bash_profile
|
||||||
|
|
||||||
|
# Get the aliases and functions
|
||||||
|
if [ -f ~/.bashrc ]; then
|
||||||
|
. ~/.bashrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
# User specific environment and startup programs
|
||||||
|
if [ -d $HOME/bin ]; then
|
||||||
|
PATH=$PATH:$HOME/bin
|
||||||
|
fi
|
||||||
|
export PATH
|
||||||
|
|
||||||
|
unset USERNAME
|
8
autodist-bashrc
Normal file
8
autodist-bashrc
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# .bashrc
|
||||||
|
|
||||||
|
# User specific aliases and functions
|
||||||
|
|
||||||
|
# Source global definitions
|
||||||
|
if [ -f /etc/bashrc ]; then
|
||||||
|
. /etc/bashrc
|
||||||
|
fi
|
76
autodist-cgi
76
autodist-cgi
@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
NUM=`echo "$QUERY_STRING" | sed -n 's/^.*NUM=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
NUM=`echo "$QUERY_STRING" | sed -n 's/^.*NUM=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
||||||
HOST=`echo "$QUERY_STRING" | sed -n 's/^.*HOST=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
HOST=`echo "$QUERY_STRING" | sed -n 's/^.*HOST=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
||||||
|
REP=`echo "$QUERY_STRING" | sed -n 's/^.*REP=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
||||||
AS_HOST=`echo "$QUERY_STRING" | sed -n 's/^.*AS_HOST=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
AS_HOST=`echo "$QUERY_STRING" | sed -n 's/^.*AS_HOST=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
||||||
SHOWLOG=`echo "$QUERY_STRING" | sed -n 's/^.*SHOWLOG=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
SHOWLOG=`echo "$QUERY_STRING" | sed -n 's/^.*SHOWLOG=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
||||||
SHOWINDEX=`echo "$QUERY_STRING" | sed -n 's/^.*SHOWINDEX=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
SHOWINDEX=`echo "$QUERY_STRING" | sed -n 's/^.*SHOWINDEX=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
|
||||||
@ -49,15 +50,17 @@ if [ "$SHOWINDEX" ]; then
|
|||||||
[ "${AUTOPORT_ARCH[$i]}" ] || continue
|
[ "${AUTOPORT_ARCH[$i]}" ] || continue
|
||||||
[ "${AUTOPORT_DISABLE[$i]}" -a "${AUTOPORT_DISABLE[$i]}" != "0" ] && continue
|
[ "${AUTOPORT_DISABLE[$i]}" -a "${AUTOPORT_DISABLE[$i]}" != "0" ] && continue
|
||||||
|
|
||||||
|
RNUM=-1
|
||||||
for r in ${AUTOPORT_REPOSITORIES[$i]}; do
|
for r in ${AUTOPORT_REPOSITORIES[$i]}; do
|
||||||
|
RNUM=`expr $RNUM + 1`
|
||||||
if [ "${AUTOPORT_UPDATE[$i]}" ]; then
|
if [ "${AUTOPORT_UPDATE[$i]}" ]; then
|
||||||
echo "<a href=\"?NUM=$i$HOST_ADD\">$r(${AUTOPORT_ARCH[$i]})</a> "
|
echo "<a href=\"?NUM=$i&REP=$RNUM$HOST_ADD\">$r(${AUTOPORT_ARCH[$i]})</a> "
|
||||||
elif [ "${AUTOPORT_CHROOT[$i]}" ]; then
|
elif [ "${AUTOPORT_CHROOT[$i]}" ]; then
|
||||||
echo "<a href=\"?NUM=$i$HOST_ADD\">$r(${AUTOPORT_ARCH[$i]})</a> "
|
echo "<a href=\"?NUM=$i&REP=$RNUM$HOST_ADD\">$r(${AUTOPORT_ARCH[$i]})</a> "
|
||||||
elif [ "${AUTOPORT_NATIVE[$i]}" ]; then
|
elif [ "${AUTOPORT_NATIVE[$i]}" ]; then
|
||||||
echo "<a href=\"?NUM=$i$HOST_ADD\">$r(${AUTOPORT_ARCH[$i]})</a> "
|
echo "<a href=\"?NUM=$i&REP=$RNUM$HOST_ADD\">$r(${AUTOPORT_ARCH[$i]})</a> "
|
||||||
elif [ "${AUTOPORT_CROSS[$i]}" ]; then
|
elif [ "${AUTOPORT_CROSS[$i]}" ]; then
|
||||||
echo "<a href=\"?NUM=$i$HOST_ADD\">$r(${AUTOPORT_CROSS[$i]};${AUTOPORT_ARCH[$i]})</a> "
|
echo "<a href=\"?NUM=$i&REP=$RNUM$HOST_ADD\">$r(${AUTOPORT_CROSS[$i]};${AUTOPORT_ARCH[$i]})</a> "
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
@ -74,7 +77,7 @@ fi
|
|||||||
[ ! "$SHOWLOG" -a "$HOST" = "$AS_HOST" ] && echo "<h2>Host: `hostname -s` (`uname -m`, kernel `uname -r`)</h2>"
|
[ ! "$SHOWLOG" -a "$HOST" = "$AS_HOST" ] && echo "<h2>Host: `hostname -s` (`uname -m`, kernel `uname -r`)</h2>"
|
||||||
|
|
||||||
if [ "$SHOWLOG" -a "$HOST" != "$AS_HOST" ]; then
|
if [ "$SHOWLOG" -a "$HOST" != "$AS_HOST" ]; then
|
||||||
curl "${AUTOPORT_CGI_HOST[$HOST]}?AS_HOST=$HOST&SHOWLOG=$SHOWLOG&NUM=$NUM&LOG=$LOG" 2>/dev/null
|
curl "${AUTOPORT_CGI_HOST[$HOST]}?AS_HOST=$HOST&SHOWLOG=$SHOWLOG&NUM=$NUM&REP=$REP&LOG=$LOG" 2>/dev/null
|
||||||
else
|
else
|
||||||
|
|
||||||
for i in `seq 0 ${#AUTOPORT_ARCH[*]}`; do
|
for i in `seq 0 ${#AUTOPORT_ARCH[*]}`; do
|
||||||
@ -96,10 +99,11 @@ for i in `seq 0 ${#AUTOPORT_ARCH[*]}`; do
|
|||||||
RELOADTIME=15000
|
RELOADTIME=15000
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
|
RNUM=-1
|
||||||
for r in ${AUTOPORT_REPOSITORIES[$i]}; do
|
for r in ${AUTOPORT_REPOSITORIES[$i]}; do
|
||||||
[ "${AUTOPORT_ARCH[$i]}" ] || continue
|
[ "${AUTOPORT_ARCH[$i]}" ] || continue
|
||||||
[ "${AUTOPORT_DISABLE[$i]}" -a "${AUTOPORT_DISABLE[$i]}" != "0" ] && continue
|
[ "${AUTOPORT_DISABLE[$i]}" -a "${AUTOPORT_DISABLE[$i]}" != "0" ] && continue
|
||||||
|
RNUM=`expr $RNUM + 1`
|
||||||
LOGDIR=`environment_logdir $i`
|
LOGDIR=`environment_logdir $i`
|
||||||
AUTOPORTLOGDIR=`environment_autoport_logdir $i`
|
AUTOPORTLOGDIR=`environment_autoport_logdir $i`
|
||||||
ENVROOTDIR=`environment_rootdir $i`
|
ENVROOTDIR=`environment_rootdir $i`
|
||||||
@ -115,8 +119,8 @@ for i in `seq 0 ${#AUTOPORT_ARCH[*]}`; do
|
|||||||
AUTODISTLOGFILE="$AUTOPORTLOGDIR/${AUTOPORT_ARCH[$i]}/$r-current.log"
|
AUTODISTLOGFILE="$AUTOPORTLOGDIR/${AUTOPORT_ARCH[$i]}/$r-current.log"
|
||||||
AUTODISTSTATEFILE="$AUTOPORTLOGDIR/autoport-$r-current"
|
AUTODISTSTATEFILE="$AUTOPORTLOGDIR/autoport-$r-current"
|
||||||
elif [ "${AUTOPORT_NATIVE[$i]}" ]; then
|
elif [ "${AUTOPORT_NATIVE[$i]}" ]; then
|
||||||
LOGFILE="$LOGDIR/autoport-native-$r-${AUTOPORT_ARCH[$i]}.log"
|
LOGFILE="/var/autodist/log/autoport-native-$r-${AUTOPORT_ARCH[$i]}.log"
|
||||||
LASTLOGFILE="$LOGDIR/log/autoport-native-$r-${AUTOPORT_ARCH[$i]}-last.log"
|
LASTLOGFILE="/var/autodist/log/log/autoport-native-$r-${AUTOPORT_ARCH[$i]}-last.log"
|
||||||
AUTODISTLOGFILE="$AUTOPORTLOGDIR/${AUTOPORT_ARCH[$i]}/$r-current.log"
|
AUTODISTLOGFILE="$AUTOPORTLOGDIR/${AUTOPORT_ARCH[$i]}/$r-current.log"
|
||||||
AUTODISTSTATEFILE="$AUTOPORTLOGDIR/autoport-$r-current"
|
AUTODISTSTATEFILE="$AUTOPORTLOGDIR/autoport-$r-current"
|
||||||
elif [ "${AUTOPORT_CROSS[$i]}" ]; then
|
elif [ "${AUTOPORT_CROSS[$i]}" ]; then
|
||||||
@ -126,7 +130,7 @@ for i in `seq 0 ${#AUTOPORT_ARCH[*]}`; do
|
|||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
if [ "$SHOWLOG" ]; then
|
if [ "$SHOWLOG" ]; then
|
||||||
if [ "$HOST" = "$AS_HOST" -a "$NUM" = "$i" ]; then
|
if [ "$HOST" = "$AS_HOST" -a "$NUM" = "$i" -a "$REP" = "$RNUM" ]; then
|
||||||
echo -n "<p><h2>$SHOWLOG log in "
|
echo -n "<p><h2>$SHOWLOG log in "
|
||||||
if [ "${AUTOPORT_UPDATE[$i]}" ]; then
|
if [ "${AUTOPORT_UPDATE[$i]}" ]; then
|
||||||
echo -n "update"
|
echo -n "update"
|
||||||
@ -156,19 +160,15 @@ _EOF
|
|||||||
else
|
else
|
||||||
# Security check
|
# Security check
|
||||||
[ "${SHOWLOG/\/\.}" != "${SHOWLOG}" ] && continue
|
[ "${SHOWLOG/\/\.}" != "${SHOWLOG}" ] && continue
|
||||||
if [ "${AUTOPORT_CHROOT[$i]}" ]; then
|
BUILDLOGDIR="$LOGDIR"
|
||||||
BUILDLOGDIR="$LOGDIR"
|
|
||||||
elif [ "${AUTOPORT_NATIVE[$i]}" -o "${AUTOPORT_UPDATE[$i]}" ]; then
|
|
||||||
BUILDLOGDIR="/var/autodist/log/"
|
|
||||||
fi
|
|
||||||
if [ "${SHOWLOG/\/ok\/}" != "${SHOWLOG}" -o "${SHOWLOG/\failed\/}" != "${SHOWLOG}" ]; then
|
if [ "${SHOWLOG/\/ok\/}" != "${SHOWLOG}" -o "${SHOWLOG/\failed\/}" != "${SHOWLOG}" ]; then
|
||||||
SHOWLOGPKG=${SHOWLOG/*\/}
|
SHOWLOGPKG=${SHOWLOG/*\/}
|
||||||
[ "${SHOWLOGPKG}" ] || continue
|
[ "${SHOWLOGPKG}" ] || continue
|
||||||
echo "<table style=\"color:black\"><tr><td colspan=3>Last ${SHOWLOGPKG} logs:</td>"
|
echo "<table style=\"color:black\"><tr><td colspan=3>Last ${SHOWLOGPKG} logs:</td>"
|
||||||
for t in prepare update build install send; do
|
for t in prepare update build install send; do
|
||||||
echo -n "<tr><td>$t:</td><td>"
|
echo -n "<tr><td>$t:</td><td>"
|
||||||
[ -e ${BUILDLOGDIR}${t}/ok/${SHOWLOGPKG} ] && echo -n "<td><a style=\"color:green;text-decoration:none\" target=_autodist href=\"?NUM=$i$HOST_ADD&SHOWLOG=${t}/ok/${SHOWLOGPKG}\">OK</a></td>" || echo "<td></td>"
|
[ -e ${BUILDLOGDIR}${t}/ok/${SHOWLOGPKG} ] && echo -n "<td><a style=\"color:green;text-decoration:none\" target=_autodist href=\"?NUM=$i&REP=$RNUM$HOST_ADD&SHOWLOG=${t}/ok/${SHOWLOGPKG}\">OK</a></td>" || echo "<td></td>"
|
||||||
[ -e ${BUILDLOGDIR}${t}/failed/${SHOWLOGPKG} ] && echo -n "<td><a style=\"color:green;text-decoration:none\" target=_autodist href=\"?NUM=$i$HOST_ADD&SHOWLOG=${t}/failed/${SHOWLOGPKG}\">FAILED</a></td>" || echo "<td></td>"
|
[ -e ${BUILDLOGDIR}${t}/failed/${SHOWLOGPKG} ] && echo -n "<td><a style=\"color:green;text-decoration:none\" target=_autodist href=\"?NUM=$i&REP=$RNUM$HOST_ADD&SHOWLOG=${t}/failed/${SHOWLOGPKG}\">FAILED</a></td>" || echo "<td></td>"
|
||||||
echo "</tr>"
|
echo "</tr>"
|
||||||
done
|
done
|
||||||
echo "</table>"
|
echo "</table>"
|
||||||
@ -196,29 +196,29 @@ _EOF
|
|||||||
[[ "$NUM" && "$NUM" != "$i" ]] && continue
|
[[ "$NUM" && "$NUM" != "$i" ]] && continue
|
||||||
[[ "$HOST" = "$AS_HOST" ]] || continue
|
[[ "$HOST" = "$AS_HOST" ]] || continue
|
||||||
if [ "${AUTOPORT_UPDATE[$i]}" ]; then
|
if [ "${AUTOPORT_UPDATE[$i]}" ]; then
|
||||||
echo "<b>* <a target=_autodist href=\"?NUM=$i&HOST=$AS_HOST\">$r</a>(${AUTOPORT_ARCH[$i]}) (type:autodist update)"
|
echo "<b>* <a target=_autodist href=\"?NUM=$i&REP=$RNUM&HOST=$AS_HOST\">$r</a>(${AUTOPORT_ARCH[$i]}) (type:autodist update)"
|
||||||
echo " [ <a target=_autodist href=\"?SHOWLOG=current&NUM=$i$HOST_ADD\">log</a> <a target=_autodist href=\"?SHOWLOG=last&NUM=$i$HOST_ADD\">last</a> ]</b>"
|
echo " [ <a target=_autodist href=\"?SHOWLOG=current&NUM=$i&REP=$RNUM$HOST_ADD\">log</a> <a target=_autodist href=\"?SHOWLOG=last&NUM=$i&REP=$RNUM$HOST_ADD\">last</a> ]</b>"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${AUTOPORT_CHROOT[$i]}" ]; then
|
if [ "${AUTOPORT_CHROOT[$i]}" ]; then
|
||||||
echo "<b>* <a target=_autodist href=\"?NUM=$i&HOST=$AS_HOST\">$r</a>(${AUTOPORT_ARCH[$i]}) (type:chroot autoport</a> chroot:${AUTOPORT_CHROOT[$i]})"
|
echo "<b>* <a target=_autodist href=\"?NUM=$i&REP=$RNUM&HOST=$AS_HOST\">$r</a>(${AUTOPORT_ARCH[$i]}) (type:chroot autoport</a> chroot:${AUTOPORT_CHROOT[$i]})"
|
||||||
echo " [ <a target=_autodist href=\"?SHOWLOG=current&NUM=$i$HOST_ADD\">log</a> <a target=_autodist href=\"?SHOWLOG=last&NUM=$i$HOST_ADD\">last</a> ]</b>"
|
echo " [ <a target=_autodist href=\"?SHOWLOG=current&NUM=$i&REP=$RNUM$HOST_ADD\">log</a> <a target=_autodist href=\"?SHOWLOG=last&NUM=$i&REP=$RNUM$HOST_ADD\">last</a> ]</b>"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${AUTOPORT_NATIVE[$i]}" ]; then
|
if [ "${AUTOPORT_NATIVE[$i]}" ]; then
|
||||||
echo "<b>* <a target=_autodist href=\"?NUM=$i&HOST=$AS_HOST\">$r</a>(${AUTOPORT_ARCH[$i]}) (type:native autoport)"
|
echo "<b>* <a target=_autodist href=\"?NUM=$i&REP=$RNUM&HOST=$AS_HOST\">$r</a>(${AUTOPORT_ARCH[$i]}) (type:native autoport)"
|
||||||
echo " [ <a target=_autodist href=\"?SHOWLOG=current&NUM=$i$HOST_ADD\">log</a> <a target=_autodist href=\"?SHOWLOG=last&NUM=$i$HOST_ADD\">last</a> ]</b>"
|
echo " [ <a target=_autodist href=\"?SHOWLOG=current&NUM=$i&REP=$RNUM$HOST_ADD\">log</a> <a target=_autodist href=\"?SHOWLOG=last&NUM=$i&REP=$RNUM$HOST_ADD\">last</a> ]</b>"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${AUTOPORT_CROSS[$i]}" ]; then
|
if [ "${AUTOPORT_CROSS[$i]}" ]; then
|
||||||
echo "<b>* <a target=_autodist href=\"?NUM=$i&HOST=$AS_HOST\">cross-platform</a> autoport (arch:${AUTOPORT_CROSS[$i]})</b>"
|
echo "<b>* <a target=_autodist href=\"?NUM=$i&REP=$RNUM&HOST=$AS_HOST\">cross-platform</a> autoport (arch:${AUTOPORT_CROSS[$i]})</b>"
|
||||||
echo " [ <a target=_autodist href=\"?SHOWLOG=current&NUM=$i$HOST_ADD\">last</a> ]</b>"
|
echo " [ <a target=_autodist href=\"?SHOWLOG=current&NUM=$i&REP=$RNUM$HOST_ADD\">last</a> ]</b>"
|
||||||
fi
|
fi
|
||||||
cat << _EOF
|
cat << _EOF
|
||||||
<div class=downloadbox align=center>
|
<div class=downloadbox align=center>
|
||||||
<div align=left style="background-color: white; height: 250px; width: 850px; overflow: auto; font-size: 8pt; border:1px solid #2b6600; margin: 4px; padding:4; background-color: #e0f2d0;">
|
<div align=left style="background-color: white; height: 250px; width: 850px; overflow: auto; font-size: 8pt; border:1px solid #2b6600; margin: 4px; padding:4; background-color: #e0f2d0;">
|
||||||
_EOF
|
_EOF
|
||||||
echo "<pre>"
|
echo -n "<pre style='margin:1px'>"
|
||||||
unset BUILDNOWIDX BUILDLOG BUILDNOW BUILDNOWSTATUS SCHEDULED STARTTIME AUTODIST_PID ENDTIME
|
unset BUILDNOWIDX BUILDLOG BUILDNOW BUILDNOWSTATUS SCHEDULED STARTTIME AUTODIST_PID ENDTIME
|
||||||
if [ "${AUTOPORT_UPDATE[$i]}" ]; then
|
if [ "${AUTOPORT_UPDATE[$i]}" ]; then
|
||||||
BUILDNOWIDX=0
|
BUILDNOWIDX=0
|
||||||
@ -297,9 +297,9 @@ _EOF
|
|||||||
else
|
else
|
||||||
WEBBUILD_APPEND="&LOGSTATUSOK=false"
|
WEBBUILD_APPEND="&LOGSTATUSOK=false"
|
||||||
fi
|
fi
|
||||||
echo -n "<a target=_webbuild href=\"/distribution/webbuild.php?REQUEST=autobuildedit&ENVIRONMENT=$i&PACKAGE=$JOBNAME&LOGTYPE=$OPERATIONNAME${WEBBUILD_APPEND}\"><b>$JOBNAME</b></a>: "
|
echo -n "<a target=_webbuild href=\"$AUTOPORT_WEBBUILD_HOST?REQUEST=autobuildedit&ENVIRONMENT=$i&PACKAGE=$JOBNAME&LOGTYPE=$OPERATIONNAME${WEBBUILD_APPEND}\"><b>$JOBNAME</b></a>: "
|
||||||
else
|
else
|
||||||
echo -n "<a target=_webbuild href=\"/distribution/webbuild.php?ENVIRONMENT=$i&PACKAGE=$JOBNAME\"><b>$JOBNAME</b></a>: "
|
echo -n "<a target=_webbuild href=\"$AUTOPORT_WEBBUILD_HOST?ENVIRONMENT=$i&PACKAGE=$JOBNAME\"><b>$JOBNAME</b></a>: "
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
rowcnt=0
|
rowcnt=0
|
||||||
@ -312,26 +312,26 @@ _EOF
|
|||||||
# fi
|
# fi
|
||||||
case $OPERATIONNAME-$OPERATIONSTATUS in
|
case $OPERATIONNAME-$OPERATIONSTATUS in
|
||||||
build-ok|send-ok|install-ok|retryinstall-ok)
|
build-ok|send-ok|install-ok|retryinstall-ok)
|
||||||
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i$HOST_ADD\">$OPERATIONNAME:$OPERATIONSTATUS</a>"
|
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i&REP=$RNUM$HOST_ADD\">$OPERATIONNAME:$OPERATIONSTATUS</a>"
|
||||||
;;
|
;;
|
||||||
update-failed|autoupdate-failed)
|
update-failed|autoupdate-failed)
|
||||||
if [ "${BUILDNOWSTATUS[$b]}" = "4" ]; then
|
if [ "${BUILDNOWSTATUS[$b]}" = "4" ]; then
|
||||||
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i$HOST_ADD\"><font color=green>$OPERATIONNAME:up-to-date</font></a>"
|
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i&REP=$RNUM$HOST_ADD\"><font color=green>$OPERATIONNAME:up-to-date</font></a>"
|
||||||
elif [ "${BUILDNOWSTATUS[$b]}" = "3" ]; then
|
elif [ "${BUILDNOWSTATUS[$b]}" = "3" ]; then
|
||||||
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i$HOST_ADD\"><font color=darkgoldenrod>$OPERATIONNAME:unknown</font></a>"
|
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i&REP=$RNUM$HOST_ADD\"><font color=darkgoldenrod>$OPERATIONNAME:unknown</font></a>"
|
||||||
elif [ "${BUILDNOWSTATUS[$b]}" = "2" ]; then
|
elif [ "${BUILDNOWSTATUS[$b]}" = "2" ]; then
|
||||||
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i$HOST_ADD\"><font color=darkgoldenrod>$OPERATIONNAME:newer</font></a>"
|
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i&REP=$RNUM$HOST_ADD\"><font color=darkgoldenrod>$OPERATIONNAME:newer</font></a>"
|
||||||
else
|
else
|
||||||
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i$HOST_ADD\"><font color=red>$OPERATIONNAME:$OPERATIONSTATUS</font></a>"
|
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i&REP=$RNUM$HOST_ADD\"><font color=red>$OPERATIONNAME:$OPERATIONSTATUS</font></a>"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*-ok) echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i$HOST_ADD\"><font color=black>$OPERATIONNAME:$OPERATIONSTATUS</font></a>"
|
*-ok) echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i&REP=$RNUM$HOST_ADD\"><font color=black>$OPERATIONNAME:$OPERATIONSTATUS</font></a>"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i$HOST_ADD\"><font color=red>$OPERATIONNAME:$OPERATIONSTATUS</font></a>"
|
echo -n "<a target=_autodist href=\"?SHOWLOG=$l&NUM=$i&REP=$RNUM$HOST_ADD\"><font color=red>$OPERATIONNAME:$OPERATIONSTATUS</font></a>"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
# [ "$SUBJOBNAME" != "$JOBNAME" ] && echo -en "(<a href=\"/distribution/webbuild.php?ENVIRONMENT=$i&PACKAGE=$SUBJOBNAME\" target=\"webbuild\">$SUBJOBNAME</a>)"
|
# [ "$SUBJOBNAME" != "$JOBNAME" ] && echo -en "(<a href=\"$AUTOPORT_WEBBUILD_HOST?ENVIRONMENT=$i&PACKAGE=$SUBJOBNAME\" target=\"webbuild\">$SUBJOBNAME</a>)"
|
||||||
echo -n " "
|
echo -n " "
|
||||||
rowcnt=`expr $rowcnt + 1`
|
rowcnt=`expr $rowcnt + 1`
|
||||||
done
|
done
|
||||||
@ -345,7 +345,7 @@ _EOF
|
|||||||
if [ "$ENDTIME" ]; then
|
if [ "$ENDTIME" ]; then
|
||||||
echo "<b>End:</b> $ENDTIME"
|
echo "<b>End:</b> $ENDTIME"
|
||||||
elif [ "$AUTODIST_PID" ]; then
|
elif [ "$AUTODIST_PID" ]; then
|
||||||
echo "<b>End: <a target=_autodist href=\"?SHOWLOG=current.$AUTODIST_PID&NUM=$i$HOST_ADD\">in progress</a></b>"
|
echo "<b>End: <a target=_autodist href=\"?SHOWLOG=current.$AUTODIST_PID&NUM=$i&REP=$RNUM$HOST_ADD\">in progress</a></b>"
|
||||||
fi
|
fi
|
||||||
echo
|
echo
|
||||||
# grep -v "^=" $LOGFILE | tail -n "$LINES" | sed "s|.*\r||"
|
# grep -v "^=" $LOGFILE | tail -n "$LINES" | sed "s|.*\r||"
|
||||||
@ -359,7 +359,7 @@ done
|
|||||||
if [ "$AS_HOST" = "0" -a ! "$SHOWLOG" ]; then
|
if [ "$AS_HOST" = "0" -a ! "$SHOWLOG" ]; then
|
||||||
for h in `seq 1 ${#AUTOPORT_CGI_HOST[*]}`; do
|
for h in `seq 1 ${#AUTOPORT_CGI_HOST[*]}`; do
|
||||||
if [ "$NUM" -a "$HOST" = "$h" ]; then
|
if [ "$NUM" -a "$HOST" = "$h" ]; then
|
||||||
curl "${AUTOPORT_CGI_HOST[$h]}?AS_HOST=$h&LINES=$LINES&NUM=$NUM&HOST=$HOST" 2>/dev/null
|
curl "${AUTOPORT_CGI_HOST[$h]}?AS_HOST=$h&LINES=$LINES&NUM=$NUM&REP=$RNUM&HOST=$HOST" 2>/dev/null
|
||||||
elif [ ! "$NUM" ]; then
|
elif [ ! "$NUM" ]; then
|
||||||
curl "${AUTOPORT_CGI_HOST[$h]}?AS_HOST=$h&LINES=$LINES" 2>/dev/null
|
curl "${AUTOPORT_CGI_HOST[$h]}?AS_HOST=$h&LINES=$LINES" 2>/dev/null
|
||||||
fi
|
fi
|
||||||
@ -367,7 +367,7 @@ if [ "$AS_HOST" = "0" -a ! "$SHOWLOG" ]; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ "$AS_HOST" = "0" ]; then
|
if [ "$AS_HOST" = "0" ]; then
|
||||||
echo "<br><p><i>Generated by autodist CGI interface. Last update: `date`</i>"
|
echo "<p><i>Generated by autodist CGI interface. Last update: `date`</i>"
|
||||||
if [ "$FORMAT" = "xml" ]; then
|
if [ "$FORMAT" = "xml" ]; then
|
||||||
echo -n "]]></output>"
|
echo -n "]]></output>"
|
||||||
[ "$RELOADTIME" ] && echo -n "<reloadtime>$RELOADTIME</reloadtime>"
|
[ "$RELOADTIME" ] && echo -n "<reloadtime>$RELOADTIME</reloadtime>"
|
||||||
|
1021
autodist-repository
Executable file
1021
autodist-repository
Executable file
File diff suppressed because it is too large
Load Diff
70
automaint
70
automaint
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# automaint -- batch automatic maintainance tool of the autodist suite
|
# automaint -- batch automatic maintainance tool of the autodist suite
|
||||||
# Copyright (C) 2013 by Silvan Calarco <silvan.calarco@mambasoft.it>
|
# Copyright (C) 2013-2014 by Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||||
#
|
#
|
||||||
# Released under the terms of the GNU GPL release 3 license
|
# Released under the terms of the GNU GPL release 3 license
|
||||||
#
|
#
|
||||||
@ -159,7 +159,18 @@ for a in `seq 1 ${#ARCHS[*]}`; do
|
|||||||
needportlist[$a-1]="${needport_list[*]}"
|
needportlist[$a-1]="${needport_list[*]}"
|
||||||
done
|
done
|
||||||
|
|
||||||
for p in ${pkglist[0]}; do
|
tmpfile=`mktemp -q -t $me.XXXXXXXX` || {
|
||||||
|
echo "ERROR: cannot create temporary files." >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
for a in `seq 1 ${#ARCHS[*]}`; do
|
||||||
|
echo -n "${pkglist[$a-1]} " >> $tmpfile
|
||||||
|
done
|
||||||
|
allpkgs="`cat $tmpfile | xargs -n 1 | sort -u | xargs`"
|
||||||
|
rm -f $tmpfile
|
||||||
|
|
||||||
|
for p in ${allpkgs}; do
|
||||||
pkgcontinue=
|
pkgcontinue=
|
||||||
needsport=
|
needsport=
|
||||||
for w in ${warningslist[*]}; do
|
for w in ${warningslist[*]}; do
|
||||||
@ -167,22 +178,39 @@ for p in ${pkglist[0]}; do
|
|||||||
done
|
done
|
||||||
[ "$pkgcontinue" ] && continue
|
[ "$pkgcontinue" ] && continue
|
||||||
|
|
||||||
get_pkg_buildinfo $LOCAL_REPS_BASE_DIR/distromatic/$SOURCE_REPOSITORY ${ARCHS[0]} $p
|
for a in `seq 1 ${#ARCHS[*]}`; do
|
||||||
|
get_pkg_buildinfo $LOCAL_REPS_BASE_DIR/distromatic/$DEST_REPOSITORY ${ARCHS[$a-1]} $p
|
||||||
|
if [ "$pkg_name" ]; then
|
||||||
|
spkg_version=$pkg_version
|
||||||
|
spkg_release=$pkg_release
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
[ "$pkg_name" ] || {
|
||||||
|
echo "$p: not present in $DEST_REPOSITORY; skipping."
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
[ "$VERBOSE" ] && echo "$p: old release in $DEST_REPOSITORY is $spkg_version-$spkg_release"
|
||||||
|
|
||||||
for o in ${needportlist[*]}; do
|
for o in ${needportlist[*]}; do
|
||||||
[ "$p" = "$o" ] && { needsport=1; break; }
|
[ "$p" = "$o" ] && { needsport=1; break; }
|
||||||
done
|
done
|
||||||
[ "$needsport" -a ! "$PORT_REPOSITORY" ] && continue
|
[ "$needsport" -a ! "$PORT_REPOSITORY" ] && continue
|
||||||
|
|
||||||
spkg_version=$pkg_version
|
for a in `seq 1 ${#ARCHS[*]}`; do
|
||||||
spkg_release=$pkg_release
|
get_pkg_buildinfo $LOCAL_REPS_BASE_DIR/distromatic/$SOURCE_REPOSITORY ${ARCHS[$a-1]} $p
|
||||||
get_pkg_buildinfo $LOCAL_REPS_BASE_DIR/distromatic/$DEST_REPOSITORY ${ARCHS[0]} $p
|
[ "$pkg_name" ] && break
|
||||||
|
done
|
||||||
|
|
||||||
[ "$pkg_name" ] || {
|
[ "$pkg_name" ] || {
|
||||||
echo "$p: looks like a new package; skipping."
|
echo "$p: not present in $SOURCE_REPOSITORY; skipping."
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[ "$VERBOSE" ] && echo "$p: new release in $SOURCE_REPOSITORY is $pkg_version-$pkg_release"
|
||||||
|
|
||||||
if [ "$pkg_version" = "$spkg_version" ]; then
|
if [ "$pkg_version" = "$spkg_version" ]; then
|
||||||
if [ "$pkg_release" = "$spkg_release" ]; then
|
if [ "$pkg_release" = "$spkg_release" ]; then
|
||||||
echo "$p: same release as upstream; skipping."
|
echo "$p: same release as upstream; skipping."
|
||||||
@ -195,33 +223,45 @@ for p in ${pkglist[0]}; do
|
|||||||
read -ra SVER <<< "$spkg_version"
|
read -ra SVER <<< "$spkg_version"
|
||||||
read -ra VER <<< "$pkg_version"
|
read -ra VER <<< "$pkg_version"
|
||||||
IFS=$OIFS
|
IFS=$OIFS
|
||||||
|
dotdiff=`expr ${#VER[*]} - ${#SVER[*]}`
|
||||||
for i in `seq 1 ${#SVER[*]}`; do
|
for i in `seq 1 ${#SVER[*]}`; do
|
||||||
[ "${SVER[i-1]}" != "${VER[i-1]}" ] && break
|
[ "${SVER[i-1]}" != "${VER[i-1]}" ] && break
|
||||||
done
|
done
|
||||||
if [ "$i" = "${#SVER[*]}" ]; then
|
if [ "$i" = "${#SVER[*]}" -a $dotdiff -eq 0 ]; then
|
||||||
if [[ 64#${SVER[i-1]} -gt 64#89 && 64#${VER[i-1]} -lt 64#80 ]]; then
|
# e.g. SVER=0.11.3 -> VER=0.11.4
|
||||||
[ "$VERBOSE" ] && echo "$p: dubious beta upgrade from ${VER[i-1]} to ${SVER[i-1]}; skipping."
|
if [[ 64#${VER[i-1]} -gt 64#89 && 64#${SVER[i-1]} -lt 64#80 ]]; then
|
||||||
|
[ "$VERBOSE" ] && echo "$p: dubious beta upgrade from ${SVER[i-1]} to ${VER[i-1]}; skipping."
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
update_type="minor"
|
update_type="minor"
|
||||||
|
elif [ $dotdiff -lt 0 ]; then
|
||||||
|
[ "$VERBOSE" ] && echo "$p: newer version has less dots than older ${#VER[*]} < ${#SVER[*]}; skipping."
|
||||||
|
continue
|
||||||
|
elif [ "$i" != "${#SVER[*]}" ]; then
|
||||||
|
# e.g. SVER=0.11 -> VER=1.0
|
||||||
|
[ "$VERBOSE" ] && echo "$p: not a minor version update at position $i/${#SVER[*]}: ${SVER[i-1]} != ${VER[i-1]}; skipping."
|
||||||
|
continue
|
||||||
|
elif [ "${SVER[i-1]}" = "${VER[i-1]}" -a $dotdiff -ge 1 ]; then
|
||||||
|
# e.g. SVER=0.11.2 -> VER=0.11.2.3
|
||||||
|
update_type="minor"
|
||||||
else
|
else
|
||||||
[ "$VERBOSE" ] && echo "$p: dubious not-minor version update $i/${#SVER[*]}: ${SVER[i-1]} != ${VER[i-1]}; skipping."
|
echo "$p: UNEXPECTED CASE - CHECK CODE; skipping."
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ "$needsport" ]; then
|
if [ "$needsport" ]; then
|
||||||
echo "$p: importing from $SOURCE_REPOSITORY to $PORT_REPOSITORY ($spkg_version-$spkg_release -> $pkg_version-$pkg_release)"
|
echo "$p: importing from $SOURCE_REPOSITORY to $PORT_REPOSITORY ($pkg_version-$pkg_release -> $spkg_version-$spkg_release)"
|
||||||
if [ ! "$TESTMODE" ]; then
|
if [ ! "$TESTMODE" ]; then
|
||||||
openmamba-repository import $SOURCE_REPOSITORY $p -d $PORT_REPOSITORY -y >/dev/null
|
autodist-repository import $SOURCE_REPOSITORY $p -d $PORT_REPOSITORY -y >/dev/null
|
||||||
if [ $? -eq 0 -a "$WEBBUILD_URL" -a "$WEBBUILD_USER" ]; then
|
if [ $? -eq 0 -a "$WEBBUILD_URL" -a "$WEBBUILD_USER" ]; then
|
||||||
curl -s "$WEBBUILD_URL?REQUEST=message&USER=$WEBBUILD_USER&SECRET=${WEBBUILD_SECRET}&USER_EMAIL=$WEBBUILD_EMAIL&\
|
curl -s "$WEBBUILD_URL?REQUEST=message&USER=$WEBBUILD_USER&SECRET=${WEBBUILD_SECRET}&USER_EMAIL=$WEBBUILD_EMAIL&\
|
||||||
MESSAGE=`cgi_encodevar \"imported <b>$p</b> from <b>$SOURCE_REPOSITORY</b> to <b>$PORT_REPOSITORY</b> for porting\"`" >/dev/null
|
MESSAGE=`cgi_encodevar \"imported <b>$p</b> from <b>$SOURCE_REPOSITORY</b> to <b>$PORT_REPOSITORY</b> for porting\"`" >/dev/null
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
echo "$p: importing from $SOURCE_REPOSITORY to $DEST_REPOSITORY ($spkg_version-$spkg_release -> $pkg_version-$pkg_release; update type: $update_type)"
|
echo "$p: importing from $SOURCE_REPOSITORY to $DEST_REPOSITORY ($pkg_version-$pkg_release -> $spkg_version-$spkg_release; update type: $update_type)"
|
||||||
if [ ! "$TESTMODE" ]; then
|
if [ ! "$TESTMODE" ]; then
|
||||||
openmamba-repository import $SOURCE_REPOSITORY $p -d $DEST_REPOSITORY -y >/dev/null
|
autodist-repository import $SOURCE_REPOSITORY $p -d $DEST_REPOSITORY -y >/dev/null
|
||||||
if [ $? -eq 0 -a "$WEBBUILD_URL" -a "$WEBBUILD_USER" ]; then
|
if [ $? -eq 0 -a "$WEBBUILD_URL" -a "$WEBBUILD_USER" ]; then
|
||||||
curl -s "$WEBBUILD_URL?REQUEST=message&USER=$WEBBUILD_USER&SECRET=${WEBBUILD_SECRET}&USER_EMAIL=$WEBBUILD_EMAIL&\
|
curl -s "$WEBBUILD_URL?REQUEST=message&USER=$WEBBUILD_USER&SECRET=${WEBBUILD_SECRET}&USER_EMAIL=$WEBBUILD_EMAIL&\
|
||||||
MESSAGE=`cgi_encodevar \"imported <b>$p</b> from <b>$SOURCE_REPOSITORY</b> to <b>$DEST_REPOSITORY</b>\"`" >/dev/null
|
MESSAGE=`cgi_encodevar \"imported <b>$p</b> from <b>$SOURCE_REPOSITORY</b> to <b>$DEST_REPOSITORY</b>\"`" >/dev/null
|
||||||
|
2
autoport
2
autoport
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
# Released under the terms of the GNU GPL release 3 license
|
# Released under the terms of the GNU GPL release 3 license
|
||||||
#
|
#
|
||||||
VERSION=0.9.8
|
VERSION=0.9.10
|
||||||
|
|
||||||
BASE_ARCH=i586
|
BASE_ARCH=i586
|
||||||
BASE_REPOSITORY=devel
|
BASE_REPOSITORY=devel
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# Global configuration file for autodist
|
# Global configuration file for autodist
|
||||||
#
|
#
|
||||||
|
AUTODIST_ARCHS=(i586 x86_64 arm)
|
||||||
REPS_BASE_URL=http://www.openmamba.org/pub/openmamba
|
REPS_BASE_URL=http://www.openmamba.org/pub/openmamba
|
||||||
LOCAL_REPS_BASE_DIR=/var/ftp/pub/openmamba
|
LOCAL_REPS_BASE_DIR=/var/ftp/pub/openmamba
|
||||||
SEND_SERVER=devel-autodist
|
SEND_SERVER=devel-autodist
|
||||||
@ -9,14 +10,6 @@ SEND_SERVER=devel-autodist
|
|||||||
#WEBBUILD_SECRET=
|
#WEBBUILD_SECRET=
|
||||||
WEBBUILD_STATEDIR=/var/webbuild
|
WEBBUILD_STATEDIR=/var/webbuild
|
||||||
WEBBUILD_DISTROQUERY_URL="http://www.openmamba.org/cgi-bin/distroquery"
|
WEBBUILD_DISTROQUERY_URL="http://www.openmamba.org/cgi-bin/distroquery"
|
||||||
WEBBUILD_REPOSITORIES=(devel devel-games devel-kernel devel-kde4 devel-xorg devel-gnome devel-makedist \
|
|
||||||
devel-java devel-misc devel-autodist devel-future devel-past \
|
|
||||||
milestone1 milestone1-updates milestone1-games milestone1-1.1 milestone1-makedist \
|
|
||||||
milestone2 milestone2-games milestone2-updates milestone2-kernel milestone2-kde4 \
|
|
||||||
milestone2-xorg milestone2-makedist milestone2-java \
|
|
||||||
devel-contrib devel-silvan devel-stefano devel-aleph0 devel-skiver devel-fabiog devel-gil \
|
|
||||||
devel-distservers devel-the_packagizers devel-ercolinux \
|
|
||||||
devel-contrib-java devel-michiamophil milestone1-java milestone1-contrib)
|
|
||||||
AUTOBUILD_MAXNUM=200
|
AUTOBUILD_MAXNUM=200
|
||||||
AUTOBUILD_DATEFROM=20060601
|
AUTOBUILD_DATEFROM=20060601
|
||||||
AUTOBUILD_SKIP_DAYS=28
|
AUTOBUILD_SKIP_DAYS=28
|
||||||
@ -29,3 +22,30 @@ AUTOPORT_MAX_STEPS=10
|
|||||||
#RPMDIR=/usr/src/RPM
|
#RPMDIR=/usr/src/RPM
|
||||||
AUTODIST_REBUILDOLD_MAX=20
|
AUTODIST_REBUILDOLD_MAX=20
|
||||||
AUTODIST_REBUILDOLD_FROMDATE=20090101
|
AUTODIST_REBUILDOLD_FROMDATE=20090101
|
||||||
|
#
|
||||||
|
# Set to disable autodist-repository and use local list
|
||||||
|
#
|
||||||
|
WEBBUILD_REPOSITORIES=(devel devel-games devel-kernel devel-kde4 devel-xorg devel-gnome devel-makedist \
|
||||||
|
devel-java devel-misc devel-autodist devel-future devel-past \
|
||||||
|
milestone1 milestone1-updates milestone1-games milestone1-1.1 milestone1-makedist \
|
||||||
|
milestone2 milestone2-games milestone2-updates milestone2-kernel milestone2-kde4 \
|
||||||
|
milestone2-xorg milestone2-makedist milestone2-java \
|
||||||
|
devel-contrib devel-silvan devel-stefano devel-aleph0 devel-skiver devel-fabiog devel-gil \
|
||||||
|
devel-distservers devel-the_packagizers devel-ercolinux \
|
||||||
|
devel-contrib-java devel-michiamophil milestone1-java milestone1-contrib)
|
||||||
|
#
|
||||||
|
# Set to enable autodist-repository (you also need to disable WEBBUILD_REPOSITORIES above)
|
||||||
|
#
|
||||||
|
#AUTODIST_REPOSITORIES_LOCAL_REPS=(devel devel-games devel-kernel devel-kde4 devel-xorg devel-gnome devel-makedist \
|
||||||
|
# devel-java devel-misc devel-autodist devel-future devel-past devel-embedded devel-silvan \
|
||||||
|
# milestone3 milestone3-games milestone3-updates milestone3-makedist \
|
||||||
|
# milestone2 milestone2-games milestone2-updates milestone2-kernel milestone2-kde4 \
|
||||||
|
# milestone2-xorg milestone2-makedist milestone2-java milestone2-kernel-next \
|
||||||
|
# milestone1 milestone1-updates milestone1-games milestone1-1.1 milestone1-makedist)
|
||||||
|
#AUTODIST_REPOSITORIES_REMOTE_REPS=(devel-contrib devel-stefano devel-aleph0 devel-skiver devel-fabiog devel-gil \
|
||||||
|
# devel-distservers devel-the_packagizers devel-ercolinux \
|
||||||
|
# devel-contrib-java devel-michiamophil milestone1-java milestone1-contrib)
|
||||||
|
#AUTODIST_REPOSITORIES_TRANSITIONAL_REP=devel-makedist
|
||||||
|
#AUTODIST_REPOSITORIES_REMOTE_FTPUSER=
|
||||||
|
#AUTODIST_REPOSITORIES_REMOTE_FTPPASS=
|
||||||
|
#AUTODIST_REPOSITORIES_REMOTE_FTP=
|
||||||
|
@ -39,3 +39,4 @@ mpg123
|
|||||||
libgphoto
|
libgphoto
|
||||||
nfs-utils
|
nfs-utils
|
||||||
git
|
git
|
||||||
|
xmms2
|
||||||
|
@ -53,23 +53,6 @@ for i in `seq 0 ${#AUTOPORT_ARCH[*]}`; do
|
|||||||
echo "+ Autoport start at `date`" > $LOGFILE
|
echo "+ Autoport start at `date`" > $LOGFILE
|
||||||
echo "============================================" >> $LOGFILE
|
echo "============================================" >> $LOGFILE
|
||||||
|
|
||||||
# if [ "${AUTOPORT_CHROOT[$i]}" ]; then
|
|
||||||
# a=${AUTOPORT_CHROOT[$i]}
|
|
||||||
# # sudo mount -o bind /proc /var/autoport/$a/proc
|
|
||||||
# [[ "`/usr/bin/tty`" != "not a tty" ]] && echo "Updating packages in $a chroot environment"
|
|
||||||
# echo "= Updating packages in $a chroot environment..." >> $LOGFILE
|
|
||||||
# LANG=C /usr/sbin/chroot /var/autoport/$a smart update --quiet > /dev/null
|
|
||||||
# LANG=C /usr/sbin/chroot /var/autoport/$a smart upgrade -y >> $LOGFILE
|
|
||||||
# echo "= Working on $r($a) in chroot mode..." >> $LOGFILE
|
|
||||||
# [[ "`/usr/bin/tty`" != "not a tty" ]] && echo "Working on $r($a) in chroot mode" >> $LOGFILE
|
|
||||||
# # disable service restarts
|
|
||||||
# mv /var/autoport/$a/sbin/service /var/autoport/$a/sbin/service.autoport
|
|
||||||
# ln -s /bin/true /var/autoport/$a/sbin/service
|
|
||||||
# $CMD_PREFIX /usr/sbin/chroot /var/autoport/$a su -l ${AUTOPORT_CHROOT_USER[$i]} -c "autoport -b -r $r" >> $LOGFILE
|
|
||||||
# mv /var/autoport/$a/sbin/service.autoport /var/autoport/$a/sbin/service
|
|
||||||
# cat /var/autoport/$a/home/${AUTOPORT_CHROOT_USER[$i]}/.autoport/${AUTOPORT_ARCH[$i]}/$r-current.log >> $LOGFILE
|
|
||||||
# fi
|
|
||||||
|
|
||||||
if [ "${AUTOPORT_NATIVE[$i]}" ]; then
|
if [ "${AUTOPORT_NATIVE[$i]}" ]; then
|
||||||
a=${AUTOPORT_ARCH[$i]}
|
a=${AUTOPORT_ARCH[$i]}
|
||||||
[[ "`/usr/bin/tty`" != "not a tty" ]] && echo "Updating packages in $a native environment"
|
[[ "`/usr/bin/tty`" != "not a tty" ]] && echo "Updating packages in $a native environment"
|
||||||
@ -78,7 +61,8 @@ for i in `seq 0 ${#AUTOPORT_ARCH[*]}`; do
|
|||||||
LANG=C smart upgrade -y >> $LOGFILE
|
LANG=C smart upgrade -y >> $LOGFILE
|
||||||
echo "= Working on $r($a) in native mode" >> $LOGFILE
|
echo "= Working on $r($a) in native mode" >> $LOGFILE
|
||||||
su -l ${AUTOPORT_CHROOT_USER[$i]} -c "$CMD_PREFIX autoport -b -r $r" >> $LOGFILE
|
su -l ${AUTOPORT_CHROOT_USER[$i]} -c "$CMD_PREFIX autoport -b -r $r" >> $LOGFILE
|
||||||
cat /var/autodist/.autoport/$a/$r-current.log >> $LOGFILE
|
AUTODIST_HOME=`getent passwd ${AUTOPORT_CHROOT_USER[$i]} | cut -d: -f6`
|
||||||
|
cat $AUTODIST_HOME/.autoport/$a/$r-current.log >> $LOGFILE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# if [ "${AUTOPORT_CROSS[$i]}" ]; then
|
# if [ "${AUTOPORT_CROSS[$i]}" ]; then
|
||||||
|
8
etc/logrotate.d/webbuild
Normal file
8
etc/logrotate.d/webbuild
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
/var/webbuild/access_log {
|
||||||
|
monthly
|
||||||
|
rotate 12
|
||||||
|
copytruncate
|
||||||
|
compress
|
||||||
|
notifempty
|
||||||
|
missingok
|
||||||
|
}
|
@ -2,9 +2,12 @@
|
|||||||
# autoport global configuration
|
# autoport global configuration
|
||||||
#
|
#
|
||||||
local_ftp=/var/ftp/pub/openmamba/
|
local_ftp=/var/ftp/pub/openmamba/
|
||||||
|
|
||||||
#AUTOBUILDS_STATUS_URL="http://www.openmamba.org/distribution/autobuilds.html"
|
#AUTOBUILDS_STATUS_URL="http://www.openmamba.org/distribution/autobuilds.html"
|
||||||
#AUTOPORT_ENABLE=1
|
#AUTOPORT_ENABLE=1
|
||||||
#AUTOPORT_CGI_HOST=(http://localhost/cgi-bin/autodist http://192.168.0.100/cgi-bin/autodist)
|
#AUTOPORT_CGI_HOST=(http://localhost/cgi-bin/autodist)
|
||||||
|
#AUTOPORT_WEBBUILD_HOST=http://localhost/webbuild.html
|
||||||
|
#ICECREAM_MONITOR_HOST=localhost
|
||||||
|
|
||||||
AUTOPORT_DEVEL_IMPORT_REPOSITORIES="devel-makedist devel devel-games devel-autodist devel-gnome \
|
AUTOPORT_DEVEL_IMPORT_REPOSITORIES="devel-makedist devel devel-games devel-autodist devel-gnome \
|
||||||
devel-kde4 devel-xorg devel-kernel devel-misc devel-java devel-future devel-past devel-contrib devel-contrib-java"
|
devel-kde4 devel-xorg devel-kernel devel-misc devel-java devel-future devel-past devel-contrib devel-contrib-java"
|
||||||
|
68
webbuild/html/autobuilds.html
Normal file
68
webbuild/html/autobuilds.html
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||||
|
<html><head>
|
||||||
|
<meta content="text/html; charset=utf-8" http-equiv="content-type">
|
||||||
|
|
||||||
|
<!-- styles needed by jScrollPane -->
|
||||||
|
<link type="text/css" href="/scripts/jquery.jscrollpane.css" rel="stylesheet" media="all" >
|
||||||
|
<!-- latest jQuery direct from google's CDN -->
|
||||||
|
<script type="text/javascript" src="/scripts/jquery.js"></script>
|
||||||
|
<!-- the mousewheel plugin - optional to provide mousewheel support -->
|
||||||
|
<script type="text/javascript" src="/scripts/jquery.mousewheel.js"></script>
|
||||||
|
<!-- the jScrollPane script -->
|
||||||
|
<script type="text/javascript" src="/scripts/jquery.jscrollpane.min.js"></script>
|
||||||
|
<link rel="stylesheet" type="text/css" href="/styles/webbuild.css">
|
||||||
|
<script type="text/javascript" src="/scripts/socialbox.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
<!--
|
||||||
|
var lastupdate = 0;
|
||||||
|
var reloadtime = 0;
|
||||||
|
|
||||||
|
function ajax_getvalues() {
|
||||||
|
var url = window.location.protocol+"//"+window.location.hostname+"/cgi-bin/autodist?FORMAT=xml&"+window.location.href.replace(/.*\?/,"");
|
||||||
|
if (window.XMLHttpRequest)
|
||||||
|
xmlhttp = new XMLHttpRequest();
|
||||||
|
else if (window.ActiveXObject)
|
||||||
|
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
|
||||||
|
else
|
||||||
|
return;
|
||||||
|
document.getElementById("noajax_msg").innerHTML = "";
|
||||||
|
xmlhttp.onreadystatechange = function() {
|
||||||
|
if (xmlhttp.readyState != 4)
|
||||||
|
return;
|
||||||
|
var xmldoc = xmlhttp.responseXML.documentElement;
|
||||||
|
document.getElementById("output").innerHTML = xmldoc.getElementsByTagName("output")[0].childNodes[0].nodeValue;
|
||||||
|
reloadtime = xmldoc.getElementsByTagName("reloadtime")[0].childNodes[0].nodeValue;
|
||||||
|
lastupdate = (+new Date());
|
||||||
|
setTimeout("ajax_getvalues()", reloadtime);
|
||||||
|
}
|
||||||
|
xmlhttp.open("GET", url, true);
|
||||||
|
xmlhttp.send(null);
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</script>
|
||||||
|
</head><body>
|
||||||
|
<div id=container style="position:relative;width:894px;height:auto;top:0;left:0;margin-left:auto;margin-right:auto;">
|
||||||
|
<table width="100%"><tr><td>
|
||||||
|
<tr><td valign="middle">
|
||||||
|
<table align="center"><tr>
|
||||||
|
<td colspan=2><img src="/images/webbuild.png" alt="build automatici">
|
||||||
|
<b>- Autodist - Build automatici</b>
|
||||||
|
</td>
|
||||||
|
</tr></table>
|
||||||
|
</td></tr>
|
||||||
|
<tr><td>
|
||||||
|
<div id="noajax_msg"><p>Il supporto per AJAX non è abilitato nel tuo browser. L'aggiornamento live non sarà disponibile, premi Ricarica per aggiornare la pagina.</p></div>
|
||||||
|
<span id="output">Caricamento in corso, attendere...</span>
|
||||||
|
<script>
|
||||||
|
ajax_getvalues("");
|
||||||
|
$("#output").mousemove(function(event) {
|
||||||
|
lastupdatetime = (+new Date()) - lastupdate; // milliseconds since last update
|
||||||
|
// var msg = "called " + lastupdatetime + "ms ago";
|
||||||
|
if (lastupdatetime > reloadtime) { lastupdate = lastupdatetime; ajax_getvalues(); }
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</td></tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</body></html>
|
@ -47,7 +47,6 @@ var socialbox_reloadtime = 15000;
|
|||||||
|
|
||||||
function ajax_getvalues_refresh(request,user,user_email,secret) {
|
function ajax_getvalues_refresh(request,user,user_email,secret) {
|
||||||
var fromid = 0;
|
var fromid = 0;
|
||||||
//alert("refresh");
|
|
||||||
if (socialbox_interval != null) {
|
if (socialbox_interval != null) {
|
||||||
clearInterval(socialbox_interval);
|
clearInterval(socialbox_interval);
|
||||||
}
|
}
|
||||||
|
@ -101,6 +101,7 @@ function ajax_getvalues(request,confirm) {
|
|||||||
secret=getCookie("webbuild-secret");
|
secret=getCookie("webbuild-secret");
|
||||||
if (!secret) secret="";
|
if (!secret) secret="";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (confirm) {
|
if (confirm) {
|
||||||
document.getElementById("status").innerHTML =
|
document.getElementById("status").innerHTML =
|
||||||
'<div class=screencontainer><div class=opaquebackground></div>'+
|
'<div class=screencontainer><div class=opaquebackground></div>'+
|
||||||
@ -148,6 +149,10 @@ function ajax_getvalues(request,confirm) {
|
|||||||
for (var i = 0; i < nodes.length; i++) {
|
for (var i = 0; i < nodes.length; i++) {
|
||||||
if (nodes[i].nodeName == "title") {
|
if (nodes[i].nodeName == "title") {
|
||||||
document.title = nodes[i].childNodes[0].nodeValue;
|
document.title = nodes[i].childNodes[0].nodeValue;
|
||||||
|
} else if (nodes[i].nodeName == "cookie-user") {
|
||||||
|
setCookie("webbuild-user", nodes[i].childNodes[0].nodeValue, 1);
|
||||||
|
} else if (nodes[i].nodeName == "cookie-secret") {
|
||||||
|
setCookie("webbuild-secret", nodes[i].childNodes[0].nodeValue, 1);
|
||||||
} else if (document.getElementById(nodes[i].nodeName) != undefined) {
|
} else if (document.getElementById(nodes[i].nodeName) != undefined) {
|
||||||
// var node = document.getElementById(nodes[i].nodeName)
|
// var node = document.getElementById(nodes[i].nodeName)
|
||||||
//alert("replace " + node.nodeValue + "with " + nodes[i].childNodes[0].nodeValue);
|
//alert("replace " + node.nodeValue + "with " + nodes[i].childNodes[0].nodeValue);
|
||||||
|
@ -14,7 +14,7 @@ cgi_getvars BOTH ALL
|
|||||||
[ "$PACKAGE" ] && PACKAGEENCODED=`cgi_encodevar "$PACKAGE"` || PACKAGEENCODED=
|
[ "$PACKAGE" ] && PACKAGEENCODED=`cgi_encodevar "$PACKAGE"` || PACKAGEENCODED=
|
||||||
|
|
||||||
#cgi_getvars POST
|
#cgi_getvars POST
|
||||||
if [ "$REQUEST" != "refresh" ]; then
|
if [ "${REQUEST:0:7}" != "refresh" ]; then
|
||||||
echo "`date` - USER=$USER&REQUEST=$REQUEST&ENVIRONMENT=$ENVIRONMENT&REPOSITORY=$REPOSITORY&PACKAGE=$PACKAGE&MAINTAINERMODE=$MAINTAINERMODE" >> $LOG
|
echo "`date` - USER=$USER&REQUEST=$REQUEST&ENVIRONMENT=$ENVIRONMENT&REPOSITORY=$REPOSITORY&PACKAGE=$PACKAGE&MAINTAINERMODE=$MAINTAINERMODE" >> $LOG
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -65,7 +65,7 @@ if [ "$USER" ]; then
|
|||||||
else
|
else
|
||||||
USER_ENABLED=
|
USER_ENABLED=
|
||||||
fi
|
fi
|
||||||
elif [ "$REQUEST" != "refresh" ]; then
|
elif [ "${REQUEST:0:7}" != "refresh" ]; then
|
||||||
# no "$USER_SECRET" set; require password
|
# no "$USER_SECRET" set; require password
|
||||||
echo -n "<output><![CDATA[Please enter your password: <input type=password id=password "
|
echo -n "<output><![CDATA[Please enter your password: <input type=password id=password "
|
||||||
echo -n "onkeypress=if(checkEnter(event))"
|
echo -n "onkeypress=if(checkEnter(event))"
|
||||||
@ -88,7 +88,7 @@ if [ "$USER" ]; then
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
elif [ "$REQUEST" != "refresh" ]; then
|
elif [ "${REQUEST:0:7}" != "refresh" ]; then
|
||||||
echo -n "<output><![CDATA[Please enter your username: <input type=text id=username "
|
echo -n "<output><![CDATA[Please enter your username: <input type=text id=username "
|
||||||
echo -n "onkeypress=if(checkEnter(event)){"
|
echo -n "onkeypress=if(checkEnter(event)){"
|
||||||
echo -n "user=encodeURIComponent(getElementById('username').value);"
|
echo -n "user=encodeURIComponent(getElementById('username').value);"
|
||||||
@ -110,7 +110,7 @@ elif [ "$REQUEST" != "refresh" ]; then
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$USER_ENABLED" != "1" -a "$REQUEST" != "refresh" ]; then
|
if [ "$USER_ENABLED" != "1" -a "${REQUEST:0:7}" != "refresh" ]; then
|
||||||
echo -n "<environments> </environments>"
|
echo -n "<environments> </environments>"
|
||||||
echo -n "<speccreate> </speccreate>"
|
echo -n "<speccreate> </speccreate>"
|
||||||
echo -n "<specedit> </specedit>"
|
echo -n "<specedit> </specedit>"
|
||||||
@ -210,48 +210,53 @@ fi
|
|||||||
#
|
#
|
||||||
# Public requests
|
# Public requests
|
||||||
#
|
#
|
||||||
if [ "$REQUEST" = "refresh" -o ! "$USER" ]; then
|
if [ "$REQUEST" = "refresh" -o "$REQUEST" = "refreshsocial" -o ! "$USER" ]; then
|
||||||
[ -e "$WEBBUILD_STATEDIR/social_log" ] || exit
|
if [ "$WEBBUILD_URL" -a "${WEBBUILD_URL/\/localhost\//}" = "$WEBBUILD_URL" ]; then
|
||||||
# social box
|
curl -s "$WEBBUILD_URL?REQUEST=refreshsocial&USER=$USER&SECRET=`cgi_encodevar \"$USER_SECRET\"`&USER_EMAIL=$USER_EMAIL&FROMID=$FROMID"
|
||||||
echo -n "<socialbox>"
|
else
|
||||||
count=0
|
[ -e "$WEBBUILD_STATEDIR/social_log" ] || exit
|
||||||
if [ ! "$FROMID" -o "$FROMID" = "0" -o "$FROMID" = "NaN" ]; then
|
# social box
|
||||||
if [ "$USER" ]; then
|
echo -n "<socialbox>"
|
||||||
line=`tail -n 500 $WEBBUILD_STATEDIR/social_log | grep -v " SUSER=$USER " 2>/dev/null | tail -n 25 | head -n 1`
|
count=0
|
||||||
else
|
SID=0
|
||||||
line=`tail -n 500 $WEBBUILD_STATEDIR/social_log | grep -v " STARGET=developers " 2>/dev/null | tail -n 25 | head -n 1`
|
if [ ! "$FROMID" -o "$FROMID" = "0" -o "$FROMID" = "NaN" ]; then
|
||||||
|
if [ "$USER" ]; then
|
||||||
|
line=`tail -n 500 $WEBBUILD_STATEDIR/social_log | grep -v " SUSER=$USER " 2>/dev/null | tail -n 25 | head -n 1`
|
||||||
|
else
|
||||||
|
line=`tail -n 500 $WEBBUILD_STATEDIR/social_log | grep -v " STARGET=developers " 2>/dev/null | tail -n 25 | head -n 1`
|
||||||
|
fi
|
||||||
|
eval $line
|
||||||
|
FROMID=$SID
|
||||||
fi
|
fi
|
||||||
eval $line
|
tail -n 100 $WEBBUILD_STATEDIR/social_log | while read line; do
|
||||||
FROMID=$SID
|
STYPE=
|
||||||
|
SPRIVACY=
|
||||||
|
SUSER=
|
||||||
|
STARGET=
|
||||||
|
SID=
|
||||||
|
eval $line
|
||||||
|
[ "$SID" ] || continue
|
||||||
|
[ $SID -ge $FROMID ] || continue
|
||||||
|
[ "$STARGET" = "developers" -a ! "$USER" ] && continue
|
||||||
|
[ "$SUSER" = "$USER" -a "$STARGET" == "developers" ] && continue
|
||||||
|
if [ "$SPRIVACY" -a ! "$USER" ]; then
|
||||||
|
USER_GRAVATAR=
|
||||||
|
else
|
||||||
|
USER_GRAVATAR=`echo -n $SEMAIL | md5sum | sed "s| .*||"`
|
||||||
|
fi
|
||||||
|
echo -n "<add id=\"$SID\"><![CDATA[<div style=\"margin:0;padding:0;\"><div style=\"vertical-align:middle;position:relative;float:left;height:24px;width:24px;margin-right:2px;\">"
|
||||||
|
echo -n "<img src=\"http://www.gravatar.com/avatar/$USER_GRAVATAR?s=24&d=http://www.gravatar.com/avatar/ad516503a11cd5ca435acc9bb6523536?s=24\" /></div>"
|
||||||
|
if [ "$SPRIVACY" -a ! "$USER" ]; then
|
||||||
|
SUSER="a developer"
|
||||||
|
elif [ "$USER" = "$SUSER" ]; then
|
||||||
|
SUSER="you"
|
||||||
|
fi
|
||||||
|
echo -n "<div style=\"position:relative;margin-left:24px;height:auto;padding:0;\"><b>$SUSER</b> $STEXT <i><span name=socialtime time=$STIME></span></i></div>"
|
||||||
|
echo -n "</div><div style=\"clear:both;\"><hr></div>]]></add>"
|
||||||
|
count=$(($count + 1))
|
||||||
|
done
|
||||||
|
echo -n "</socialbox>"
|
||||||
fi
|
fi
|
||||||
tail -n 100 $WEBBUILD_STATEDIR/social_log | while read line; do
|
|
||||||
STYPE=
|
|
||||||
SPRIVACY=
|
|
||||||
SUSER=
|
|
||||||
STARGET=
|
|
||||||
SID=
|
|
||||||
eval $line
|
|
||||||
[ "$SID" ] || continue
|
|
||||||
[ $SID -ge $FROMID ] || continue
|
|
||||||
[ "$STARGET" = "developers" -a ! "$USER" ] && continue
|
|
||||||
[ "$SUSER" = "$USER" -a "$STARGET" == "developers" ] && continue
|
|
||||||
if [ "$SPRIVACY" -a ! "$USER" ]; then
|
|
||||||
USER_GRAVATAR=
|
|
||||||
else
|
|
||||||
USER_GRAVATAR=`echo -n $SEMAIL | md5sum | sed "s| .*||"`
|
|
||||||
fi
|
|
||||||
echo -n "<add id=\"$SID\"><![CDATA[<div style=\"margin:0;padding:0;\"><div style=\"vertical-align:middle;position:relative;float:left;height:24px;width:24px;margin-right:2px;\">"
|
|
||||||
echo -n "<img src=\"http://www.gravatar.com/avatar/$USER_GRAVATAR?s=24&d=http://www.gravatar.com/avatar/ad516503a11cd5ca435acc9bb6523536?s=24\" /></div>"
|
|
||||||
if [ "$SPRIVACY" -a ! "$USER" ]; then
|
|
||||||
SUSER="a developer"
|
|
||||||
elif [ "$USER" = "$SUSER" ]; then
|
|
||||||
SUSER="you"
|
|
||||||
fi
|
|
||||||
echo -n "<div style=\"position:relative;margin-left:24px;height:auto;padding:0;\"><b>$SUSER</b> $STEXT <i><span name=socialtime time=$STIME></span></i></div>"
|
|
||||||
echo -n "</div><div style=\"clear:both;\"><hr></div>]]></add>"
|
|
||||||
count=$(($count + 1))
|
|
||||||
done
|
|
||||||
echo -n "</socialbox>"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$USER_ENABLED" != "1" ]; then
|
if [ "$USER_ENABLED" != "1" ]; then
|
||||||
@ -463,7 +468,7 @@ if [ "$REQUEST" = "repsearch" ]; then
|
|||||||
# echo -n "<pre><!-- SCROLL -->"
|
# echo -n "<pre><!-- SCROLL -->"
|
||||||
curl -s "${WEBBUILD_DISTROQUERY_URL}?query=$REPSEARCHTEXT&search_milestone2=true&search_devel=true\
|
curl -s "${WEBBUILD_DISTROQUERY_URL}?query=$REPSEARCHTEXT&search_milestone2=true&search_devel=true\
|
||||||
&search_i586=true&search_x86_64=true&search_arm=true&search_sources=true&query_compact=true&replyplain=true"
|
&search_i586=true&search_x86_64=true&search_arm=true&search_sources=true&query_compact=true&replyplain=true"
|
||||||
# $SUDO_WRAPPER 0 local "$USER" "" "openmamba-repository search -i ${REPSEARCHTEXT/-/\-}" | \
|
# $SUDO_WRAPPER 0 local "$USER" "" "autodist-repository search -i ${REPSEARCHTEXT/-/\-}" | \
|
||||||
# parse_search_output ${AUTOPORT_ARCH[$ENVIRONMENT]}
|
# parse_search_output ${AUTOPORT_ARCH[$ENVIRONMENT]}
|
||||||
# sed "s|\(.*(source).*\)|<font color=white><b>\1</b></font>|;
|
# sed "s|\(.*(source).*\)|<font color=white><b>\1</b></font>|;
|
||||||
# s|\(.*(${AUTOPORT_ARCH[$ENVIRONMENT]}).*\)|<font color=lightgreen>\1</font>|"
|
# s|\(.*(${AUTOPORT_ARCH[$ENVIRONMENT]}).*\)|<font color=lightgreen>\1</font>|"
|
||||||
@ -1873,7 +1878,7 @@ case $REQUEST in
|
|||||||
for p in $PACKAGES; do
|
for p in $PACKAGES; do
|
||||||
[ "$REPOSITORYSIMULATE" = "true" -o ! "$USER_CANMAINTAIN" ] && SIMULATEADD="-s" || SIMULATEADD=
|
[ "$REPOSITORYSIMULATE" = "true" -o ! "$USER_CANMAINTAIN" ] && SIMULATEADD="-s" || SIMULATEADD=
|
||||||
[ "$REPOSITORYFORCE" = "true" ] && FORCEADD="-f"
|
[ "$REPOSITORYFORCE" = "true" ] && FORCEADD="-f"
|
||||||
$SUDO_WRAPPER 0 local "$USER" "$PACKAGE" "openmamba-repository import $SENDREPOSITORY $p -d $REPOSITORYIMPORTTO $SIMULATEADD $FORCEADD -y"
|
$SUDO_WRAPPER 0 local "$USER" "$PACKAGE" "autodist-repository import $SENDREPOSITORY $p -d $REPOSITORYIMPORTTO $SIMULATEADD $FORCEADD -y"
|
||||||
RET=$?
|
RET=$?
|
||||||
if [ ! "$SIMULATEADD" -a $RET -eq 0 ]; then
|
if [ ! "$SIMULATEADD" -a $RET -eq 0 ]; then
|
||||||
social_log "SUSER=$USER SEMAIL=$USER_EMAIL STEXT=\"imported <b>$p</b> from <b>$SENDREPOSITORY</b> to <b>$REPOSITORYIMPORTTO</b>\" STIME=`date +%s`"
|
social_log "SUSER=$USER SEMAIL=$USER_EMAIL STEXT=\"imported <b>$p</b> from <b>$SENDREPOSITORY</b> to <b>$REPOSITORYIMPORTTO</b>\" STIME=`date +%s`"
|
||||||
@ -1890,7 +1895,7 @@ case $REQUEST in
|
|||||||
for p in $PACKAGES; do
|
for p in $PACKAGES; do
|
||||||
[ "$REPOSITORYSIMULATE" = "true" -o ! "$USER_CANMAINTAIN" ] && SIMULATEADD="-s" || SIMULATEADD=
|
[ "$REPOSITORYSIMULATE" = "true" -o ! "$USER_CANMAINTAIN" ] && SIMULATEADD="-s" || SIMULATEADD=
|
||||||
[ "$REPOSITORYFORCE" = "true" ] && SIMULATEADD="$SIMULATEADD -f"
|
[ "$REPOSITORYFORCE" = "true" ] && SIMULATEADD="$SIMULATEADD -f"
|
||||||
$SUDO_WRAPPER 0 local "$USER" "$PACKAGE" "openmamba-repository release $SENDREPOSITORY $p -d $REPOSITORYIMPORTTO $SIMULATEADD -y"
|
$SUDO_WRAPPER 0 local "$USER" "$PACKAGE" "autodist-repository release $SENDREPOSITORY $p -d $REPOSITORYIMPORTTO $SIMULATEADD -y"
|
||||||
RET=$?
|
RET=$?
|
||||||
if [ ! "$SIMULATEADD" -a $RET -eq 0 ]; then
|
if [ ! "$SIMULATEADD" -a $RET -eq 0 ]; then
|
||||||
social_log "SUSER=$USER SEMAIL=$USER_EMAIL STEXT=\"released <b>$p</b> from <b>$SENDREPOSITORY</b> to <b>$REPOSITORYIMPORTTO</b>\" STIME=`date +%s`"
|
social_log "SUSER=$USER SEMAIL=$USER_EMAIL STEXT=\"released <b>$p</b> from <b>$SENDREPOSITORY</b> to <b>$REPOSITORYIMPORTTO</b>\" STIME=`date +%s`"
|
||||||
@ -1905,7 +1910,7 @@ case $REQUEST in
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
for p in $PACKAGES; do
|
for p in $PACKAGES; do
|
||||||
$SUDO_WRAPPER 0 local "$USER" "" "openmamba-repository diff $SENDREPOSITORY $p -d $REPOSITORYIMPORTTO"
|
$SUDO_WRAPPER 0 local "$USER" "" "autodist-repository diff $SENDREPOSITORY $p -d $REPOSITORYIMPORTTO"
|
||||||
RET=$?
|
RET=$?
|
||||||
[ $RET -eq 0 ] || break
|
[ $RET -eq 0 ] || break
|
||||||
done
|
done
|
||||||
@ -1918,7 +1923,7 @@ case $REQUEST in
|
|||||||
}
|
}
|
||||||
for p in $PACKAGES; do
|
for p in $PACKAGES; do
|
||||||
[ "$REPOSITORYSIMULATE" = "true" -o ! "$USER_CANMAINTAIN" ] && SIMULATEADD="-s" || SIMULATEADD=
|
[ "$REPOSITORYSIMULATE" = "true" -o ! "$USER_CANMAINTAIN" ] && SIMULATEADD="-s" || SIMULATEADD=
|
||||||
$SUDO_WRAPPER 0 local "$USER" "$PACKAGE" "openmamba-repository archive $SENDREPOSITORY $p -y"
|
$SUDO_WRAPPER 0 local "$USER" "$PACKAGE" "autodist-repository archive $SENDREPOSITORY $p -y"
|
||||||
RET=$?
|
RET=$?
|
||||||
if [ ! "$SIMULATEADD" -a $RET -eq 0 ]; then
|
if [ ! "$SIMULATEADD" -a $RET -eq 0 ]; then
|
||||||
social_log "SUSER=$USER SEMAIL=$USER_EMAIL STEXT=\"archived <b>$p</b> from <b>$SENDREPOSITORY</b>\" STIME=`date +%s`"
|
social_log "SUSER=$USER SEMAIL=$USER_EMAIL STEXT=\"archived <b>$p</b> from <b>$SENDREPOSITORY</b>\" STIME=`date +%s`"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
# webbuild functions
|
# webbuild functions
|
||||||
# Copyright (c) 2012 by Silvan Calarco <silvan.calarco@mambasoft.it>
|
# Copyright (c) 2012-2014 by Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||||
#
|
#
|
||||||
. /etc/autodist/config
|
. /etc/autodist/config
|
||||||
|
|
||||||
@ -36,6 +36,14 @@ function social_log() {
|
|||||||
STATE_SOCIALLOG_ID=$(($STATE_SOCIALLOG_ID + 1))
|
STATE_SOCIALLOG_ID=$(($STATE_SOCIALLOG_ID + 1))
|
||||||
set_user_state_var STATE_SOCIALLOG_ID $STATE_SOCIALLOG_ID webbuild
|
set_user_state_var STATE_SOCIALLOG_ID $STATE_SOCIALLOG_ID webbuild
|
||||||
echo "SID=$STATE_SOCIALLOG_ID SPRIVACY=$STATE_PRIVACYMODE $line" >> $WEBBUILD_STATEDIR/social_log
|
echo "SID=$STATE_SOCIALLOG_ID SPRIVACY=$STATE_PRIVACYMODE $line" >> $WEBBUILD_STATEDIR/social_log
|
||||||
|
|
||||||
|
# Note: checking that URL does not point here again to avoid recursive requests
|
||||||
|
if [ "$WEBBUILD_URL" -a "${WEBBUILD_URL/\/localhost\//}" = "$WEBBUILD_URL" ]; then
|
||||||
|
eval $line
|
||||||
|
USER_SECRET_FIXED=`echo $USER_SECRET | sed "s|\$|\\$|"`
|
||||||
|
curl -s "$WEBBUILD_URL?REQUEST=message&USER=$USER&SECRET=`cgi_encodevar \"$USER_SECRET\"`&USER_EMAIL=$USER_EMAIL&\
|
||||||
|
MESSAGE=`cgi_encodevar \"$STEXT\"`" >/dev/null
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -205,7 +213,7 @@ function parse_search_output() {
|
|||||||
echo -n "<a class=searchlink href=\"/distribution/distromatic.html?tag=$REPOSITORY&pkg=$PKG.$ARCH\" target=_new>$2</a><br>"
|
echo -n "<a class=searchlink href=\"/distribution/distromatic.html?tag=$REPOSITORY&pkg=$PKG.$ARCH\" target=_new>$2</a><br>"
|
||||||
echo -n "</font>"
|
echo -n "</font>"
|
||||||
# if [ "$ARCH" ]
|
# if [ "$ARCH" ]
|
||||||
# $SUDO_WRAPPER 0 local "$USER" "" "openmamba-repository search -i $REPSEARCHTEXT" | \
|
# $SUDO_WRAPPER 0 local "$USER" "" "autodist-repository search -i $REPSEARCHTEXT" | \
|
||||||
# sed "s|\(.*(source).*\)|<font color=white><b>\1</b></font>|;
|
# sed "s|\(.*(source).*\)|<font color=white><b>\1</b></font>|;
|
||||||
# s|\(.*(${AUTOPORT_ARCH[$ENVIRONMENT]}).*\)|<font color=lightgreen>\1</font>|"
|
# s|\(.*(${AUTOPORT_ARCH[$ENVIRONMENT]}).*\)|<font color=lightgreen>\1</font>|"
|
||||||
done
|
done
|
||||||
|
@ -1,8 +1,13 @@
|
|||||||
|
#
|
||||||
|
# webbuild functions-private include file
|
||||||
|
# Copyright (c) 2012-2014 by Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||||
|
#
|
||||||
|
|
||||||
repository_list() {
|
repository_list() {
|
||||||
if [ "$WEBBUILD_REPOSITORIES" ]; then
|
if [ "$WEBBUILD_REPOSITORIES" ]; then
|
||||||
echo "${WEBBUILD_REPOSITORIES[*]}"
|
echo "${WEBBUILD_REPOSITORIES[*]}"
|
||||||
else
|
else
|
||||||
$SUDO_WRAPPER 0 local "$USER" "" "/usr/sbin/openmamba-repository list"
|
$SUDO_WRAPPER 0 local "$USER" "" "/usr/sbin/autodist-repository list"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user