-
Notifications
You must be signed in to change notification settings - Fork 73
Description
The purpose of this issue is to track the work related to support multi-architecture image in CNB ecosystem, it is a complex project and we will try to divide it in phases. in each phase we will try to provide something valuable for the community and get feedback.
Phase 1
We started with a project developed during the LFX 2023 term, the goal for this phase is to release a set of commands for handling Image Index on pack.
Update May 2024
All the required PR were merged! we are expecting the feature to be included on pack 0.34.0
Update April 2024
Unfortunately we haven't merged the PR developed during the LFX 2023 because we were missing some test coverage, we are working on adding some tests an polish the code a little bit and the expectation is to include these features on pack 0.34.0 or 0.35.0, once this code is merged into main, we will keep working on Phase 2
RFC
Pack
- Add command
pack manifest createto create a manifest list pack#1678 - Add command
pack manifest annotateto update information on manifest list pack#1718 - Add command
pack manifest addto add an image to a manifest list pack#1719 - Add command
pack manifest pushto push an manifest list to a remote registry pack#1720 - Add command
pack manifest removeto remove a manifest list pack#1721 - Add command
pack manifest inspectto display a manifest list pack#1722 - It would be nice to support easily creating a manifest list packages and builders pack#1460
- Released in pack version
0.31.0, estimate:0.34.0
Imgutil
Documentation:
Phase 2
After implementing the primitives to handle a Image Index, we will focus on solving the requirement of packaging builders and buildpacks for different os/arch
The focus of this phase will be:
pack buildpack packagemulti-arch supportpack builder createmulti-arch support
Update May 2024
We decided to move a little bit our 0.34.0 release date but include this feature in this version!
Update April 2024
This phase requires the code from phase 1 to be available, but during KubeCon EU 2024 we presented a demo with a PoC implementation of the RFC.
RFC
Pack
- Provide a way to specify desired platform when creating packages and builders pack#1459
- Add a new
--platformor--targetflag topack buildcommand to avoid breaking M1 workflow users after multi-platform is released pack#2154 - Released in pack version estimated
0.34.0
Documentation:
- Add documentation for creating a multi-platform
buildpack packagedocs#708 - Add documentation for creating multi-platform builders docs#709
Phase 3
In this phase, we assume the existence of Builders and Buildpacks addressable by Image Index
We want to focus on solving the problem to make pack build and output applications images for different os/arch.
pack buildmulti-arch support
Update March 2024
We started working on a LFX mentorship to develop a proof of concept to run
pack buildusing buildkit behind de scenes
RFC
- TODO - create an RFC to discuss this option
Pack
Documentation:
Maintainers: when closing this issue as completed, submit a PR to update the Status of the RFC to Implemented.