]> git.decadent.org.uk Git - dak.git/commitdiff
First set of dinstall changes for backports merge
authorAnsgar Burchardt <ansgar@debian.org>
Sat, 12 Jan 2013 11:40:03 +0000 (12:40 +0100)
committerAnsgar Burchardt <ansgar@debian.org>
Sun, 24 Feb 2013 12:18:31 +0000 (13:18 +0100)
Still missing is everything that makes the backports archive public,
e.g. the mirror push itself.

config/debian/common
config/debian/dinstall.functions
config/debian/vars

index bb799fc1c163c58e6e132aabfaeabf664f8075bf..7dcd339b4f26cac6a00eb238ae5bfcc94b0dd429 100644 (file)
@@ -138,7 +138,10 @@ function do_new () {
        log "Doing NEW processing"
     fi
     (dak process-policy new; dak process-policy byhand) | mail -a "X-Debian: DAK" -e -s "NEW and BYHAND processing" ftpmaster@ftp-master.debian.org -- -F "Debian FTP Masters" -f ftpmaster@ftp-master.debian.org
-    dak clean-suites -a new
+
+    dak process-policy backports-new | mail -a "X-Debian: DAK" -e -s "NEW processing for backports-new" team@backports.debian.org -- -F "Debian FTP Masters" -f ftpmaster@ftp-master.debian.org
+
+    dak clean-suites -a new,backports-new
 }
 
 function sync_debbugs () {
@@ -180,3 +183,14 @@ function pg_timestamp() {
     log "Saving postgres transaction id for ${tsname}"
     psql -tAc 'select txid_current();' > $base/backup/txid_${tsname}_$(date +%Y.%m.%d-%H:%M:%S)
 }
+
+function get_archiveroot() {
+    local archivename="$1"
+    local query="SELECT path FROM archive WHERE name='${archivename}'"
+    local archiveroot="$(psql -tAc "${query}")"
+    if [ -z "${archiveroot}" ]; then
+        echo "get_archiveroot: couldn't get archiveroot for '${archivename}'" >&2
+        return 1
+    fi
+    echo "${archiveroot}"
+}
index 4836f53816d10f9049f07e8b47691e9d27a57c2f..ee1b58e27a87be2d58a3e19d75bca6aa8654b637 100644 (file)
@@ -146,14 +146,21 @@ function overrides() {
 }
 
 function mpfm() {
+    local archiveroot
+
     log "Generating package / file mapping"
-    dak make-pkg-file-mapping ftp-master | bzip2 -9 > $base/ftp/indices/package-file.map.bz2
+    for archive in "${public_archives[@]}"; do
+        archiveroot="$(get_archiveroot "${archive}")"
+        dak make-pkg-file-mapping "${archive}" | bzip2 -9 > "${archiveroot}/indices/package-file.map.bz2"
+    done
 }
 
 function packages() {
     log "Generating Packages and Sources files"
-    dak generate-packages-sources2 -a ftp-master
-    dak contents generate -a ftp-master
+    for archive in "${public_archives[@]}"; do
+        dak generate-packages-sources2 -a "${archive}"
+        dak contents generate -a "${archive}"
+    done
 }
 
 function pdiff() {
@@ -170,8 +177,11 @@ function release() {
             $scriptsdir/generate-i18n-Index $dist;
         done
     )
+
     log "Generating Release files"
-    dak generate-releases -a ftp-master
+    for archive in "${public_archives[@]}"; do
+        dak generate-releases -a "${archive}"
+    done
 }
 
 function dakcleanup() {
@@ -188,28 +198,38 @@ function buildd_dir() {
 }
 
 function mklslar() {
-    cd $ftpdir
+    local archiveroot
+    local FILENAME=ls-lR
 
-    FILENAME=ls-lR
+    for archive in "${public_archives[@]}"; do
+        archiveroot="$(get_archiveroot "${archive}")"
+        cd "${archiveroot}"
 
-    log "Removing any core files ..."
-    find -type f -name core -print -delete
+        log "Removing any core files ..."
+        find -type f -name core -print -delete
 
-    log "Checking symlinks ..."
-    symlinks -rd .
+        log "Checking symlinks ..."
+        symlinks -rd .
 
-    log "Creating recursive directory listing ... "
-    rm -f ${FILENAME}.gz
-    TZ=UTC ls -lR | gzip -9c --rsyncable > ${FILENAME}.gz
+        log "Creating recursive directory listing ... "
+        rm -f ${FILENAME}.gz
+        TZ=UTC ls -lR | gzip -9c --rsyncable > ${FILENAME}.gz
+    done
 }
 
 function mkmaintainers() {
+    local archiveroot
+
     log 'Creating Maintainers index ... '
 
-    cd $indices
-    dak make-maintainers -a ftp-master ${scriptdir}/masterfiles/pseudo-packages.maintainers
-    gzip -9v --rsyncable <Maintainers >Maintainers.gz
-    gzip -9v --rsyncable <Uploaders >Uploaders.gz
+    for archive in "${public_archives[@]}"; do
+        archiveroot="$(get_archiveroot "${archive}")"
+        cd "${archiveroot}/indices"
+
+        dak make-maintainers -a "${archive}" ${scriptdir}/masterfiles/pseudo-packages.maintainers
+        gzip -9v --rsyncable <Maintainers >Maintainers.gz
+        gzip -9v --rsyncable <Uploaders >Uploaders.gz
+    done
 }
 
 function copyoverrides() {
index cea5344f8e73d423ee56d32ee81cd24e7b702e9f..03a86a78fc2c052157f0fa5c486a66d649dfb311 100644 (file)
@@ -30,6 +30,8 @@ exportpublic=$public/rsync/export/
 
 ftpgroup=debadmin
 
+public_archives=(ftp-master backports)
+
 TMPDIR=${base}/tmp
 
 PATH=$masterdir:$PATH