buildpacks / imgutil

Helpful utilities for working with images
Apache License 2.0
24 stars 41 forks source link

imgutil images should be v1.Images #207

Closed natalieparellano closed 7 months ago

natalieparellano commented 1 year ago

Currently, a layout.Image implements the v1.Image interface (because the underlying "base" image is embedded). With some small changes, remote.Image could follow this pattern. local.Image is trickier because of the daemon, but with some work we could assemble enough information to return a v1.ConfigFile, erroring if a manifest is requested. We'll need to be careful to distinguish what is the "saved" image vs the "working image" (e.g., after AddLayer is called the layer is added to the working image but not the image that's saved in the disk/registry/daemon) but if we do it right we can remove a bunch of duplication across the layout/remote/local packages and make the interface more intuitive to work with.

natalieparellano commented 1 year ago

This would be a somewhat large effort but I'm marking it as "good first issue" as it could be a good learning experience.

sagnik3788 commented 8 months ago

@natalieparellano may I give it a try? It would be helpful for me if you could share some insights about this issue. Thank you

natalieparellano commented 8 months ago

@sagnik3788 aye, I actually took this up before the winter break and it turned out to be VERY involved. I will probably put a PR up for it soon (I should probably have assigned myself the issue before) - when that is up I would appreciate any help in reviewing it, which would also be a great help :)