Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .github/workflows/publish-api-server.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,11 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: arm64

- uses: docker/setup-buildx-action@v3

- name: Log in to GHCR
Expand All @@ -53,8 +58,11 @@ jobs:
with:
context: ./api-server
push: true
platforms: linux/amd64,linux/arm64
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Verification agent

🧩 Analysis chain

Set up QEMU to support the new arm64 target.

docker/setup-qemu-action@v3 is needed for cross-arch builds on GitHub-hosted runners.

Insert before buildx:

- uses: docker/setup-qemu-action@v3
  with:
    platforms: arm64

Also verify the Dockerfile bases are multi-arch (e.g., node, python, alpine) and respect TARGETARCH.


🏁 Script executed:

#!/bin/bash
# Search for QEMU setup action
grep -R "setup-qemu-action" -n .github/workflows/publish-api-server.yml || echo "No setup-qemu-action found."
# Search for docker build-push-action usage
grep -R "docker/build-push-action" -n .github/workflows/publish-api-server.yml || echo "No build-push-action usage found."
# Show context around platforms specification
grep -R -n -C3 "platforms:" .github/workflows/publish-api-server.yml

Length of output: 561


Set up QEMU for ARM64 before building
Insert before the build-and-push step in .github/workflows/publish-api-server.yml:

- uses: docker/setup-qemu-action@v3
  with:
    platforms: arm64

This action must precede any buildx or build-push steps to install QEMU emulators for cross-architecture builds (github.com)
Validate your Dockerfile base images are multi-arch and use TARGETARCH for architecture-specific logic.

🤖 Prompt for AI Agents
In .github/workflows/publish-api-server.yml around line 56, the workflow enables
linux/arm64 as a target platform but does not set up QEMU beforehand; insert a
step using docker/setup-qemu-action@v3 with platforms: arm64 immediately before
any buildx or build-and-push steps to install QEMU emulators for
cross-architecture builds, ensure this new step precedes buildx usage, and
verify your Dockerfile base images are multi-arch and any architecture-specific
logic uses the TARGETARCH build arg or similar to select correct assets.

tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
provenance: true
sbom: true

deploy-to-k8s:
needs: publish-image
Expand Down
8 changes: 8 additions & 0 deletions .github/workflows/publish-dashboard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,11 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: arm64

- uses: docker/setup-buildx-action@v3

- name: Log in to GHCR
Expand All @@ -53,5 +58,8 @@ jobs:
with:
context: ./dashboard
push: true
platforms: linux/amd64,linux/arm64
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
provenance: true
sbom: true
6 changes: 6 additions & 0 deletions .github/workflows/publish-landing-page.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,11 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: arm64

- uses: docker/setup-buildx-action@v3

- name: Log in to GHCR
Expand All @@ -54,6 +59,7 @@ jobs:
with:
context: ./landing-page
push: true
platforms: linux/amd64,linux/arm64
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}

Expand Down
8 changes: 8 additions & 0 deletions .github/workflows/publish-state-mangaer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,11 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: arm64

- uses: docker/setup-buildx-action@v3

- name: Log in to GHCR
Expand All @@ -110,5 +115,8 @@ jobs:
with:
context: ./state-manager
push: true
platforms: linux/amd64,linux/arm64
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
provenance: true
sbom: true
8 changes: 8 additions & 0 deletions .github/workflows/release-dashboard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,11 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: arm64

- uses: docker/setup-buildx-action@v3

- name: Log in to GHCR
Expand All @@ -51,5 +56,8 @@ jobs:
with:
context: ./dashboard
push: true
platforms: linux/amd64,linux/arm64
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
provenance: true
sbom: true
8 changes: 8 additions & 0 deletions .github/workflows/release-state-manager.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,11 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: arm64

- uses: docker/setup-buildx-action@v3

- name: Log in to GHCR
Expand All @@ -106,5 +111,8 @@ jobs:
with:
context: ./state-manager
push: true
platforms: linux/amd64,linux/arm64
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
provenance: true
sbom: true