You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: remove duplicate log, update docs for accuracy and completeness
- Remove duplicate "Creating multi-arch manifest" log from AzDO wrapper
(mergeMultiPlatformImages already logs this).
- Shorten GH Action group header to avoid repeating the log message.
- Update General Notes to reflect GitHub's hosted ARM runners and link
to the native matrix strategy.
- Add missing Docker login and buildx setup steps to the AzDO native
multi-platform example.
Copy file name to clipboardExpand all lines: docs/multi-platform-builds.md
+24-3Lines changed: 24 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,9 +4,9 @@ Building dev containers to support multiple platforms (aka CPU architectures) is
4
4
5
5
## General Notes/Caveats
6
6
7
-
-Multiplatform builds utilize emulation to build on architectures not native to the system the build is running on. This will significantly increase build times over native, single architecture builds.
8
-
- If you are using runCmd, the command will only be run on the architecure of the system the build is running on. This means that, if you are using runCmd to test the image, there may be bugs on the alternate platforms that will not be caught by your test suite. Manual post-build testing is advised.
9
-
-As of October 2022, all hosted servers for GitHub Actions and Azure Pipelines are x86_64 only. If you want to automatically run runCmd-based tests on your devcontainer on another architecure, you'll need a self-hosted runner on that architecture. It is possible that there will be future support for hosted arm64 machines, see [here for a tracking issue for Linux](https://github.com/actions/runner-images/issues/5631).
7
+
-Emulation-based multiplatform builds (using QEMU) will significantly increase build times over native, single architecture builds. For faster builds, consider using the [native matrix strategy](#native-multi-platform-builds-matrix-strategy) instead.
8
+
- If you are using runCmd, the command will only be run on the architecture of the system the build is running on. This means that, if you are using runCmd to test the image, there may be bugs on the alternate platforms that will not be caught by your test suite. Manual post-build testing is advised.
9
+
- GitHub Actions now offers hosted ARM runners (e.g. `ubuntu-24.04-arm`). For Azure Pipelines, you will need a self-hosted ARM agent for native ARM builds.
10
10
11
11
## GitHub Actions Example
12
12
@@ -141,6 +141,13 @@ stages:
141
141
pool:
142
142
vmImage: ubuntu-latest
143
143
steps:
144
+
- task: Docker@2
145
+
displayName: Login to Container Registry
146
+
inputs:
147
+
command: login
148
+
containerRegistry: RegistryNameHere
149
+
- script: docker buildx create --use
150
+
displayName: Set up docker buildx
144
151
- task: DevcontainersCi@0
145
152
inputs:
146
153
imageName: myregistry.azurecr.io/devcontainer
@@ -152,6 +159,13 @@ stages:
152
159
pool:
153
160
name: 'Self-Hosted-ARM64'# Use an ARM64 agent for native builds
0 commit comments