X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=config%2Fdebian%2Fdinstall.functions;h=58f8ddb1ce02c7317acbf03ce9e2b42f10714100;hb=86e42f45e177df65e5a71352b55b911a7bca6153;hp=172d6e40e41899b9d37ffb2190bb7a218228f5f9;hpb=ee422c4ff1b3d9313d19e6d9b1740f5a2f85d630;p=dak.git diff --git a/config/debian/dinstall.functions b/config/debian/dinstall.functions index 172d6e40..58f8ddb1 100644 --- a/config/debian/dinstall.functions +++ b/config/debian/dinstall.functions @@ -53,23 +53,6 @@ function updates() { $scriptsdir/update-pseudopackages.sh } -# Process (oldstable)-proposed-updates "NEW" queue -function punew_do() { - date -u -R >> REPORT - dak process-policy $1 | tee -a REPORT | mail -a "X-Debian: DAK" -e -s "NEW changes in $1" debian-release@lists.debian.org -- -F "Debian FTP Masters" -f ftpmaster@ftp-master.debian.org - echo >> REPORT -} -function punew() { - log "Doing automated p-u-new processing" - cd "${queuedir}/p-u-new" - punew_do "$1" -} -function opunew() { - log "Doing automated o-p-u-new processing" - cd "${queuedir}/o-p-u-new" - punew_do "$1" -} - # The first i18n one, syncing new descriptions function i18n1() { log "Synchronizing i18n package descriptions" @@ -91,7 +74,7 @@ function i18n1() { for dir in wheezy sid; do if [ -d dists/${dir}/ ]; then cd dists/${dir}/main/i18n - rsync -aq --delete --delete-after . ${ftpdir}/dists/${dir}/main/i18n/. + rsync -aq --delete --delete-after --exclude Translation-en.bz2 --exclude Translation-*.diff/ . ${ftpdir}/dists/${dir}/main/i18n/. fi cd ${scriptdir}/i18nsync done @@ -181,6 +164,14 @@ function pdiff() { } function release() { + # XXX: disable once we can remove i18n/Index (#649314) + log "Generating i18n/Index" + ( + cd "$ftpdir/dists"; + for dist in testing unstable experimental proposed-updates testing-proposed-updates; do + $scriptsdir/generate-i18n-Index $dist; + done + ) log "Generating Release files" dak generate-releases } @@ -243,22 +234,10 @@ function mkmaintainers() { function copyoverrides() { log 'Copying override files into public view ...' - for ofile in $copyoverrides ; do - cd $overridedir - chmod g+w override.$ofile - - cd $indices - - newofile=override.$ofile.gz - rm -f .newover-$ofile.gz - pc="`gzip 2>&1 -9nv <$overridedir/override.$ofile >.newover-$ofile.gz`" - if ! cmp -s .newover-$ofile.gz $newofile || [ ! -f $newofile ]; then - log " installing new $newofile $pc" - mv -f .newover-$ofile.gz $newofile - chmod g+w $newofile - else - rm -f .newover-$ofile.gz - fi + for ofile in ${overridedir}/override.{lenny,squeeze,wheezy,sid}.{,extra.}{main,contrib,non-free}*; do + bname=${ofile##*/} + gzip -9cv --rsyncable ${ofile} > ${indices}/${bname}.gz + chmod g+w ${indices}/${bname}.gz done } @@ -418,7 +397,7 @@ function mirrorpush() { while read SHASUM SIZE NAME; do if ! [ -f "${subdir}/${NAME}" ]; then bname=$(basename ${NAME}) - if [ "${bname}" = "Packages" ] || [ "${bname}" = "Sources" ]; then + if [[ "${bname}" =~ ^(Packages|Sources|Translation-[a-zA-Z_]+)$ ]]; then # We don't keep unpacked files, don't check for their existance. # We might want to go and check their unpacked shasum, but right now # I don't care. I believe it should be enough if all the packed shasums @@ -575,3 +554,36 @@ function changelogs() { rsync -aHW --delete --delete-after --ignore-errors ${exportdir}/changelogs/. . sudo -H -u archvsync /home/archvsync/runmirrors metaftpdo > ~dak/runmirrors-metadata.log 2>&1 & } + +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}" + }