Skip to content

Support OCI layouts with application/vnd.oci.image.manifest.v1+json media type#2234

Merged
natalieparellano merged 1 commit intobuildpacks:mainfrom
sap-contributions:support-oci-mediatype
Jul 29, 2024
Merged

Support OCI layouts with application/vnd.oci.image.manifest.v1+json media type#2234
natalieparellano merged 1 commit intobuildpacks:mainfrom
sap-contributions:support-oci-mediatype

Conversation

@pbusko
Copy link
Copy Markdown
Contributor

@pbusko pbusko commented Jul 24, 2024

Summary

When specifying buildpack with file:// location, support OCI layouts with application/vnd.oci.image.manifest.v1+json media type.

Output

Before

pack fails to process OCI layouts created by skopeo or crane:

$ skopeo --override-os linux copy docker://gcr.io/paketo-buildpacks/java:latest oci:java-buildpack
Getting image source signatures
Copying blob 415893308841 done   | 
Copying blob 6b2482ff760c done   | 
Copying blob b4c430afd059 done   | 
Copying blob ac97cd8fef83 done   | 
Copying blob e8e4703a5455 done   | 
Copying blob 9ee3c01b2c74 done   | 
Copying blob 5f2bdaa43054 done   | 
Copying blob 2d1dd67d74bd done   | 
Copying blob dc758e03975a done   | 
Copying blob 881fd6da3e87 done   | 
Copying blob 4067c716c8b4 done   | 
Copying blob 51d93d6093cb done   | 
Copying blob 3625f436d8ff done   | 
Copying blob 42fece303136 done   | 
Copying blob 9c92f41877d9 done   | 
Copying blob 7c376ce3369b done   | 
Copying blob 8f600e6d4576 done   | 
Copying blob 3e5bb33c84b6 done   | 
Copying blob 5d39e759bb7b done   | 
Copying blob 23fae3d0a80d done   | 
Copying blob d30b920f16aa done   | 
Copying blob db465c0a7a1c done   | 
Copying blob 43acf3b30dc7 done   | 
Copying blob 2b6c19543f82 done   | 
Copying blob 7db836aa4d59 done   | 
Copying blob c88ed97c289f done   | 
Copying blob 0e576d41fbcf done   | 
Copying config 4792634aab done   | 
Writing manifest to image destination

$ pack build --trust-builder --builder paketobuildpacks/builder-jammy-base --buildpack file://java-buildpack -p ./acceptance/testdata/mock_app test                                    1
Warning: No schema version declared in project.toml, defaulting to schema version 0.1
latest: Pulling from paketobuildpacks/builder-jammy-base
Digest: sha256:f1bddc8c2ef63ee7f36ff0ededd8421a84df1ebdcce94c8b067372a2fd0b95a4
Status: Image is up to date for paketobuildpacks/builder-jammy-base:latest
latest: Pulling from paketobuildpacks/run-jammy-base
Digest: sha256:dc484da5cebe096517820aebd283691ecc33e82d0804f64ee659691a2be82ab0
Status: Image is up to date for paketobuildpacks/run-jammy-base:latest
ERROR: failed to build: downloading buildpack: extracting from file://java-buildpack: extracting buildpacks: unable to find manifest

After

$ skopeo --override-os linux copy docker://gcr.io/paketo-buildpacks/java:latest oci:java-buildpack
Getting image source signatures
Copying blob 415893308841 done   | 
Copying blob 6b2482ff760c done   | 
Copying blob b4c430afd059 done   | 
Copying blob ac97cd8fef83 done   | 
Copying blob e8e4703a5455 done   | 
Copying blob 9ee3c01b2c74 done   | 
Copying blob 5f2bdaa43054 done   | 
Copying blob 2d1dd67d74bd done   | 
Copying blob dc758e03975a done   | 
Copying blob 881fd6da3e87 done   | 
Copying blob 4067c716c8b4 done   | 
Copying blob 51d93d6093cb done   | 
Copying blob 3625f436d8ff done   | 
Copying blob 42fece303136 done   | 
Copying blob 9c92f41877d9 done   | 
Copying blob 7c376ce3369b done   | 
Copying blob 8f600e6d4576 done   | 
Copying blob 3e5bb33c84b6 done   | 
Copying blob 5d39e759bb7b done   | 
Copying blob 23fae3d0a80d done   | 
Copying blob d30b920f16aa done   | 
Copying blob db465c0a7a1c done   | 
Copying blob 43acf3b30dc7 done   | 
Copying blob 2b6c19543f82 done   | 
Copying blob 7db836aa4d59 done   | 
Copying blob c88ed97c289f done   | 
Copying blob 0e576d41fbcf done   | 
Copying config 4792634aab done   | 
Writing manifest to image destination

$ ./out/pack build --trust-builder --builder paketobuildpacks/builder-jammy-base --buildpack file://java-buildpack -p ./acceptance/testdata/mock_app test                              1
Warning: No schema version declared in project.toml, defaulting to schema version 0.1
latest: Pulling from paketobuildpacks/builder-jammy-base
Digest: sha256:f1bddc8c2ef63ee7f36ff0ededd8421a84df1ebdcce94c8b067372a2fd0b95a4
Status: Image is up to date for paketobuildpacks/builder-jammy-base:latest
latest: Pulling from paketobuildpacks/run-jammy-base
Digest: sha256:dc484da5cebe096517820aebd283691ecc33e82d0804f64ee659691a2be82ab0
Status: Image is up to date for paketobuildpacks/run-jammy-base:latest
Warning: Builder is trusted but additional modules were added; using the untrusted (5 phases) build flow
0.20.0: Pulling from buildpacksio/lifecycle
Digest: sha256:ba1d771ec095df94eb75a667a2fe4178cf8d6f05cde6430c89c7168cd04fcfd3
Status: Image is up to date for buildpacksio/lifecycle:0.20.0
===> ANALYZING
[analyzer] Image with name "test" not found

<trimmed>

Documentation

  • Should this change be documented?
    • Yes, see #___
    • No

Related

Resolves #___

@pbusko pbusko requested review from a team as code owners July 24, 2024 10:02
@github-actions github-actions bot added the type/enhancement Issue that requests a new feature or improvement. label Jul 24, 2024
@github-actions github-actions bot added this to the 0.36.0 milestone Jul 24, 2024
@pbusko pbusko force-pushed the support-oci-mediatype branch from b55cf44 to 87b37c6 Compare July 24, 2024 10:03
@pbusko pbusko force-pushed the support-oci-mediatype branch from 87b37c6 to 0754b56 Compare July 26, 2024 07:11
@natalieparellano natalieparellano modified the milestones: 0.36.0, 0.35.1 Jul 26, 2024
@c0d1ngm0nk3y
Copy link
Copy Markdown
Contributor

@natalieparellano Could you have a look at the failing test? It "only" fails for windows-lcow and doesn't look related. Maybe you have a hint!?

@natalieparellano
Copy link
Copy Markdown
Member

It "only" fails for windows-lcow and doesn't look related.

This is a known flake 😞 I'll submit an issue for it, and hopefully some good samaritan will fix it 🤞🏼

@natalieparellano natalieparellano merged commit a651c5d into buildpacks:main Jul 29, 2024
@pbusko pbusko deleted the support-oci-mediatype branch October 29, 2024 07:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type/enhancement Issue that requests a new feature or improvement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants