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
+11
View File
@@ -0,0 +1,11 @@
#!/usr/bin/env bash
# Tag the built image IMAGE:<arch> and push it from that arch's daemon.
set -euo pipefail
cd "$(dirname "$0")/.."
. bin/lib.sh
arch="${1:?usage: bin/push <arch>}"
use_arch_host "$arch"
docker tag "$(dev_tag "$arch")" "$(arch_tag "$arch")"
docker push "$(arch_tag "$arch")" 2>&1 | tee "$LOGDIR/push-$arch.log"