From 28a1cb4b4c597c6c14a0d75ecf1e0d2dcf50fed2 Mon Sep 17 00:00:00 2001 From: Marc Mintel Date: Sun, 25 Jan 2026 17:30:54 +0100 Subject: [PATCH] deploy --- .gitea/workflows/deploy.yml | 49 +++++++++---------------------------- 1 file changed, 12 insertions(+), 37 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 9af451e0..46928b34 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -23,56 +23,31 @@ jobs: qemu-user-static \ binfmt-support - - name: Set up QEMU + - name: Set up Docker Buildx run: | - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + # Create and use a new builder instance with the latest features + docker buildx create --name multiarch-builder --driver docker-container --use + docker buildx inspect --bootstrap - name: Login to registry env: REGISTRY_USER: ${{ secrets.REGISTRY_USER }} REGISTRY_PASS: ${{ secrets.REGISTRY_PASS }} run: | - echo "$REGISTRY_PASS" | DOCKER_API_VERSION=1.44 docker login registry.infra.mintel.me -u "$REGISTRY_USER" --password-stdin + echo "$REGISTRY_PASS" | docker login registry.infra.mintel.me -u "$REGISTRY_USER" --password-stdin - - name: Build image for AMD64 + - name: Build and push multi-arch image run: | - # Build for AMD64 (x86_64) - DOCKER_API_VERSION=1.44 docker build \ - --platform linux/amd64 \ + # Build for both AMD64 and ARM64 simultaneously and push directly + docker buildx build \ + --platform linux/amd64,linux/arm64 \ --pull \ --build-arg NEXT_PUBLIC_UMAMI_WEBSITE_ID=${{ secrets.NEXT_PUBLIC_UMAMI_WEBSITE_ID }} \ --build-arg NEXT_PUBLIC_UMAMI_SCRIPT_URL=${{ secrets.NEXT_PUBLIC_UMAMI_SCRIPT_URL }} \ --build-arg NEXT_PUBLIC_SENTRY_DSN=${{ secrets.SENTRY_DSN }} \ - -t registry.infra.mintel.me/mintel/klz-cables.com:amd64 . - - - name: Build image for ARM64 - run: | - # Build for ARM64 using QEMU emulation - DOCKER_API_VERSION=1.44 docker build \ - --platform linux/arm64 \ - --pull \ - --build-arg NEXT_PUBLIC_UMAMI_WEBSITE_ID=${{ secrets.NEXT_PUBLIC_UMAMI_WEBSITE_ID }} \ - --build-arg NEXT_PUBLIC_UMAMI_SCRIPT_URL=${{ secrets.NEXT_PUBLIC_UMAMI_SCRIPT_URL }} \ - --build-arg NEXT_PUBLIC_SENTRY_DSN=${{ secrets.SENTRY_DSN }} \ - -t registry.infra.mintel.me/mintel/klz-cables.com:arm64 . - - - name: Push architecture-specific images - run: | - # Push both architecture-specific images - DOCKER_API_VERSION=1.44 docker push registry.infra.mintel.me/mintel/klz-cables.com:amd64 - DOCKER_API_VERSION=1.44 docker push registry.infra.mintel.me/mintel/klz-cables.com:arm64 - - - name: Create and push multi-arch manifest - run: | - # Create multi-arch manifest - DOCKER_API_VERSION=1.44 docker manifest create \ - registry.infra.mintel.me/mintel/klz-cables.com:latest \ - registry.infra.mintel.me/mintel/klz-cables.com:amd64 \ - registry.infra.mintel.me/mintel/klz-cables.com:arm64 - - # Push the manifest - DOCKER_API_VERSION=1.44 docker manifest push \ - registry.infra.mintel.me/mintel/klz-cables.com:latest + -t registry.infra.mintel.me/mintel/klz-cables.com:latest \ + --push \ + . - name: Setup SSH run: |