-
Notifications
You must be signed in to change notification settings - Fork 287
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ci: switch dummy builder to arm runner #1419
Conversation
WalkthroughThe pull request modifies the GitHub Actions workflow for Docker image builds to explicitly support ARM architecture. The workflow configuration in Changes
Possibly related PRs
Poem
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
.github/workflows/docker-build-and-push-dummy.yml (1)
Line range hint
41-71
: Consider optimizing with multi-platform builds.Instead of separate build steps for ARM64 and AMD64, consider using multi-platform builds to simplify the workflow:
- name: Build Backend Docker Image uses: docker/build-push-action@v6 with: context: ./backend file: ./backend/Dockerfile load: true - platforms: linux/arm64 - tags: ghcr.io/${{ github.repository }}/backend:arm64-${{ env.VERSION }} - - name: Build Frontend ARM Docker Image - uses: docker/build-push-action@v6 - with: - context: ./frontend - file: ./frontend/Dockerfile - load: true - platforms: linux/arm64 - tags: ghcr.io/${{ github.repository }}/frontend:arm64-${{ env.VERSION }} - - name: Build Backend Docker Image - uses: docker/build-push-action@v6 - with: - context: ./backend - file: ./backend/Dockerfile - load: true - platforms: linux/amd64 - tags: ghcr.io/${{ github.repository }}/backend:${{ env.VERSION }} - - name: Build Frontend Docker Image - uses: docker/build-push-action@v6 - with: - context: ./frontend - file: ./frontend/Dockerfile - load: true - platforms: linux/amd64 - tags: ghcr.io/${{ github.repository }}/frontend:${{ env.VERSION }} + platforms: linux/amd64,linux/arm64 + tags: | + ghcr.io/${{ github.repository }}/backend:${{ env.VERSION }} + ghcr.io/${{ github.repository }}/backend:arm64-${{ env.VERSION }} + - name: Build Frontend Docker Image + uses: docker/build-push-action@v6 + with: + context: ./frontend + file: ./frontend/Dockerfile + load: true + platforms: linux/amd64,linux/arm64 + tags: | + ghcr.io/${{ github.repository }}/frontend:${{ env.VERSION }} + ghcr.io/${{ github.repository }}/frontend:arm64-${{ env.VERSION }}Benefits:
- Reduced duplication in workflow configuration
- Parallel building of multi-platform images
- Maintained backward compatibility
- Same tagging strategy
🧰 Tools
🪛 actionlint (1.7.4)
13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file
(runner-label)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
.github/workflows/docker-build-and-push-dummy.yml
(1 hunks)
🧰 Additional context used
🪛 actionlint (1.7.4)
.github/workflows/docker-build-and-push-dummy.yml
13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file
(runner-label)
⏰ Context from checks skipped due to timeout of 90000ms (9)
- GitHub Check: enterprise-startup-docker-compose-test
- GitHub Check: startup-functional-test (3.12)
- GitHub Check: migrations-check (3.12)
- GitHub Check: enterprise-startup-functional-test (3.12)
- GitHub Check: functional-tests (3.12, chromium)
- GitHub Check: enterprise-functional-tests (3.12, chromium)
- GitHub Check: startup-docker-compose-test
- GitHub Check: Analyze (python)
- GitHub Check: Analyze (javascript-typescript)
🔇 Additional comments (2)
.github/workflows/docker-build-and-push-dummy.yml (2)
13-13
: Verify the custom runner configuration.The runner label
ubuntu-24.04-arm
is not a standard GitHub-hosted runner. If this is a custom self-hosted runner, please ensure:
- The runner is properly configured and available
- The runner label is correctly specified in your runner configuration
Alternative standard GitHub-hosted ARM runners you could consider:
ubuntu-latest
withruns-on: [self-hosted, linux, arm64]
ubuntu-24.04
withruns-on: [self-hosted, linux, arm64]
🧰 Tools
🪛 actionlint (1.7.4)
13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file
(runner-label)
Line range hint
41-54
: LGTM! Well-structured ARM build configuration.The ARM build configuration is well implemented with:
- Proper platform specification (
linux/arm64
)- Clear image tagging with
-arm64
suffix- Required QEMU setup for cross-platform builds
🧰 Tools
🪛 actionlint (1.7.4)
13-13: label "ubuntu-24.04-arm" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2022", "windows-2019", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-22.04", "ubuntu-20.04", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "macos-12-xl", "macos-12-xlarge", "macos-12-large", "macos-12", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file
(runner-label)
Summary by CodeRabbit