#!/bin/bash # $Id: db-testing,v 1.4 2004/04/16 18:14:18 judd Exp $ uid=`id -u` repoid=4 TMPDIR="/tmp/archpkg.$repoid.$uid" cleanup() { rm -rf $TMPDIR # unlock rm -f /tmp/.repolck.$repoid exit 0 } # check for locks if [ -f /tmp/.repolck.$repoid ]; then owner=`/bin/ls -l /tmp/.repolck.$repoid | awk '{print $3}'` echo "error: db generation is already in progress (started by $owner)" exit 1 fi if [ -d /tmp/.gensync ]; then echo "error: someone else is currently running gensync!" exit 1 fi # catch ^C breaks trap cleanup SIGINT # lock touch /tmp/.repolck.$repoid # RedHat's mktemp is broken... if [ -d $TMPDIR ]; then echo "==> Removing old temp dir..." >&2 rm -rf $TMPDIR || exit 1 fi mkdir $TMPDIR; [ $? -gt 0 ] && exit 1 echo "==> Generating Pacman Database for TESTING..." >&2 cd $TMPDIR CVS_RSH=ssh CVSROOT=:ext:cvs.archlinux.org:/home/cvs-arch cvs -q export -r TESTING arch mv arch/build/* . && rm -rf arch CVS_RSH=ssh CVSROOT=:ext:cvs.archlinux.org:/home/cvs-extra cvs -q export -r TESTING extra cp -a extra/* . && rm -rf extra CVS_RSH=ssh CVSROOT=:ext:cvs.archlinux.org:/home/cvs-unstable cvs -q export -r TESTING unstable cp -a unstable/* . && rm -rf unstable # check again if [ -d /tmp/.gensync ]; then echo "error: someone else is currently running gensync!" exit 1 fi /usr/bin/gensync $TMPDIR $TMPDIR/testing.db.tar.gz /home/ftp/testing [ -f $TMPDIR/testing.db.tar.gz ] && mv -f $TMPDIR/testing.db.tar.gz /home/ftp/testing cd $TMPDIR && /arch/pkgdb $repoid echo "==> Generating Text Package List..." >&2 /arch/genpkglist testing cleanup