mirror of
https://tangled.org/evan.jarrett.net/at-container-registry
synced 2026-08-31 23:36:57 +00:00
refactor jetstream code to unify shared functionality between that and backfill. add tests
This commit is contained in:
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# Configuration
|
||||
SOURCE_REGISTRY="ghcr.io/evanjarrett/hsm-secrets-operator"
|
||||
TARGET_REGISTRY="atcr.io/evan.jarrett.net/hsm-secrets-operator"
|
||||
TAG="latest"
|
||||
|
||||
# Image digests
|
||||
AMD64_DIGEST="sha256:274284a623810cf07c5b4735628832751926b7d192863681d5af1b4137f44254"
|
||||
ARM64_DIGEST="sha256:b57929fd100033092766aad1c7e747deef9b1e3206756c11d0d7a7af74daedff"
|
||||
|
||||
echo "=== Migrating multi-arch image from GHCR to ATCR ==="
|
||||
echo "Source: ${SOURCE_REGISTRY}"
|
||||
echo "Target: ${TARGET_REGISTRY}:${TAG}"
|
||||
echo ""
|
||||
|
||||
# Tag and push amd64 image
|
||||
echo ">>> Tagging and pushing amd64 image..."
|
||||
docker tag "${SOURCE_REGISTRY}@${AMD64_DIGEST}" "${TARGET_REGISTRY}:${TAG}-amd64"
|
||||
docker push "${TARGET_REGISTRY}:${TAG}-amd64"
|
||||
echo ""
|
||||
|
||||
# Tag and push arm64 image
|
||||
echo ">>> Tagging and pushing arm64 image..."
|
||||
docker tag "${SOURCE_REGISTRY}@${ARM64_DIGEST}" "${TARGET_REGISTRY}:${TAG}-arm64"
|
||||
docker push "${TARGET_REGISTRY}:${TAG}-arm64"
|
||||
echo ""
|
||||
|
||||
# Create multi-arch manifest using the pushed tags
|
||||
echo ">>> Creating multi-arch manifest..."
|
||||
docker manifest create "${TARGET_REGISTRY}:${TAG}" \
|
||||
--amend "${TARGET_REGISTRY}:${TAG}-amd64" \
|
||||
--amend "${TARGET_REGISTRY}:${TAG}-arm64"
|
||||
echo ""
|
||||
|
||||
# Annotate the manifest with platform information
|
||||
echo ">>> Annotating manifest with platform information..."
|
||||
docker manifest annotate "${TARGET_REGISTRY}:${TAG}" \
|
||||
"${TARGET_REGISTRY}:${TAG}-amd64" \
|
||||
--os linux --arch amd64
|
||||
|
||||
docker manifest annotate "${TARGET_REGISTRY}:${TAG}" \
|
||||
"${TARGET_REGISTRY}:${TAG}-arm64" \
|
||||
--os linux --arch arm64
|
||||
echo ""
|
||||
|
||||
# Push the manifest list
|
||||
echo ">>> Pushing multi-arch manifest..."
|
||||
docker manifest push "${TARGET_REGISTRY}:${TAG}"
|
||||
echo ""
|
||||
|
||||
echo "=== Migration complete! ==="
|
||||
echo "You can now pull: docker pull ${TARGET_REGISTRY}:${TAG}"
|
||||
Reference in New Issue
Block a user