commit 9532c65b2a653e3c7aa34739c7c810d7e6bd4f29
parent d20d06ff745de9754e24ed81028fb778388e9fb6
Author: Robin Bron <robin.bron@yourhosting.nl>
Date: Fri, 25 Sep 2026 00:31:10 +0200
Check revision first in pkg tasks
Diffstat:
3 files changed, 33 insertions(+), 33 deletions(-)
diff --git a/.conductor.yml b/.conductor.yml
@@ -50,10 +50,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh zlib --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" zlib
- - ./mk/check-revision.sh zlib
- ./mk/build.sh zlib
- ./mk/publish.sh --arch "$ARCH" zlib
@@ -63,10 +63,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh openssl --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" openssl
- - ./mk/check-revision.sh openssl
- ./mk/build.sh openssl
- ./mk/publish.sh --arch "$ARCH" openssl
@@ -78,10 +78,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh apk-tools --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" apk-tools
- - ./mk/check-revision.sh apk-tools
- ./mk/build.sh apk-tools
- ./mk/publish.sh --arch "$ARCH" apk-tools
@@ -91,10 +91,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh base-files --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" base-files
- - ./mk/check-revision.sh base-files
- ./mk/build.sh base-files
- ./mk/publish.sh --arch "$ARCH" base-files
@@ -104,10 +104,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh busybox --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" busybox
- - ./mk/check-revision.sh busybox
- ./mk/build.sh busybox
- ./mk/publish.sh --arch "$ARCH" busybox
@@ -119,10 +119,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh curl --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" curl
- - ./mk/check-revision.sh curl
- ./mk/build.sh curl
- ./mk/publish.sh --arch "$ARCH" curl
@@ -132,10 +132,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh dosfstools --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" dosfstools
- - ./mk/check-revision.sh dosfstools
- ./mk/build.sh dosfstools
- ./mk/publish.sh --arch "$ARCH" dosfstools
@@ -145,10 +145,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh e2fsprogs --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" e2fsprogs
- - ./mk/check-revision.sh e2fsprogs
- ./mk/build.sh e2fsprogs
- ./mk/publish.sh --arch "$ARCH" e2fsprogs
@@ -158,10 +158,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh efivar --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" efivar
- - ./mk/check-revision.sh efivar
- ./mk/build.sh efivar
- ./mk/publish.sh --arch "$ARCH" efivar
@@ -171,10 +171,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh popt --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" popt
- - ./mk/check-revision.sh popt
- ./mk/build.sh popt
- ./mk/publish.sh --arch "$ARCH" popt
@@ -186,10 +186,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh efibootmgr --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" efibootmgr
- - ./mk/check-revision.sh efibootmgr
- ./mk/build.sh efibootmgr
- ./mk/publish.sh --arch "$ARCH" efibootmgr
@@ -199,10 +199,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh glibc --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" glibc
- - ./mk/check-revision.sh glibc
- ./mk/build.sh glibc
- ./mk/publish.sh --arch "$ARCH" glibc
@@ -212,10 +212,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh libstdc++ --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" libstdc++
- - ./mk/check-revision.sh libstdc++
- ./mk/build.sh libstdc++
- ./mk/publish.sh --arch "$ARCH" libstdc++
@@ -228,10 +228,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh gptfdisk --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" gptfdisk
- - ./mk/check-revision.sh gptfdisk
- ./mk/build.sh gptfdisk
- ./mk/publish.sh --arch "$ARCH" gptfdisk
@@ -241,10 +241,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh xz --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" xz
- - ./mk/check-revision.sh xz
- ./mk/build.sh xz
- ./mk/publish.sh --arch "$ARCH" xz
@@ -255,10 +255,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh grub --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" grub
- - ./mk/check-revision.sh grub
- ./mk/build.sh grub
- ./mk/publish.sh --arch "$ARCH" grub
@@ -268,10 +268,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh libmnl --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" libmnl
- - ./mk/check-revision.sh libmnl
- ./mk/build.sh libmnl
- ./mk/publish.sh --arch "$ARCH" libmnl
@@ -281,10 +281,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh libcap --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" libcap
- - ./mk/check-revision.sh libcap
- ./mk/build.sh libcap
- ./mk/publish.sh --arch "$ARCH" libcap
@@ -296,10 +296,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh iproute2 --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" iproute2
- - ./mk/check-revision.sh iproute2
- ./mk/build.sh iproute2
- ./mk/publish.sh --arch "$ARCH" iproute2
@@ -309,10 +309,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh linkd --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" linkd
- - ./mk/check-revision.sh linkd
- ./mk/build.sh linkd
- ./mk/publish.sh --arch "$ARCH" linkd
@@ -322,10 +322,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh linux-longterm --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" linux-longterm
- - ./mk/check-revision.sh linux-longterm
- ./mk/build.sh linux-longterm
- ./mk/publish.sh --arch "$ARCH" linux-longterm
@@ -335,10 +335,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh linux-mainline --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" linux-mainline
- - ./mk/check-revision.sh linux-mainline
- ./mk/build.sh linux-mainline
- ./mk/publish.sh --arch "$ARCH" linux-mainline
@@ -348,10 +348,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh linux-stable --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" linux-stable
- - ./mk/check-revision.sh linux-stable
- ./mk/build.sh linux-stable
- ./mk/publish.sh --arch "$ARCH" linux-stable
@@ -362,10 +362,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh smartmontools --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" smartmontools
- - ./mk/check-revision.sh smartmontools
- ./mk/build.sh smartmontools
- ./mk/publish.sh --arch "$ARCH" smartmontools
@@ -375,10 +375,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh tinyssh --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" tinyssh
- - ./mk/check-revision.sh tinyssh
- ./mk/build.sh tinyssh
- ./mk/publish.sh --arch "$ARCH" tinyssh
@@ -388,10 +388,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh unos-firstboot --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" unos-firstboot
- - ./mk/check-revision.sh unos-firstboot
- ./mk/build.sh unos-firstboot
- ./mk/publish.sh --arch "$ARCH" unos-firstboot
@@ -401,10 +401,10 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
+ - ./mk/check-revision.sh unos-keys --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" unos-keys
- - ./mk/check-revision.sh unos-keys
- ./mk/build.sh unos-keys
- ./mk/publish.sh --arch "$ARCH" unos-keys
diff --git a/mk/bootstrap-repo.sh b/mk/bootstrap-repo.sh
@@ -18,14 +18,14 @@ for v in BUCKET_ACCESS_KEY BUCKET_SECRET_KEY BUCKET_NAME BUCKET_ENDPOINT BUCKET_
done
url="${BUCKET_ENDPOINT%/}/${BUCKET_NAME}/${ARCH}/APKINDEX.tar.gz"
-code=$(curl -sS -o /dev/null -w '%{http_code}' \
- --aws-sigv4 "aws:amz:${BUCKET_REGION}:s3" \
- --user "${BUCKET_ACCESS_KEY}:${BUCKET_SECRET_KEY}" \
- "${url}") || code=000
+# s3 endpoint is S3 API, not the http repo endpoint. Probe existence via
+# anonymous HTTP the same way `apk` does; the bucket is world-readable so
+# no SigV4 is needed for reads. SigV4 is only for the PUT below.
+code=$(curl -sS -o /dev/null -w '%{http_code}' "${url}") || code=000
case "${code}" in
2*) echo "==> repo already has ${ARCH}/APKINDEX.tar.gz (${code}), nothing to do"; exit 0 ;;
- 404|000) echo "==> no ${ARCH}/APKINDEX.tar.gz (${code}), bootstrapping empty index" ;;
+ 400|404|000) echo "==> no ${ARCH}/APKINDEX.tar.gz (${code}), bootstrapping empty index" ;;
*) echo "bootstrap-repo.sh: unexpected HTTP ${code} for ${url}" >&2; exit 1 ;;
esac
diff --git a/mk/gen-pipeline.sh b/mk/gen-pipeline.sh
@@ -107,10 +107,10 @@ HEADER
# The feature provides UNOS_KEY_APK_RSA_PRI, which mk/sign-key.inc reads.
printf ' requires: [unos-sign-key]\n'
printf ' script:\n'
+ printf ' - ./mk/check-revision.sh %s --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH"\n' "$p"
printf ' - ./mk/ci-setup.sh\n'
printf ' - ./mk/bootstrap-host.sh\n'
printf ' - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_ENDPOINT/$BUCKET_NAME/$ARCH" %s\n' "$p"
- printf ' - ./mk/check-revision.sh %s\n' "$p"
printf ' - ./mk/build.sh %s\n' "$p"
printf ' - ./mk/publish.sh --arch "$ARCH" %s\n' "$p"
printf '\n'