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

Support multi-arch images #192

Open
dza89 opened this issue May 3, 2022 · 1 comment
Open

Support multi-arch images #192

dza89 opened this issue May 3, 2022 · 1 comment
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@dza89
Copy link

dza89 commented May 3, 2022

Right now only the system-image is copied:

ImageListSelection // set to either CopySystemImage (the default), CopyAllImages, or CopySpecificImages to control which instances we copy when the source reference is a list; ignored if the source reference is not a list

Should check if input is a list and then set this option:
https:/containers/image/blob/269ffff7b1f546dda9ebf522f8ae24dc679e00c6/copy/manifest.go#L117

@wchaws wchaws added the enhancement New feature or request label May 3, 2022
@mccauleyp
Copy link

mccauleyp commented Aug 12, 2022

This would be super helpful! @dza89 or @wchaws, do you know of a workaround for now? I have a multi-arch image that I'd like to upload once to the default CDK registry and then distribute to different stacks/environments that may span multiple accounts, but I'm not finding a good way to incorporate that into the CDK deployment process using CDK Pipelines.

Update: In case this might be useful for anyone else who stumbles on this... My solution ended up being to just not rely on CDK for the docker build. I have a CDK Pipeline that builds an image using docker buildx as part of the "synth" step in AWS CodeBuild before the CloudFormation templates are synthesized. See this link for how to get buildx working in AWS CodeBuild.

That image (really two images and a manifest) is pushed to a staging repository that's created by the pipeline stack, similar to how CDK uses a dedicated assets repo. Then after each stage in my pipeline is deployed, a "post" CodeBuildStep runs that uses the skopeo CLI to copy the image from the staging repo to a dedicated ECR repo for each stage. This is what cdk-ecr-deployment does for you if you're not dealing with a multi-arch image, and of course my implementation was inspired by this repo. Thanks!

@mrgrain mrgrain added the help wanted Extra attention is needed label Oct 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants