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

Fixups for lifecycle 0.17.0 #1057

Closed
8 of 10 tasks
natalieparellano opened this issue Mar 31, 2023 · 2 comments · Fixed by #1109 or #1108
Closed
8 of 10 tasks

Fixups for lifecycle 0.17.0 #1057

natalieparellano opened this issue Mar 31, 2023 · 2 comments · Fixed by #1109 or #1108
Assignees
Labels
status/ready type/enhancement New feature or request

Comments

@natalieparellano
Copy link
Member

natalieparellano commented Mar 31, 2023

In reviewing the work that has been done already for the next set of APIs, some gaps were identified between the desired implementation and the actual implementation. Probably more gaps will be identified in working through the pack implementation. This issue is meant to be a catch-all issue but each gap is likely small and could be considered a "good first issue".

TODO:

  • More sophisticated error checking when we fail to get a layer from a sparse image (see FIXME in exporter.go)
  • Write both stack and runImage in the metadata label for backwards compat
  • Extensions should expose target data & the lifecycle should validate it (just like buildpacks)
  • analyzer prints out Ignoring image "previous-image-name" because it was corrupt when the previous image is just missing
  • ...more to add here

In flight:

Done:

  • Detector: if the run image based is switched by an image extension we should verify that the new base exists in run.toml (need to verify that run.toml path is an input to the detector, and if not, update the spec PR) (we made this a warning instead)
  • Support for OCI layout (there were some issues using imgutil's sparse package, shouldn't be a huge change but needs time to work through) (making a separate issue for this)
@joe-kimmel-vmw
Copy link
Contributor

Should extensions expose and/or the lifecycle validate target data for extensions?

It seems to me like something is warranted here -- e.g. if i'm writing an extension that uses a package manager like apt, yum, apk, nix, etc., then I would want that extension to only run on the appropriate distribution of linux and I might even be interested in writing several extensions in order to support multiple distributions or package managers. But maybe that's a rare use-case?

@natalieparellano
Copy link
Member Author

Will be closed by #1108 and #1109

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment