Add Makefile and bin/ scripts for one-command multi-arch release

make release builds, smoke-tests and pushes amd64 (on fsn1app1 via
DOCKER_HOST) and arm64 (local), joins them into latest and dated
multi-arch manifests, and commits the day's logs. Logic lives in bin/;
the Makefile only wires dependencies so -j2 runs the arches in parallel.
This commit is contained in:
2026-11-05 04:41:47 -08:00
parent df31d11028
commit ce924fd762
10 changed files with 217 additions and 20 deletions
Executable
+17
View File
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
# Join the per-arch tags into multi-arch manifests IMAGE:latest and
# IMAGE:DATE, and record what was published.
set -euo pipefail
cd "$(dirname "$0")/.."
. bin/lib.sh
unset DOCKER_HOST
refs=()
for arch in ${ARCHES:-amd64 arm64}; do
refs+=("$(arch_tag "$arch")")
done
docker buildx imagetools create \
-t "$IMAGE:latest" -t "$IMAGE:$DATE" "${refs[@]}"
docker buildx imagetools inspect "$IMAGE:$DATE" | tee "$LOGDIR/manifest.txt"