diff --git a/commitpkg.in b/commitpkg.in index 8b874260efbc0c40e23d688638926aa2d6c57e56..83976bdce906987dc3c93ce6a901ca11f8852bf6 100644 --- a/commitpkg.in +++ b/commitpkg.in @@ -183,19 +183,21 @@ for _arch in ${arch[@]}; do commit_arches+=($_arch) fi done -archrelease "${archreleaseopts[@]}" "${commit_arches[@]/#/$repo-}" || die -new_uploads=() +if [[ ${#commit_arches[*]} -gt 0 ]]; then + archrelease "${archreleaseopts[@]}" "${commit_arches[@]/#/$repo-}" || die +fi -# convert to absolute paths so rsync can work with colons (epoch) -while read -r -d '' upload; do - new_uploads+=("$upload") -done < <(realpath -z "${uploads[@]}") +if [[ ${#uploads[*]} -gt 0 ]]; then + new_uploads=() -uploads=("${new_uploads[@]}") -unset new_uploads + # convert to absolute paths so rsync can work with colons (epoch) + while read -r -d '' upload; do + new_uploads+=("$upload") + done < <(realpath -z "${uploads[@]}") -if [[ ${#uploads[*]} -gt 0 ]]; then + uploads=("${new_uploads[@]}") + unset new_uploads msg 'Uploading all package and signature files' rsync "${rsyncopts[@]}" "${uploads[@]}" "$server:staging/$repo/" || die fi