index : builder | |
Archlinux32 build system | gitolite user |
summaryrefslogtreecommitdiff |
-rwxr-xr-x | bin/db-update | 32 |
diff --git a/bin/db-update b/bin/db-update index 3aced15..e37f19f 100755 --- a/bin/db-update +++ b/bin/db-update @@ -242,15 +242,29 @@ trap clean_up_lock_file EXIT # sanity check -if [ -n "$( - ls "${work_dir}/package-states" | \ - grep '\.done$' | \ - sed 's|\(\.[^.]\+\)\{4\}$||' | \ - sort | \ - uniq -d)" ]; then - >&2 echo 'Removing duplicates not yet implemented!' - exit 42 -fi +for ending in 'done' 'testing'; do + if [ "${ending}" = 'testing' ] && \ + [ -z "${packages_to_stabilize}" ]; then + # if nothing is to be untested, we don't care about duplicate + # testing packages (and maybe a unstaging fixes this anyway) + continue + fi + if [ -n "$( + ls "${work_dir}/package-states" | \ + grep "\.${ending}\$" | \ + sed 's|\(\.[^.]\+\)\{4\}$||' | \ + sort | \ + uniq -d + )" ]; then + >&2 echo 'Removing duplicates not yet implemented:' + ls "${work_dir}/package-states" | \ + grep "\.${ending}\$" | \ + sed 's|\(\.[^.]\+\)\{4\}$||' | \ + sort | \ + uniq -d + exit 42 + fi +done # packages which can't be un-staged because they're still dependencies # of any job on the build-list |