Skip to content
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

feat(superchain): arm64 support #2949

Merged
merged 32 commits into from
Aug 16, 2021
Merged

feat(superchain): arm64 support #2949

merged 32 commits into from
Aug 16, 2021

Conversation

RomainMuller
Copy link
Contributor

@RomainMuller RomainMuller commented Aug 11, 2021

Introducing ARM64 support for the jsii/superchain docker image using
the multi-arch capabilities of docker buildx. This prompted a couple
of changes in the image, which should be fine for the majority of
use-cases, but is a breaking change in certain edge cases... So this change
also changes the image tagging model, so that users are able to reliably
depend on a particular linux distribution ancestry (debian:buster-slim
being the only offered option at this moment).

The new image is based off debian:10-slim, as unfortunately, binary
distributions of some of the image contents are not available for ARM64
platform on the RHEL/CentOS-based distributions (which amazonlinux:2
is). This means packages now get installed from apt instead of yum.

Image testing (by building jsii within the image) is now part of the
image build process itself, instead of being separated, as this allows
testing on all supported architectures (which is otherwise somewhat more
difficult to achieve).

BREAKING CHANGE: the jsii/superchain image tags :latest, :nightly,
:node10 and :node14 are no longer maintained. Users should migrate to
the new debian-based tags starting with :1-buster-slim.

Fixes #2930


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Introducing ARM64 support for the `jsii/superchain` docker image using
the multi-arch capabilities of `docker buildx`. This prompted a couple
of changes in the image, which should be fine for the majority of
use-cases, but is a breaking change in certain edge cases...

The new image is based off `debian:10-slim`, as unfortunately, binary
distributions of some of the image contents are not available for ARM64
platform on the RHEL/CentOS-based distributions (which `amazonlinux:2`
is). This means packages now get installed from `apt` instead of `yum`.

Image testing (by building `jsii` within the image) is now part of the
image build process itself, instead of being separated, as this allows
testing on all supported architectures (which is otherwise somewhat more
difficult to achieve).

BREAKING CHANGE: the `jsii/superchain` image is no longer based off
`amazonlinux:2`, and instead is based off `debian:10-slim`. This means
`yum` is no longer to be used for installing packages -- `apt-get`
should be used instead.
@RomainMuller RomainMuller requested a review from a team August 11, 2021 13:04
@RomainMuller RomainMuller self-assigned this Aug 11, 2021
@mergify mergify bot added the contribution/core This is a PR that came from AWS. label Aug 11, 2021
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from cd415a5 to 40ce9f4 Compare August 11, 2021 13:18
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from 40ce9f4 to 9772aac Compare August 11, 2021 13:21
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from 61e1c68 to e1ac54a Compare August 11, 2021 14:55
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from 62b8b78 to fb7aef8 Compare August 12, 2021 09:50
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from 15e1928 to 1fc61c1 Compare August 12, 2021 15:36
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from 1fc61c1 to 188aa51 Compare August 12, 2021 15:38
superchain/Dockerfile Outdated Show resolved Hide resolved
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from f3e14ef to 25987e8 Compare August 13, 2021 10:28
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from 2ac1aec to 2dc5322 Compare August 13, 2021 15:06
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from 5bba56c to 967b158 Compare August 13, 2021 15:14
@RomainMuller RomainMuller force-pushed the rmuller/superchain-arm64 branch from 47f8060 to 2c42d1f Compare August 13, 2021 15:27
@RomainMuller RomainMuller marked this pull request as ready for review August 16, 2021 08:00
@mergify
Copy link
Contributor

mergify bot commented Aug 16, 2021

Thank you for contributing! ❤️ I will now look into making sure the PR is up-to-date, then proceed to try and merge it!

@mergify mergify bot added the pr/ready-to-merge This PR is ready to be merged. label Aug 16, 2021
@mergify
Copy link
Contributor

mergify bot commented Aug 16, 2021

Merging (with squash)...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contribution/core This is a PR that came from AWS.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

jsii/superchain generating qemu: uncaught target signal 6 (aborted) error when run on new Mac (arm64)
3 participants