Skip to content

feat(cli): add support for multi-architecture container images#1058

Merged
jakobmoellerdev merged 2 commits into
open-component-model:mainfrom
jakobmoellerdev:introduce-image-build
Oct 20, 2025
Merged

feat(cli): add support for multi-architecture container images#1058
jakobmoellerdev merged 2 commits into
open-component-model:mainfrom
jakobmoellerdev:introduce-image-build

Conversation

@jakobmoellerdev

Copy link
Copy Markdown
Member

What this PR does / why we need it:

  • Introduced Containerfile to build scratch-based multi-arch container images for the CLI.
  • Added build/multiarch/image task to generate OCI-compatible multi-arch container images.
  • Adjusted Taskfile.yml to support multi-arch builds, leveraging Docker Buildx.
  • Improved task dependencies to ensure dependencies are downloaded before builds.
  • Modified resource identity names to reflect new multi-arch CLI structure.

Why:

This enables the CLI to be distributed as platform-compatible container images, improving accessibility across diverse environments. The capability aligns with modern multi-arch support best practices.

requirement as prep for #1056

@jakobmoellerdev jakobmoellerdev requested a review from a team as a code owner October 17, 2025 12:47
@github-actions github-actions Bot added kind/feature new feature, enhancement, improvement, extension size/s Small labels Oct 17, 2025
#### What this PR does / why we need it:

- Introduced `Containerfile` to build scratch-based multi-arch container images for the CLI.
- Added `build/multiarch/image` task to generate OCI-compatible multi-arch container images.
- Adjusted `Taskfile.yml` to support multi-arch builds, leveraging Docker Buildx.
- Improved task dependencies to ensure dependencies are downloaded before builds.
- Modified resource identity names to reflect new multi-arch CLI structure.

#### Why:

This enables the CLI to be distributed as platform-compatible container images, improving accessibility across diverse environments. The capability aligns with modern multi-arch support best practices.

Signed-off-by: Jakob Möller <jakob.moeller@sap.com>
@github-actions github-actions Bot added the component/github-actions Changes on GitHub Actions or within `.github/` directory label Oct 17, 2025
Comment thread cli/Taskfile.yml

@piotrjanik piotrjanik left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@ikhandamirov ikhandamirov left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Works for me.
To make it run locally, I had to set up the builder first. Is it handled by docker/setup-buildx-action@v3 ?

docker buildx create --name multiarch --driver docker-container --use

@morri-son

Copy link
Copy Markdown
Contributor

Works for me. To make it run locally, I had to set up the builder first. Is it handled by docker/setup-buildx-action@v3 ?

docker buildx create --name multiarch --driver docker-container --use

yes, the action you mentioned creates a new buildx builder instance during the workflow

@morri-son morri-son left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

lgtm

@jakobmoellerdev jakobmoellerdev enabled auto-merge (squash) October 20, 2025 07:08
@jakobmoellerdev jakobmoellerdev merged commit 0cb4a92 into open-component-model:main Oct 20, 2025
19 checks passed
morri-son pushed a commit to morri-son/open-component-model that referenced this pull request Oct 23, 2025
…component-model#1058)

#### What this PR does / why we need it:

- Introduced `Containerfile` to build scratch-based multi-arch container
images for the CLI.
- Added `build/multiarch/image` task to generate OCI-compatible
multi-arch container images.
- Adjusted `Taskfile.yml` to support multi-arch builds, leveraging
Docker Buildx.
- Improved task dependencies to ensure dependencies are downloaded
before builds.
- Modified resource identity names to reflect new multi-arch CLI
structure.

#### Why:

This enables the CLI to be distributed as platform-compatible container
images, improving accessibility across diverse environments. The
capability aligns with modern multi-arch support best practices.

requirement as prep for
open-component-model#1056

Signed-off-by: Jakob Möller <jakob.moeller@sap.com>
Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component/github-actions Changes on GitHub Actions or within `.github/` directory kind/feature new feature, enhancement, improvement, extension size/s Small

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants