X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=config%2Fdebian%2Fdinstall.functions;h=5f1683befb870fb3b85c04e236e95a539fdecfcc;hb=520cc894834d0bf90b409bca8db8ad428d273582;hp=6524d12b9208c43f59922f689803367ed783407d;hpb=e17e0f4b453abca1ae40d08662e77e9aea33e812;p=dak.git diff --git a/config/debian/dinstall.functions b/config/debian/dinstall.functions index 6524d12b..5f1683be 100644 --- a/config/debian/dinstall.functions +++ b/config/debian/dinstall.functions @@ -19,6 +19,17 @@ function remove_all_locks() { rm -f $LOCK_DAILY $LOCK_ACCEPTED } +function remove_locks { + remove_all_locks + trap - EXIT TERM HUP INT QUIT + ts "locked part finished" +} + +function lockaccepted { + lockfile "$LOCK_ACCEPTED" + trap remove_all_locks EXIT TERM HUP INT QUIT +} + # If we error out this one is called, *FOLLOWED* by cleanup above function onerror() { ERRDATE=$(date "+%Y.%m.%d-%H:%M:%S") @@ -45,7 +56,7 @@ function onerror() { # pushing merkels QA user, part one function qa1() { log "Telling QA user that we start dinstall" - ssh -2 -i ~dak/.ssh/push_merkel_qa -o BatchMode=yes -o SetupTimeOut=90 -o ConnectTimeout=90 qa@qa.debian.org sleep 1 + ssh -n -2 -i ~dak/.ssh/push_merkel_qa -o BatchMode=yes -o SetupTimeOut=90 -o ConnectTimeout=90 qa@qa.debian.org sleep 1 } # Updating various files @@ -421,18 +432,17 @@ function mkchecksums() { } function mirror() { - local archiveroot mirrordir targetpath TRACEFILE + local archiveroot targetpath TRACEFILE for archive in "${public_archives[@]}"; do archiveroot="$(get_archiveroot "${archive}")" - mirrordir="${archiveroot}/../mirror" targetpath="${mirrordir}/${archive}" TRACEFILE="${archiveroot}/project/trace/ftp-master.debian.org" mkdir -p "${archiveroot}/project/trace/" log "Regenerating \"public\" mirror/${archive} hardlink fun" DATE_SERIAL=$(date +"%Y%m%d01") - FILESOAPLUS1=$(awk '/serial/ { print $3+1 }' ${TRACEFILE} ) + FILESOAPLUS1=$(awk '/serial/ { print $3+1 }' ${TRACEFILE} || echo ${DATE_SERIAL} ) if [ "$DATE_SERIAL" -gt "$FILESOAPLUS1" ]; then SERIAL="$DATE_SERIAL" else @@ -480,14 +490,13 @@ function ddaccess() { function mirrorpush() { log "Checking the public archive copies..." - local archiveroot mirrordir targetpath + local archiveroot targetpath for archive in "${public_archives[@]}"; do log "... archive: ${archive}" archiveroot="$(get_archiveroot "${archive}")" - mirrordir="${archiveroot}/../mirror" targetpath="${mirrordir}/${archive}" - cd ${targetpath}/dists + cd ${archiveroot}/dists broken=0 for release in $(find . -name "InRelease"); do @@ -554,6 +563,7 @@ function mirrorpush() { echo "Running on host $(hostname -f)" >> /srv/ftp.debian.org/web/${fname} sudo -H -u archvsync /home/archvsync/runmirrors ${pusharg} > ~dak/runmirrors-${archive}.log 2>&1 & fi + done } function mirrorpush-backports() { @@ -612,34 +622,10 @@ function maillogfile() { cat "$LOGFILE" | mail -a "X-Debian: DAK" -s "Log for dinstall run of ${NOW}" -a "From: Debian FTP Masters " cron@ftp-master.debian.org } -function renamelogfile() { - if [ -f "${dbdir}/dinstallstart" ]; then - NOW=$(cat "${dbdir}/dinstallstart") -# maillogfile - mv "$LOGFILE" "$logdir/dinstall_${NOW}.log" - logstats "$logdir/dinstall_${NOW}.log" - bzip2 -9 "$logdir/dinstall_${NOW}.log" - else - error "Problem, I don't know when dinstall started, unable to do log statistics." - NOW=`date "+%Y.%m.%d-%H:%M:%S"` -# maillogfile - mv "$LOGFILE" "$logdir/dinstall_${NOW}.log" - bzip2 -9 "$logdir/dinstall_${NOW}.log" - fi -} - function testingsourcelist() { dak ls -s testing -f heidi -r .| egrep 'source$' > ${webdir}/testing.list } -# do a last run of process-unchecked before dinstall is on. -function process_unchecked() { - log "Processing the unchecked queue" - UNCHECKED_WITHOUT_LOCK="-p" - do_unchecked - sync_debbugs -} - # Function to update a "statefile" telling people what we are doing # (more or less). #