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

Support all skopeo image prefixes for tern report -i #1247

Open
mtalexan opened this issue Jan 31, 2024 · 0 comments
Open

Support all skopeo image prefixes for tern report -i #1247

mtalexan opened this issue Jan 31, 2024 · 0 comments

Comments

@mtalexan
Copy link

Describe the Feature

Add support for all of the recognized skopeo image prefixes: i.e. oci-archive:, docker-archive:, containers-storage: (podman image cache), dirs:, etc.

Use Cases

  • I want to analyze a pre-built docker-archive
  • I want to analyze a pre-built oci-archive
  • I want to analyze a pre-built image in the the podman image cache
  • I want to analyze a pre-built image stored in dirs format
  • ...

Implementation Changes

The code currently seems to do pre-parsing of the -i/--image argument to look for a list of known prefixes and conditionally add the remote registry prefix docker:// if none are found. The actual command has skopeo do the format conversion into the desired dirs format that will be used for analysis.
This requires tern to duplicate the list of format prefixes skopeo supports, which isn't required by skopeo itself.

Two approaches to avoiding duplicating but supporting all the format-prefixes exist:

  1. Rely on skopeo's default that uses docker:// if no format prefix is specified.
  2. Look for two : vs one in what was specified.

Relying on the default has some possible caveats but is by far the easiest and likely best.

Parsing for two : vs one works if the version tag is required (instead of defaulting to :latest that's extremely bad practice anyway), and allows any arbitrary format prefix to optionally exist.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant