diff options
Diffstat (limited to 'sign-and-upload-all')
-rwxr-xr-x | sign-and-upload-all | 54 |
1 files changed, 28 insertions, 26 deletions
diff --git a/sign-and-upload-all b/sign-and-upload-all index aa846d56a..09dcbdd08 100755 --- a/sign-and-upload-all +++ b/sign-and-upload-all @@ -9,38 +9,40 @@ if ! flock -n 9; then fi for distro in arch artix; do - upkgs=$( - ssh ${distro}linuxewe@eckner.net ' - bsdtar -Oxf os/'"$(pacman-conf Architecture)"'/'"${distro}"'linuxewe.db.tar.gz \ - | sed -n '"'"' - /^%FILENAME%$/ { - N - s/^.*\n// - p - } - '"'"' - ' - ) unset archs declare -A archs - for pkg in */${distro}*/*.pkg.tar.zst; do - [ -f "${pkg}" ] \ - || continue - printf '%s\n' "${pkg##*/}" \ - | grep -qxF "${upkgs}" \ - && continue - [ -f "${pkg}.sig" ] \ - || gpg --detach-sign -u 5FDCA472AB93292BC678FD59255A76DB9A12601A "${pkg}" \ - || exit 1 - arch="${pkg##*-}" - arch="${arch%%.*}" - archs["${arch}"]=1 + for arch in x86_64 i486 i686 pentium4; do + upkgs=$( + ssh ${distro}linuxewe@eckner.net ' + bsdtar -Oxf os/'"${arch}"'/'"${distro}"'linuxewe.db.tar.gz \ + | sed -n '"'"' + /^%FILENAME%$/ { + N + s/^.*\n// + p + } + '"'"' + ' + ) + for pkg in */${distro}*-${arch}/*.pkg.tar.zst; do + [ -f "${pkg}" ] \ + || continue + printf '%s\n' "${pkg##*/}" \ + | grep -qxF "${upkgs}" \ + && continue + [ -f "${pkg}.sig" ] \ + || gpg --detach-sign -u 5FDCA472AB93292BC678FD59255A76DB9A12601A "${pkg}" \ + || exit 1 + arch="${pkg##*-}" + arch="${arch%%.*}" + archs["${arch}"]="${arch}" + done done for arch in "${!archs[@]}"; do - rsync -av --progress --ignore-existing */${distro}/*-${arch}.pkg.tar.zst{,.sig} ${distro}linuxewe@eckner.net:os/${arch}/ + rsync -av --progress --ignore-existing */${distro}*-${archs["${arch}"]}/*-${arch}.pkg.tar.zst{,.sig} ${distro}linuxewe@eckner.net:os/${arch}/ pkgs=$( - printf '%s\n' */${distro}/*-${arch}.pkg.tar.zst \ + printf '%s\n' */${distro}*-${archs["${arch}"]}/*-${arch}.pkg.tar.zst \ | sed 's@^.*/@@' \ | tr '\n' ' ' ) |