summaryrefslogtreecommitdiff
path: root/commitpkg.in
diff options
context:
space:
mode:
authorPierre Schmitz <pierre@archlinux.de>2011-11-21 10:24:29 +0100
committerPierre Schmitz <pierre@archlinux.de>2011-11-21 10:24:29 +0100
commit8efe61b4e2769f2a0e54c285f4de4083ada40e3c (patch)
tree62172eaf3e8798056faba43ebe97251aa9e1b4e3 /commitpkg.in
parent8ffc2e44eea22a18251a78d58fb297894a3aa2d7 (diff)
Skip archrelease for missing architectures
Diffstat (limited to 'commitpkg.in')
-rw-r--r--commitpkg.in18
1 files changed, 11 insertions, 7 deletions
diff --git a/commitpkg.in b/commitpkg.in
index bc18d83..e8f271a 100644
--- a/commitpkg.in
+++ b/commitpkg.in
@@ -116,10 +116,12 @@ if [ -n "$(svn status -q)" ]; then
fi
declare -a uploads
+declare -a commit_arches
+declare -a skip_arches
for _arch in ${arch[@]}; do
if [ -n "$commit_arch" ] && [ "${_arch}" != "$commit_arch" ]; then
- warning "skipping ${_arch}"
+ skip_arches+=($_arch)
continue
fi
@@ -133,7 +135,8 @@ for _arch in ${arch[@]}; do
elif [ -f "$pkgdestfile" ]; then
pkgfile="$pkgdestfile"
else
- warning "skipping ${_arch}"
+ warning "Could not find ${pkgfile}. Skipping ${_arch}"
+ skip_arches+=($_arch)
continue 2
fi
uploads+=("$pkgfile")
@@ -157,11 +160,12 @@ for _arch in ${arch[@]}; do
done
done
-if [[ -n $commit_arch ]]; then
- archrelease "$repo-$commit_arch" || die
-else
- archrelease "${arch[@]/#/$repo-}" || die
-fi
+for _arch in ${arch[@]}; do
+ if ! in_array $_arch ${skip_arches[@]}; then
+ commit_arches+=($_arch)
+ fi
+done
+archrelease "${commit_arches[@]/#/$repo-}" || die
if [[ ${#uploads[*]} -gt 0 ]]; then
msg 'Uploading all package and signature files'