.gitea/workflows/build-and-push.yaml aktualisiert
This commit is contained in:
@@ -129,32 +129,37 @@ jobs:
|
||||
|
||||
BASE_SHA=$(docker buildx imagetools inspect $BASE --format '{{json .Manifest.Digest}}' 2>/dev/null | tr -d '"' || echo "unknown")
|
||||
|
||||
AMD_TAGS=("-t" "$IMAGE_GITEA:tmp-amd64")
|
||||
ARM_TAGS=("-t" "$IMAGE_GITEA:tmp-arm64")
|
||||
|
||||
if [[ "$PUSH" == *"dockerhub"* ]]; then
|
||||
DOCKERHUB_REPO="${{ secrets.DOCKERHUB_USERNAME }}/$REPO_PURE"
|
||||
AMD_TAGS+=("-t" "$DOCKERHUB_REPO:tmp-amd64")
|
||||
ARM_TAGS+=("-t" "$DOCKERHUB_REPO:tmp-arm64")
|
||||
fi
|
||||
|
||||
docker buildx build "${DOCKER_ARGS[@]}" "${AMD_TAGS[@]}" \
|
||||
# 1. Architektur-spezifische Builds pushen
|
||||
docker buildx build "${DOCKER_ARGS[@]}" -t "$IMAGE_GITEA:tmp-amd64" \
|
||||
--pull --platform linux/amd64 -f Dockerfile \
|
||||
--label "pi_farm.base_digest=$BASE_SHA" --label "pi_farm.args_hash=$ARGS_HASH" --push .
|
||||
|
||||
docker buildx build "${DOCKER_ARGS[@]}" "${ARM_TAGS[@]}" \
|
||||
docker buildx build "${DOCKER_ARGS[@]}" -t "$IMAGE_GITEA:tmp-arm64" \
|
||||
--pull --platform linux/arm64 -f Dockerfile.aarch64 \
|
||||
--label "pi_farm.base_digest=$BASE_SHA" --label "pi_farm.args_hash=$ARGS_HASH" --push .
|
||||
|
||||
# 2. Multi-Arch Manifest für Gitea erstellen
|
||||
# Wir bauen ein Array für die Tags
|
||||
GITEA_MANIFEST_TAGS=("-t" "$IMAGE_GITEA:$TAG")
|
||||
if [[ "$BUILD_TAG_LATEST" == "y" ]]; then
|
||||
GITEA_MANIFEST_TAGS+=("-t" "$IMAGE_GITEA:latest")
|
||||
fi
|
||||
|
||||
docker buildx imagetools create \
|
||||
--annotation "index:pi_farm.base_digest=$BASE_SHA" --annotation "index:pi_farm.args_hash=$ARGS_HASH" \
|
||||
-t $IMAGE_GITEA:$TAG -t $IMAGE_GITEA:latest $IMAGE_GITEA:tmp-amd64 $IMAGE_GITEA:tmp-arm64
|
||||
"${GITEA_MANIFEST_TAGS[@]}" $IMAGE_GITEA:tmp-amd64 $IMAGE_GITEA:tmp-arm64
|
||||
|
||||
# 3. Multi-Arch Manifest für Docker Hub (optional)
|
||||
if [[ "$PUSH" == *"dockerhub"* ]]; then
|
||||
DOCKERHUB_REPO="${{ secrets.DOCKERHUB_USERNAME }}/$REPO_PURE"
|
||||
DH_MANIFEST_TAGS=("-t" "$DOCKERHUB_REPO:$TAG")
|
||||
if [[ "$BUILD_TAG_LATEST" == "y" ]]; then
|
||||
DH_MANIFEST_TAGS+=("-t" "$DOCKERHUB_REPO:latest")
|
||||
fi
|
||||
|
||||
docker buildx imagetools create \
|
||||
--annotation "index:pi_farm.base_digest=$BASE_SHA" --annotation "index:pi_farm.args_hash=$ARGS_HASH" \
|
||||
-t $DOCKERHUB_REPO:$TAG -t $DOCKERHUB_REPO:latest $IMAGE_GITEA:tmp-amd64 $IMAGE_GITEA:tmp-arm64
|
||||
"${DH_MANIFEST_TAGS[@]}" $IMAGE_GITEA:tmp-amd64 $IMAGE_GITEA:tmp-arm64
|
||||
fi
|
||||
|
||||
- name: Update Documentation and Compose
|
||||
|
||||
Reference in New Issue
Block a user