From: Frank Lichtenheld Date: Wed, 16 Apr 2008 22:36:22 +0000 (+0200) Subject: extract_changelogs: Fix broken current links X-Git-Url: https://git.deb.at/?a=commitdiff_plain;h=7f5251931aa1c43d71d8da89f8d111203ec2cedb;p=deb%2Fpackages.git extract_changelogs: Fix broken current links Happens mostly due to removal of packages from unstable. --- diff --git a/bin/extract_changelogs b/bin/extract_changelogs index 7d6f3e4..9a85a7d 100755 --- a/bin/extract_changelogs +++ b/bin/extract_changelogs @@ -40,13 +40,28 @@ for part in $parts; do done if [ "$successful" -eq 1 ]; then - find "${htmldir}/changelogs/" -name log -cmin +14440 \ + find -H "${htmldir}/changelogs/" -name log -cmin +14440 \ | while read logfile; do dir=$(dirname "$logfile") echo deleting $dir rm -r "$dir" rmdir --ignore-fail-on-non-empty $(dirname "$dir") done + cdir=$(pwd) + find -H "${htmldir}/changelogs/" -name current -not -xtype d \ + | while read link; do + dir=$(dirname "$link") + echo repairing current link $link + rm -v "$link" + target=$(ls -t1 "$dir" | tail -n1) + if [ -n "$target" ]; then + cd $dir && ln -sv $target current + cd $cdir + else + rmdir -v $dir + fi + done + else echo clean-up skipped because at least one of the extraction runs failed >&2 fi