Skip to content
This repository has been archived by the owner on Nov 30, 2023. It is now read-only.

Commit

Permalink
Build arm64 image variations for the debian and ubuntu definitions fo…
Browse files Browse the repository at this point in the history
…r M1 macs (#1023)
  • Loading branch information
Chuxel authored Sep 1, 2021
1 parent aee3954 commit 409c639
Show file tree
Hide file tree
Showing 9 changed files with 36 additions and 21 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/push-and-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ jobs:
name: Build and push images
strategy:
matrix:
page: [1, 2, 3, 4, 5]
page-total: [5]
page: [1, 2, 3, 4, 5, 6]
page-total: [6]
fail-fast: false
runs-on: ubuntu-latest
steps:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/push-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ jobs:
if: "!contains(github.event.head_commit.message, 'Automated update') && !contains(github.event.head_commit.message, 'CI ignore')"
strategy:
matrix:
page: [1, 2, 3, 4]
page-total: [4]
page: [1, 2, 3, 4, 5]
page-total: [5]
fail-fast: true
runs-on: ubuntu-latest
steps:
Expand Down
2 changes: 1 addition & 1 deletion containers/debian/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
| *Definition type* | Dockerfile |
| *Published images* | mcr.microsoft.com/vscode/devcontainers/base:debian |
| *Available image variants* | stretch, buster, bullseye ([full list](https://mcr.microsoft.com/v2/vscode/devcontainers/base/tags/list)) |
| *Published image architecture(s)* | x86-64 |
| *Published image architecture(s)* | x86-64, aarch64/arm64 for `bullseye` and `stretch` variants |
| *Works in Codespaces* | Yes |
| *Container host OS support* | Linux, macOS, Windows |
| *Container OS* | Debian |
Expand Down
17 changes: 11 additions & 6 deletions containers/debian/definition-manifest.json
Original file line number Diff line number Diff line change
@@ -1,22 +1,27 @@
{
"variants": ["buster", "bullseye", "stretch"],
"definitionVersion": "0.202.1",
"definitionVersion": "0.202.2",
"build": {
"latest": true,
"latest": "bullseye",
"rootDistro": "debian",
"architectures": {
"bullseye": ["linux/amd64", "linux/arm64"],
"buster": ["linux/amd64"],
"stretch": ["linux/amd64", "linux/arm64"]
},
"tags": [
"base:${VERSION}-${VARIANT}"
],
"variantTags": {
"bullseye": [
"base:${VERSION}-debian-11",
"base:${VERSION}-debian11"
"base:${VERSION}-debian11",
"base:${VERSION}-debian",
"base:${VERSION}"
],
"buster": [
"base:${VERSION}-debian-10",
"base:${VERSION}-debian10",
"base:${VERSION}-debian",
"base:${VERSION}"
"base:${VERSION}-debian10"
],
"stretch": [
"base:${VERSION}-debian-9",
Expand Down
2 changes: 1 addition & 1 deletion containers/ubuntu/.devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# [Choice] Ubuntu version: bionic, focal
# [Choice] Ubuntu version: hirsute, bionic, focal
ARG VARIANT=focal
FROM mcr.microsoft.com/vscode/devcontainers/base:${VARIANT}

Expand Down
2 changes: 1 addition & 1 deletion containers/ubuntu/.devcontainer/base.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Update the VARIANT arg in devcontainer.json to pick an Ubuntu version: focal, bionic
# Update the VARIANT arg in devcontainer.json to pick an Ubuntu version: hirsute, focal, bionic
ARG VARIANT="focal"
FROM buildpack-deps:${VARIANT}-curl

Expand Down
2 changes: 1 addition & 1 deletion containers/ubuntu/.devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "Ubuntu",
"build": {
"dockerfile": "Dockerfile",
// Update 'VARIANT' to pick an Ubuntu version: focal, bionic
// Update 'VARIANT' to pick an Ubuntu version: hirsute, focal, bionic
"args": { "VARIANT": "focal" }
},

Expand Down
11 changes: 6 additions & 5 deletions containers/ubuntu/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
| *Categories* | Core, Other |
| *Definition type* | Dockerfile |
| *Published images* | mcr.microsoft.com/vscode/devcontainers/base:ubuntu |
| *Available image variants* | bionic, focal ([full list](https://mcr.microsoft.com/v2/vscode/devcontainers/base/tags/list)) |
| *Published image architecture(s)* | x86-64 |
| *Available image variants* | hirsute, focal, bionic ([full list](https://mcr.microsoft.com/v2/vscode/devcontainers/base/tags/list)) |
| *Published image architecture(s)* | x86-64, aarch64/arm64 for `hirsute` (21.04) and `bionic` (18.04) variants |
| *Works in Codespaces* | Yes |
| *Container host OS support* | Linux, macOS, Windows |
| *Container OS* | Ubuntu |
Expand All @@ -29,15 +29,16 @@ While the definition itself works unmodified, you can select the version of Ubun

You can also directly reference pre-built versions of `.devcontainer/base.Dockerfile` by using the `image` property in `.devcontainer/devcontainer.json` or updating the `FROM` statement in your own `Dockerfile` to one of the following. An example `Dockerfile` is included in this repository.

- `mcr.microsoft.com/vscode/devcontainers/base:ubuntu` (latest)
- `mcr.microsoft.com/vscode/devcontainers/base:ubuntu` (latest LTS release)
- `mcr.microsoft.com/vscode/devcontainers/base:hirsute` (or `ubuntu-21.04`)
- `mcr.microsoft.com/vscode/devcontainers/base:focal` (or `ubuntu-20.04`)
- `mcr.microsoft.com/vscode/devcontainers/base:bionic` (or `ubuntu-18.04`)

You can decide how often you want updates by referencing a [semantic version](https://semver.org/) of each image. For example:

- `mcr.microsoft.com/vscode/devcontainers/base:0-focal`
- `mcr.microsoft.com/vscode/devcontainers/base:0.201-focal`
- `mcr.microsoft.com/vscode/devcontainers/base:0.201.4-focal`
- `mcr.microsoft.com/vscode/devcontainers/base:0.202-focal`
- `mcr.microsoft.com/vscode/devcontainers/base:0.202.0-focal`

See [history](history) for information on the contents of each version and [here for a complete list of available tags](https://mcr.microsoft.com/v2/vscode/devcontainers/base/tags/list).

Expand Down
13 changes: 11 additions & 2 deletions containers/ubuntu/definition-manifest.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,22 @@
{
"variants": ["focal", "bionic"],
"definitionVersion": "0.201.9",
"variants": ["hirsute", "focal", "bionic"],
"definitionVersion": "0.202.0",
"build": {
"latest": false,
"rootDistro": "debian",
"architectures": {
"hirsute": ["linux/amd64", "linux/arm64"],
"focal": ["linux/amd64"],
"bionic": ["linux/amd64", "linux/arm64"]
},
"tags": [
"base:${VERSION}-${VARIANT}"
],
"variantTags": {
"hirsute": [
"base:${VERSION}-ubuntu-21.04",
"base:${VERSION}-ubuntu21.04"
],
"focal": [
"base:${VERSION}-ubuntu-20.04",
"base:${VERSION}-ubuntu20.04",
Expand Down

0 comments on commit 409c639

Please sign in to comment.