chiark
/
gitweb
/
~ianmdlvl
/
dgit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Mirroring: Tolerate missing .a file when tidying mirror
[dgit.git]
/
infra
/
dgit-mirror-rsync
diff --git
a/infra/dgit-mirror-rsync
b/infra/dgit-mirror-rsync
index 5b54d16cc0f9a1cdbf0be5251d1943b5f5d3d535..2858047b57f85307085c1df13f0448d69e29473e 100755
(executable)
--- a/
infra/dgit-mirror-rsync
+++ b/
infra/dgit-mirror-rsync
@@
-37,6
+37,13
@@
fail () {
if [ $# -lt 2 ]; then fail "too few arguments"; fi
self=$0
if [ $# -lt 2 ]; then fail "too few arguments"; fi
self=$0
+
+case "$self" in
+/*) ;;
+*/*) self="$PWD/$self" ;;
+*) ;;
+esac
+
distrodir=$1; shift
action=$1; shift
package=$1
distrodir=$1; shift
action=$1; shift
package=$1
@@
-79,7
+86,7
@@
reinvoke () {
exec \
"$@" \
exec \
"$@" \
- "$
0"
"$distrodir" "reinvoke$newaction" "$package"
+ "$
self"
"$distrodir" "reinvoke$newaction" "$package"
}
check-package-mirrorable () {
}
check-package-mirrorable () {
@@
-100,7
+107,7
@@
lock-and-process () {
attempt () {
exec >"$queue/$package.err" 2>&1
if actually; then
attempt () {
exec >"$queue/$package.err" 2>&1
if actually; then
- rm "$queue/$package.a"
+ rm
-f
"$queue/$package.a"
mv -f "$queue/$package.err" "$queue/$package.log"
rm "$queue/$package.lock"
else
mv -f "$queue/$package.err" "$queue/$package.log"
rm "$queue/$package.lock"
else