Closed sambhav closed 1 year ago
cc: @imjasonh @buildpacks/implementation-maintainers @buildpacks/platform-maintainers
Assigning this issue to myself for now.
FYI: @jjbustamante is currently working on a draft of this here: https://hackmd.io/@OYhPqn4pRJ6ixTmFM4vY3w/HkSPjthht
https://github.com/buildpacks/rfcs/pull/203 addresses the first half of this problem, but we will need another RFC at a later date if we want to fully do away with the daemon.
As we integrate further into the cloud native ecosystem, with features like attached SBOMs, cosign etc. daemon is proving to be harder to support. Daemon support has also proven to be hard to support during our BuildKit poc https://github.com/buildpacks/pack/pull/1314 and https://github.com/EricHripko/cnbp
which requires us to reimplement exporter in order to use it with BuildKit. All of these things would be easier if we supported oci image layout instead. GGCR, the core image manipulation library behind lifecycle, already supports loading and saving to oci layout format. Tools like podman support oci layout natively as well.
Given all of the points above, supporting oci layout in favor of daemon seems to make a lot of sense.
We should write out an RFC detailing how this would work while preserving backwards compatibility for tools like pack.