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: add building and publishing multi-platform images #6208

Merged
merged 7 commits into from
Jun 24, 2024

Conversation

twelvemo
Copy link
Collaborator

@twelvemo twelvemo commented Jun 21, 2024

Adds the config option and capability to trigger multi-platform builds. To allow publishing multi-platform images with the publish command, the publish command now uses regctl whenever possible. This allows us to copy newly tagged images directly without the need to pull them down to a local image store first. This is more performant, enables usage of the publish command in container based CIs and it is necessary in the context of multi-platform builds because most local image stores don't support storing multi-platform images.

  • feat(container): add multi platform builds
  • feat(container): publish images without the need to pull them locally

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes #3106

Special notes for your reviewer:
Uses regctl instead of skopeo, because it also has windows builds.

@twelvemo twelvemo changed the title multi platform builds feat: add building and publishing multi-platform images Jun 21, 2024
@twelvemo twelvemo marked this pull request as ready for review June 24, 2024 07:48
@twelvemo twelvemo requested a review from stefreak June 24, 2024 07:48
Copy link
Member

@stefreak stefreak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks really good! I posted a few small comments 👍

core/src/plugins/container/publish.ts Outdated Show resolved Hide resolved
core/src/plugins/kubernetes/container/publish.ts Outdated Show resolved Hide resolved
docs/k8s-plugins/guides/in-cluster-building.md Outdated Show resolved Hide resolved
docs/other-plugins/container.md Outdated Show resolved Hide resolved
@twelvemo twelvemo force-pushed the multi-platform-builds branch from 58dc7c3 to c99f9b8 Compare June 24, 2024 13:37
@twelvemo twelvemo force-pushed the multi-platform-builds branch from c99f9b8 to 5c97128 Compare June 24, 2024 13:38
@twelvemo twelvemo requested a review from stefreak June 24, 2024 13:39
stefreak
stefreak previously approved these changes Jun 24, 2024
Copy link
Member

@stefreak stefreak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work! :) ⚡ Looks good to me ✨

@stefreak stefreak enabled auto-merge June 24, 2024 14:00
@stefreak stefreak added this pull request to the merge queue Jun 24, 2024
Merged via the queue into main with commit 445de87 Jun 24, 2024
41 checks passed
@stefreak stefreak deleted the multi-platform-builds branch June 24, 2024 16:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEATURE]: Support multi-platform builds with local-docker mode (enable BuildKit)
3 participants