X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=config%2Fdebian%2Fdinstall.functions;h=25f84600cb490f3a8635258f0b60d0d8b72ae560;hb=f5510b10ea2ea61c85e7cf73ef7d85e80c969704;hp=a11c75e3049332c826b6b2e88daa222600aaaf26;hpb=3a18a9c192d517c71593ed66e22f056738592d89;p=dak.git diff --git a/config/debian/dinstall.functions b/config/debian/dinstall.functions index a11c75e3..25f84600 100644 --- a/config/debian/dinstall.functions +++ b/config/debian/dinstall.functions @@ -56,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 @@ -87,7 +87,7 @@ function i18n1() { # Lets check! if ${scriptsdir}/ddtp-i18n-check.sh . ${scriptdir}/i18n/${TSTAMP}; then # Yay, worked, lets copy around - for dir in stretch sid; do + for dir in ${extimportdists}; do if [ -d dists/${dir}/ ]; then cd dists/${dir}/main/i18n rsync -aq --delete --delete-after --exclude Translation-en.bz2 --exclude Translation-*.diff/ . ${ftpdir}/dists/${dir}/main/i18n/. @@ -112,20 +112,21 @@ function i18n1() { function dep11() { log "Synchronizing AppStream metadata" # First sync their newest data - mkdir -p ${scriptdir}/dep11 - cd ${scriptdir}/dep11 + local dep11dir="${scriptdir}/dep11" + mkdir -p ${dep11dir} + cd ${dep11dir} rsync -aq --delete --delete-after dep11-sync:/does/not/matter . || true # Lets check! - if ${scriptsdir}/dep11-basic-validate.py . ${scriptdir}/dep11/; then + if ${scriptsdir}/dep11-basic-validate.py . ${dep11dir}/; then # Yay, worked, lets copy around - for dir in stretch sid; do + for dir in ${extimportdists}; do if [ -d ${dir}/ ]; then for comp in main contrib non-free; do mkdir -p ${ftpdir}/dists/${dir}/${comp}/dep11 cd ${dir}/${comp} rsync -aq --delete --delete-after --exclude *.tmp . ${ftpdir}/dists/${dir}/${comp}/dep11/. - cd ${scriptdir}/dep11 + cd ${dep11dir} done fi done @@ -432,18 +433,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 @@ -491,14 +491,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 @@ -616,42 +615,18 @@ function logstats() { # save timestamp when we start function savetimestamp() { - NOW=`date "+%Y.%m.%d-%H:%M:%S"` - echo ${NOW} > "${dbdir}/dinstallstart" + NOW=`date "+%Y.%m.%d-%H:%M:%S"` + echo ${NOW} > "${dbdir}/dinstallstart" } 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). # @@ -687,36 +662,3 @@ function changelogs() { trap remove_changelog_lock EXIT TERM HUP INT QUIT fi } - -function gitpdiff() { - # Might be that we want to change this to have more than one git repository. - # Advantage of one is that we do not need much space in terms of storage in git itself, - # git gc is pretty good on our input. - # But it might be faster. Well, lets test. - log "Adjusting the git tree for pdiffs" - cd ${dbdir}/git/git/ - - # The regex needs the architectures seperated with \| - garchs=$(dak admin a list|sed -e ':q;N;s/\n/\\|/g;t q') - - # First, get all the files we want to work on. ../dists/ is a symlink to the real dists/ we - # want to work with. - # Also, we only want contents, packages and sources. - for file in $(find ../dists/ -regex ".*/\(Contents-\($archs\)\|\(Packages\|Sources\)\).gz"); do - log "${file}" - basen=${file%%.gz}; - basen=${basen##../}; - dir=${basen%/*}; - mkdir -p $dir; - zcat $file > $basen; - done - - # Second, add all there is into git - cd dists - git add . - # Maybe we want to make this the same for tag and commit? But well, shouldn't matter - COMD=$(date -Is) - TAGD=$(date +%Y-%m-%d-%H-%M) - git commit -m "Commit of ${COMD}" - git tag "${TAGD}" - }