From 4398b00801997d25574fea6b3016ba910632cdc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9sar=20Arroba?= <19954079+cesararroba@users.noreply.github.com> Date: Mon, 15 Dec 2025 11:23:39 +0100 Subject: [PATCH] chore(github): use QEMU to build ARM images if repository is not prowler (#9547) --- .github/workflows/api-container-checks.yml | 10 ++++++++-- .github/workflows/mcp-container-checks.yml | 10 ++++++++-- .github/workflows/ui-container-checks.yml | 10 ++++++++-- 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/.github/workflows/api-container-checks.yml b/.github/workflows/api-container-checks.yml index 58e0189825..27c4458815 100644 --- a/.github/workflows/api-container-checks.yml +++ b/.github/workflows/api-container-checks.yml @@ -43,7 +43,7 @@ jobs: ignore: DL3013 api-container-build-and-scan: - runs-on: ${{ matrix.runner }} + runs-on: ${{ matrix.arch == 'arm64' && github.repository == 'prowler-cloud/prowler' && 'ubuntu-24.04-arm' || matrix.runner }} strategy: matrix: include: @@ -51,7 +51,7 @@ jobs: runner: ubuntu-latest arch: amd64 - platform: linux/arm64 - runner: ubuntu-24.04-arm + runner: ubuntu-latest arch: arm64 timeout-minutes: 30 permissions: @@ -73,6 +73,12 @@ jobs: api/README.md api/CHANGELOG.md + - name: Set up QEMU + if: steps.check-changes.outputs.any_changed == 'true' && matrix.arch == 'arm64' && github.repository != 'prowler-cloud/prowler' + uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0 + with: + platforms: arm64 + - name: Set up Docker Buildx if: steps.check-changes.outputs.any_changed == 'true' uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1 diff --git a/.github/workflows/mcp-container-checks.yml b/.github/workflows/mcp-container-checks.yml index d4f377f8fe..f0407d51c5 100644 --- a/.github/workflows/mcp-container-checks.yml +++ b/.github/workflows/mcp-container-checks.yml @@ -42,7 +42,7 @@ jobs: dockerfile: mcp_server/Dockerfile mcp-container-build-and-scan: - runs-on: ${{ matrix.runner }} + runs-on: ${{ matrix.arch == 'arm64' && github.repository == 'prowler-cloud/prowler' && 'ubuntu-24.04-arm' || matrix.runner }} strategy: matrix: include: @@ -50,7 +50,7 @@ jobs: runner: ubuntu-latest arch: amd64 - platform: linux/arm64 - runner: ubuntu-24.04-arm + runner: ubuntu-latest arch: arm64 timeout-minutes: 30 permissions: @@ -71,6 +71,12 @@ jobs: mcp_server/README.md mcp_server/CHANGELOG.md + - name: Set up QEMU + if: steps.check-changes.outputs.any_changed == 'true' && matrix.arch == 'arm64' && github.repository != 'prowler-cloud/prowler' + uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0 + with: + platforms: arm64 + - name: Set up Docker Buildx if: steps.check-changes.outputs.any_changed == 'true' uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1 diff --git a/.github/workflows/ui-container-checks.yml b/.github/workflows/ui-container-checks.yml index e9dd3a192f..837d01b6bb 100644 --- a/.github/workflows/ui-container-checks.yml +++ b/.github/workflows/ui-container-checks.yml @@ -43,7 +43,7 @@ jobs: ignore: DL3018 ui-container-build-and-scan: - runs-on: ${{ matrix.runner }} + runs-on: ${{ matrix.arch == 'arm64' && github.repository == 'prowler-cloud/prowler' && 'ubuntu-24.04-arm' || matrix.runner }} strategy: matrix: include: @@ -51,7 +51,7 @@ jobs: runner: ubuntu-latest arch: amd64 - platform: linux/arm64 - runner: ubuntu-24.04-arm + runner: ubuntu-latest arch: arm64 timeout-minutes: 30 permissions: @@ -72,6 +72,12 @@ jobs: ui/CHANGELOG.md ui/README.md + - name: Set up QEMU + if: steps.check-changes.outputs.any_changed == 'true' && matrix.arch == 'arm64' && github.repository != 'prowler-cloud/prowler' + uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0 + with: + platforms: arm64 + - name: Set up Docker Buildx if: steps.check-changes.outputs.any_changed == 'true' uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1