diff --git a/attestation/layout.go b/attestation/layout.go index fe55a49..b68ffdf 100644 --- a/attestation/layout.go +++ b/attestation/layout.go @@ -103,7 +103,7 @@ func manifestFromOCILayout(path string, platform *v1.Platform) (*Manifest, error // try the containerd annotation if the org.opencontainers.image.ref.name is not a full name subjectName = idxDescriptor.Annotations[containerd.AnnotationImageName] if _, err := reference.ParseNamed(subjectName); err != nil { - return nil, fmt.Errorf("failed to parse subject name from annotations") + return nil, fmt.Errorf("failed to find subject name in annotations") } } diff --git a/attestation/layout_test.go b/attestation/layout_test.go index 791762e..3aaaf9f 100644 --- a/attestation/layout_test.go +++ b/attestation/layout_test.go @@ -76,12 +76,12 @@ func TestSubjectNameAnnotations(t *testing.T) { }{ {name: "oci annotation", ociLayoutPath: test.UnsignedTestImage("..")}, {name: "containerd annotation", ociLayoutPath: filepath.Join("..", "test", "testdata", "containerd-subject-layout")}, - {name: "missing subject name", ociLayoutPath: filepath.Join("..", "test", "testdata", "missing-subject-layout"), errorStr: "failed to parse subject name from annotations"}, + {name: "missing subject name", ociLayoutPath: filepath.Join("..", "test", "testdata", "missing-subject-layout"), errorStr: "failed to find subject name in annotations"}, } for _, tc := range testCases { t.Run(tc.name, func(t *testing.T) { - spec, err := oci.ParseImageSpec(oci.LocalPrefix + tc.ociLayoutPath) + spec, err := oci.ParseImageSpec(oci.LocalPrefix+tc.ociLayoutPath, oci.WithPlatform("linux/arm64")) require.NoError(t, err) _, err = policy.CreateImageDetailsResolver(spec) if tc.errorStr != "" { diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/0f2ee9a338149a5a1435a7383582e5ef981b8a6bb7415d07d8d70c90d8cfd326 b/test/testdata/containerd-subject-layout/blobs/sha256/0f2ee9a338149a5a1435a7383582e5ef981b8a6bb7415d07d8d70c90d8cfd326 deleted file mode 100644 index 38efdce..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/0f2ee9a338149a5a1435a7383582e5ef981b8a6bb7415d07d8d70c90d8cfd326 +++ /dev/null @@ -1,50 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.index.v1+json", - "manifests": [ - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "size": 476, - "platform": { - "architecture": "amd64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "size": 476, - "platform": { - "architecture": "arm64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:aeca14119e3242c51633a899438518217417e01414d18189a3cf71c07f2a02c3", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:6658b8ba1e1221a6288bf50cd7813f814e2baad70141a3e315b7c3476b0f476f", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/1c70b3e7c3a57801501ec127aa6c918c390c373294ec4fc48f2c6fe703fcc6fe b/test/testdata/containerd-subject-layout/blobs/sha256/1c70b3e7c3a57801501ec127aa6c918c390c373294ec4fc48f2c6fe703fcc6fe deleted file mode 100644 index d2651b3..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/1c70b3e7c3a57801501ec127aa6c918c390c373294ec4fc48f2c6fe703fcc6fe +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"amd64","config":{"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"WorkingDir":"/","OnBuild":null},"created":"2024-03-08T16:42:30.065465358Z","history":[{"created":"2024-03-08T16:42:30.065465358Z","created_by":"COPY /tmp/hello.txt / # buildkit","comment":"buildkit.dockerfile.v0"}],"os":"linux","rootfs":{"type":"layers","diff_ids":["sha256:b842af8c2f1451ffc802ae4139819eaea8441223357642548d8a25ab5c52cff7"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/26da286bbc886aa14d191808db8fcbbd5d8ec68cf0047f954133e76d8e73d71c b/test/testdata/containerd-subject-layout/blobs/sha256/26da286bbc886aa14d191808db8fcbbd5d8ec68cf0047f954133e76d8e73d71c deleted file mode 100644 index 596880e..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/26da286bbc886aa14d191808db8fcbbd5d8ec68cf0047f954133e76d8e73d71c +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:2953164d6cc6c8bb8271f78f9fb2003318350a8026ea082b63a249cfa60918a3", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/2953164d6cc6c8bb8271f78f9fb2003318350a8026ea082b63a249cfa60918a3 b/test/testdata/containerd-subject-layout/blobs/sha256/2953164d6cc6c8bb8271f78f9fb2003318350a8026ea082b63a249cfa60918a3 deleted file mode 100644 index 5d63600..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/2953164d6cc6c8bb8271f78f9fb2003318350a8026ea082b63a249cfa60918a3 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850","sha256:c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/2a9b671f3fc9bc5ca967b616d96cbbdb6493e32d4f6abd8f7a191990e8efb289 b/test/testdata/containerd-subject-layout/blobs/sha256/2a9b671f3fc9bc5ca967b616d96cbbdb6493e32d4f6abd8f7a191990e8efb289 deleted file mode 100644 index 65cb27a..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/2a9b671f3fc9bc5ca967b616d96cbbdb6493e32d4f6abd8f7a191990e8efb289 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850","sha256:8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706 b/test/testdata/containerd-subject-layout/blobs/sha256/371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706 deleted file mode 100644 index 72c55db..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Farm64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:9ef7beaea047309185047764e3aa0d4f29979dacc88e573daa9d0f82050b4ab1":"step0","sha256:c3529d59c164c4bc6fd97482020a2147fa20b991d48916315d80504673c871bf":"step2","sha256:c99cf7ecacd148d653fcacb51c2eadf68504a4d32c870f6de26706635b08df28":"step1","sha256:f9acdec24273860ab573e08a5e75a6cb8c4baef6602571df599b3d9b745b7b0f":"step3"}},"metadata":{"buildInvocationID":"jckf4dzdrb4i99ygsshezjtsq","buildStartedOn":"2024-04-29T10:23:45.125886079Z","buildFinishedOn":"2024-04-29T10:23:46.287890106Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"ba33451b352942e366f12662f2c3a0c8ac54d696","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:4efcb3fab1b18d9764b436e8f9430f56dd8fee0f811ae064f8ec051e7ac5dec4":"step0","sha256:5c08b537da7192a6909348620c571138948f7874016718afc6d6d4e1569453d3":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:bca4290a96390d7a6fc6f2f9929370d06f8dfcacba591c76e3d5c5044e7f420c","size":3347715}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/3883faf6acc3cae029364ed17ec2ce917fc9a500aab72f813d26fed8404e7162 b/test/testdata/containerd-subject-layout/blobs/sha256/3883faf6acc3cae029364ed17ec2ce917fc9a500aab72f813d26fed8404e7162 deleted file mode 100644 index 162856c..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/3883faf6acc3cae029364ed17ec2ce917fc9a500aab72f813d26fed8404e7162 +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:2a9b671f3fc9bc5ca967b616d96cbbdb6493e32d4f6abd8f7a191990e8efb289", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/3e64f9d2888ed9211fbf2c6b5853ea559248fdb4ab711bcea34b65c62f0e026b b/test/testdata/containerd-subject-layout/blobs/sha256/3e64f9d2888ed9211fbf2c6b5853ea559248fdb4ab711bcea34b65c62f0e026b deleted file mode 100644 index 71fba30..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/3e64f9d2888ed9211fbf2c6b5853ea559248fdb4ab711bcea34b65c62f0e026b +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850","sha256:8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/4e5988d06eee647cb901d4435830fbf13cf3ab1ae27ec91246b280514e6a7b33 b/test/testdata/containerd-subject-layout/blobs/sha256/4e5988d06eee647cb901d4435830fbf13cf3ab1ae27ec91246b280514e6a7b33 deleted file mode 100644 index d2e2697..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/4e5988d06eee647cb901d4435830fbf13cf3ab1ae27ec91246b280514e6a7b33 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850","sha256:c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/5049b0fd8de6fc8937065a0b26214e5a1e620e98488de6bac72c0284b1a5242f b/test/testdata/containerd-subject-layout/blobs/sha256/5049b0fd8de6fc8937065a0b26214e5a1e620e98488de6bac72c0284b1a5242f new file mode 100644 index 0000000..47def76 --- /dev/null +++ b/test/testdata/containerd-subject-layout/blobs/sha256/5049b0fd8de6fc8937065a0b26214e5a1e620e98488de6bac72c0284b1a5242f @@ -0,0 +1 @@ +{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224 b/test/testdata/containerd-subject-layout/blobs/sha256/5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224 deleted file mode 100644 index 2d1769e..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Farm64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:9ef7beaea047309185047764e3aa0d4f29979dacc88e573daa9d0f82050b4ab1":"step0","sha256:c3529d59c164c4bc6fd97482020a2147fa20b991d48916315d80504673c871bf":"step2","sha256:c99cf7ecacd148d653fcacb51c2eadf68504a4d32c870f6de26706635b08df28":"step1","sha256:f9acdec24273860ab573e08a5e75a6cb8c4baef6602571df599b3d9b745b7b0f":"step3"}},"metadata":{"buildInvocationID":"nkbtpuurp2ogre7j5hlfdrvma","buildStartedOn":"2024-04-26T14:24:49.386895737Z","buildFinishedOn":"2024-04-26T14:24:50.962885799Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"77b839051c1796c77a5383f1570585c7f3ff70ea","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:41e476230918469ca0be3275c43594cc0a909d01fdf0fe8b73f59c50d2c2d1b9":"step0","sha256:f1bd0b5d897e59fc7a5775b7082658676e06cc12674666e1713b56c38f7d1c0a":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:bca4290a96390d7a6fc6f2f9929370d06f8dfcacba591c76e3d5c5044e7f420c","size":3347715}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/6658b8ba1e1221a6288bf50cd7813f814e2baad70141a3e315b7c3476b0f476f b/test/testdata/containerd-subject-layout/blobs/sha256/6658b8ba1e1221a6288bf50cd7813f814e2baad70141a3e315b7c3476b0f476f deleted file mode 100644 index afaa051..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/6658b8ba1e1221a6288bf50cd7813f814e2baad70141a3e315b7c3476b0f476f +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:fed2c8841731e2cf1ceb53c49c6440fcd6d565a8658141914a8a07c127e00d7e", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/6c3da8eeaba64ce5acfcbaeb1f2c06af73879adba0fcb4743339c9a54b377635 b/test/testdata/containerd-subject-layout/blobs/sha256/6c3da8eeaba64ce5acfcbaeb1f2c06af73879adba0fcb4743339c9a54b377635 deleted file mode 100644 index 06473ef..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/6c3da8eeaba64ce5acfcbaeb1f2c06af73879adba0fcb4743339c9a54b377635 +++ /dev/null @@ -1,50 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.index.v1+json", - "manifests": [ - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "size": 476, - "platform": { - "architecture": "amd64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "size": 476, - "platform": { - "architecture": "arm64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:9638ca53d2795806cf51b7461575c51e4a626a091dc2842b35cac18c787ff80f", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:8049aa9ad3479085066b31d02b74310803129c3eb1e22d2e62279f8c72340b55", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e b/test/testdata/containerd-subject-layout/blobs/sha256/7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e deleted file mode 100644 index 1e9ebfd..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e +++ /dev/null @@ -1,16 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:d85d624a324422194b43cccd975b5752cf0acaedd668bb525fcd40c3587cc460", - "size": 453 - }, - "layers": [ - { - "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip", - "digest": "sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad", - "size": 116 - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/8049aa9ad3479085066b31d02b74310803129c3eb1e22d2e62279f8c72340b55 b/test/testdata/containerd-subject-layout/blobs/sha256/8049aa9ad3479085066b31d02b74310803129c3eb1e22d2e62279f8c72340b55 deleted file mode 100644 index 88ced07..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/8049aa9ad3479085066b31d02b74310803129c3eb1e22d2e62279f8c72340b55 +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:f634c4c53b03bf8ff917b61165631fda0cfe691a383e7b333269a53bf9a79c34", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85", - "size": 3943, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532 b/test/testdata/containerd-subject-layout/blobs/sha256/8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532 deleted file mode 100644 index 6234c35..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Famd64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:46a51bd96c5f07c63901007f7fc78b5cbc14d05c2f2b1ec8e206d0f72a8d077a":"step2","sha256:a99a5b91a7644662f368e8bc1c6ca7fad2ea98ce130fd2d2ca648a42e8f9cca9":"step1","sha256:db2976cd1ada912761fd8495e52cdb659606c87e1b2d529926b859b4b7df140c":"step3","sha256:faa2314417184f0f81e21fe46ef9c04da17b8fc0d629ac5f017dd02a596697bb":"step0"}},"metadata":{"buildInvocationID":"4sdluz1285kjezq148xqo3fcr","buildStartedOn":"2024-04-29T10:20:54.451240475Z","buildFinishedOn":"2024-04-29T10:20:56.48203241Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"ba33451b352942e366f12662f2c3a0c8ac54d696","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:8c30f94c18660dd82452640583d991e007708a353546172a422418107a360f48":"step1","sha256:e1d9e97f2a2942f94811bc5453568509de77e86328036ef73562ba0b56137db6":"step0"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:4abcf20661432fb2d719aaf90656f55c287f8ca915dc1c92ec14ff61e67fbaf8","size":3408729}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375 b/test/testdata/containerd-subject-layout/blobs/sha256/8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375 deleted file mode 100644 index a5dd69f..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Famd64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:46a51bd96c5f07c63901007f7fc78b5cbc14d05c2f2b1ec8e206d0f72a8d077a":"step2","sha256:a99a5b91a7644662f368e8bc1c6ca7fad2ea98ce130fd2d2ca648a42e8f9cca9":"step1","sha256:db2976cd1ada912761fd8495e52cdb659606c87e1b2d529926b859b4b7df140c":"step3","sha256:faa2314417184f0f81e21fe46ef9c04da17b8fc0d629ac5f017dd02a596697bb":"step0"}},"metadata":{"buildInvocationID":"nkbtpuurp2ogre7j5hlfdrvma","buildStartedOn":"2024-04-26T14:24:49.386895737Z","buildFinishedOn":"2024-04-26T14:24:50.962885799Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"77b839051c1796c77a5383f1570585c7f3ff70ea","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:41e476230918469ca0be3275c43594cc0a909d01fdf0fe8b73f59c50d2c2d1b9":"step0","sha256:f1bd0b5d897e59fc7a5775b7082658676e06cc12674666e1713b56c38f7d1c0a":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:4abcf20661432fb2d719aaf90656f55c287f8ca915dc1c92ec14ff61e67fbaf8","size":3408729}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776 b/test/testdata/containerd-subject-layout/blobs/sha256/92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776 deleted file mode 100644 index ed7f598..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Farm64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:9ef7beaea047309185047764e3aa0d4f29979dacc88e573daa9d0f82050b4ab1":"step0","sha256:c3529d59c164c4bc6fd97482020a2147fa20b991d48916315d80504673c871bf":"step2","sha256:c99cf7ecacd148d653fcacb51c2eadf68504a4d32c870f6de26706635b08df28":"step1","sha256:f9acdec24273860ab573e08a5e75a6cb8c4baef6602571df599b3d9b745b7b0f":"step3"}},"metadata":{"buildInvocationID":"oufyhd0aciw714m1i5y6l09xz","buildStartedOn":"2024-04-19T16:25:04.209111656Z","buildFinishedOn":"2024-04-19T16:25:05.831440763Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"5914df2930aba701d6ddc3ba9272a5732dfe8ab4","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:18b166b594df5270bf6a4aa8dcd0a96b3635d0a23106d819620cbab2f3f5cf22":"step0","sha256:31d6cbba3f437cfb5933e60d5f4d2be69109c2fae9ed5ffe04da16931a459cca":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:bca4290a96390d7a6fc6f2f9929370d06f8dfcacba591c76e3d5c5044e7f420c","size":3347715}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/9638ca53d2795806cf51b7461575c51e4a626a091dc2842b35cac18c787ff80f b/test/testdata/containerd-subject-layout/blobs/sha256/9638ca53d2795806cf51b7461575c51e4a626a091dc2842b35cac18c787ff80f deleted file mode 100644 index 09d726b..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/9638ca53d2795806cf51b7461575c51e4a626a091dc2842b35cac18c787ff80f +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:3e64f9d2888ed9211fbf2c6b5853ea559248fdb4ab711bcea34b65c62f0e026b", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532", - "size": 3943, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad b/test/testdata/containerd-subject-layout/blobs/sha256/97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad deleted file mode 100644 index 48e62f9..0000000 Binary files a/test/testdata/containerd-subject-layout/blobs/sha256/97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad and /dev/null differ diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/98e06f6b48edd74e21e8504c5538aec56315874a6db860fbf6874cd7a830e3c8 b/test/testdata/containerd-subject-layout/blobs/sha256/98e06f6b48edd74e21e8504c5538aec56315874a6db860fbf6874cd7a830e3c8 deleted file mode 100644 index 658ff6e..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/98e06f6b48edd74e21e8504c5538aec56315874a6db860fbf6874cd7a830e3c8 +++ /dev/null @@ -1,50 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.index.v1+json", - "manifests": [ - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "size": 476, - "platform": { - "architecture": "amd64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "size": 476, - "platform": { - "architecture": "arm64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:3883faf6acc3cae029364ed17ec2ce917fc9a500aab72f813d26fed8404e7162", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:f2b95cecafef9c22a5d059fac8f20e3645a45370e52abf9581dd4eedd152fce0", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85 b/test/testdata/containerd-subject-layout/blobs/sha256/9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85 deleted file mode 100644 index 74dd618..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Farm64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:9ef7beaea047309185047764e3aa0d4f29979dacc88e573daa9d0f82050b4ab1":"step0","sha256:c3529d59c164c4bc6fd97482020a2147fa20b991d48916315d80504673c871bf":"step2","sha256:c99cf7ecacd148d653fcacb51c2eadf68504a4d32c870f6de26706635b08df28":"step1","sha256:f9acdec24273860ab573e08a5e75a6cb8c4baef6602571df599b3d9b745b7b0f":"step3"}},"metadata":{"buildInvocationID":"4sdluz1285kjezq148xqo3fcr","buildStartedOn":"2024-04-29T10:20:54.451240475Z","buildFinishedOn":"2024-04-29T10:20:56.48203241Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"ba33451b352942e366f12662f2c3a0c8ac54d696","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:8c30f94c18660dd82452640583d991e007708a353546172a422418107a360f48":"step1","sha256:e1d9e97f2a2942f94811bc5453568509de77e86328036ef73562ba0b56137db6":"step0"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:bca4290a96390d7a6fc6f2f9929370d06f8dfcacba591c76e3d5c5044e7f420c","size":3347715}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/a051db630f91aae4fc649b455724f2c5c60ae0c508e87d88937e862524f488b5 b/test/testdata/containerd-subject-layout/blobs/sha256/a051db630f91aae4fc649b455724f2c5c60ae0c508e87d88937e862524f488b5 new file mode 100644 index 0000000..781c250 --- /dev/null +++ b/test/testdata/containerd-subject-layout/blobs/sha256/a051db630f91aae4fc649b455724f2c5c60ae0c508e87d88937e862524f488b5 @@ -0,0 +1,19 @@ +{ + "schemaVersion": 2, + "mediaType": "application/vnd.oci.image.manifest.v1+json", + "config": { + "mediaType": "application/vnd.oci.image.config.v1+json", + "digest": "sha256:5049b0fd8de6fc8937065a0b26214e5a1e620e98488de6bac72c0284b1a5242f", + "size": 167 + }, + "layers": [ + { + "mediaType": "application/vnd.in-toto+json", + "digest": "sha256:e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064", + "size": 917, + "annotations": { + "in-toto.io/predicate-type": "https://spdx.dev/Document" + } + } + ] +} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/a4cf4b24f3fa8cd49a59e8fd4ef5ce285f0aa928d2651f7ec3d5a78276249dec b/test/testdata/containerd-subject-layout/blobs/sha256/a4cf4b24f3fa8cd49a59e8fd4ef5ce285f0aa928d2651f7ec3d5a78276249dec deleted file mode 100644 index be03cec..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/a4cf4b24f3fa8cd49a59e8fd4ef5ce285f0aa928d2651f7ec3d5a78276249dec +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e","sha256:371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850 b/test/testdata/containerd-subject-layout/blobs/sha256/a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850 deleted file mode 100644 index f765564..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://spdx.dev/Document","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"sbom","documentNamespace":"https://anchore.com/syft/dir/sbom-6d900ae6-587d-4695-9c01-511801a85b65","creationInfo":{"licenseListVersion":"3.23","creators":["Organization: Anchore, Inc","Tool: syft-v0.105.0","Tool: buildkit-v0.12.4"],"created":"2024-03-08T16:42:30Z"},"packages":[{"name":"sbom","SPDXID":"SPDXRef-DocumentRoot-Directory-sbom","supplier":"NOASSERTION","downloadLocation":"NOASSERTION","filesAnalyzed":false,"primaryPackagePurpose":"FILE"}],"relationships":[{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-DocumentRoot-Directory-sbom","relationshipType":"DESCRIBES"}]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/aeca14119e3242c51633a899438518217417e01414d18189a3cf71c07f2a02c3 b/test/testdata/containerd-subject-layout/blobs/sha256/aeca14119e3242c51633a899438518217417e01414d18189a3cf71c07f2a02c3 deleted file mode 100644 index 4ba3cd7..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/aeca14119e3242c51633a899438518217417e01414d18189a3cf71c07f2a02c3 +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:4e5988d06eee647cb901d4435830fbf13cf3ab1ae27ec91246b280514e6a7b33", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/bba371330d0124ce45f669c5d73092a3f2078ed1491e2bc52189a82e279074a1 b/test/testdata/containerd-subject-layout/blobs/sha256/bba371330d0124ce45f669c5d73092a3f2078ed1491e2bc52189a82e279074a1 new file mode 100644 index 0000000..721f68d --- /dev/null +++ b/test/testdata/containerd-subject-layout/blobs/sha256/bba371330d0124ce45f669c5d73092a3f2078ed1491e2bc52189a82e279074a1 @@ -0,0 +1,28 @@ +{ + "schemaVersion": 2, + "mediaType": "application/vnd.oci.image.index.v1+json", + "manifests": [ + { + "mediaType": "application/vnd.oci.image.manifest.v1+json", + "digest": "sha256:e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec", + "size": 288, + "platform": { + "architecture": "arm64", + "os": "linux" + } + }, + { + "mediaType": "application/vnd.oci.image.manifest.v1+json", + "digest": "sha256:a051db630f91aae4fc649b455724f2c5c60ae0c508e87d88937e862524f488b5", + "size": 558, + "annotations": { + "vnd.docker.reference.digest": "sha256:e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec", + "vnd.docker.reference.type": "attestation-manifest" + }, + "platform": { + "architecture": "unknown", + "os": "unknown" + } + } + ] +} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d b/test/testdata/containerd-subject-layout/blobs/sha256/c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d deleted file mode 100644 index cca62ed..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Famd64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:46a51bd96c5f07c63901007f7fc78b5cbc14d05c2f2b1ec8e206d0f72a8d077a":"step2","sha256:a99a5b91a7644662f368e8bc1c6ca7fad2ea98ce130fd2d2ca648a42e8f9cca9":"step1","sha256:db2976cd1ada912761fd8495e52cdb659606c87e1b2d529926b859b4b7df140c":"step3","sha256:faa2314417184f0f81e21fe46ef9c04da17b8fc0d629ac5f017dd02a596697bb":"step0"}},"metadata":{"buildInvocationID":"oufyhd0aciw714m1i5y6l09xz","buildStartedOn":"2024-04-19T16:25:04.209111656Z","buildFinishedOn":"2024-04-19T16:25:05.831440763Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"5914df2930aba701d6ddc3ba9272a5732dfe8ab4","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:18b166b594df5270bf6a4aa8dcd0a96b3635d0a23106d819620cbab2f3f5cf22":"step0","sha256:31d6cbba3f437cfb5933e60d5f4d2be69109c2fae9ed5ffe04da16931a459cca":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:4abcf20661432fb2d719aaf90656f55c287f8ca915dc1c92ec14ff61e67fbaf8","size":3408729}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf b/test/testdata/containerd-subject-layout/blobs/sha256/c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf deleted file mode 100644 index 6d6f8bf..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Famd64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:46a51bd96c5f07c63901007f7fc78b5cbc14d05c2f2b1ec8e206d0f72a8d077a":"step2","sha256:a99a5b91a7644662f368e8bc1c6ca7fad2ea98ce130fd2d2ca648a42e8f9cca9":"step1","sha256:db2976cd1ada912761fd8495e52cdb659606c87e1b2d529926b859b4b7df140c":"step3","sha256:faa2314417184f0f81e21fe46ef9c04da17b8fc0d629ac5f017dd02a596697bb":"step0"}},"metadata":{"buildInvocationID":"jckf4dzdrb4i99ygsshezjtsq","buildStartedOn":"2024-04-29T10:23:45.125886079Z","buildFinishedOn":"2024-04-29T10:23:46.287890106Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"ba33451b352942e366f12662f2c3a0c8ac54d696","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:4efcb3fab1b18d9764b436e8f9430f56dd8fee0f811ae064f8ec051e7ac5dec4":"step0","sha256:5c08b537da7192a6909348620c571138948f7874016718afc6d6d4e1569453d3":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:4abcf20661432fb2d719aaf90656f55c287f8ca915dc1c92ec14ff61e67fbaf8","size":3408729}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/c9f436179969b60ec0bbd406b1340c501e59376a658b14b53c1828924c0ac668 b/test/testdata/containerd-subject-layout/blobs/sha256/c9f436179969b60ec0bbd406b1340c501e59376a658b14b53c1828924c0ac668 deleted file mode 100644 index 56780cc..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/c9f436179969b60ec0bbd406b1340c501e59376a658b14b53c1828924c0ac668 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e","sha256:5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/cbeaa84fb2fdfc8fd5e437555e94a323ac8acc69e68278d127cb4adf595f9d46 b/test/testdata/containerd-subject-layout/blobs/sha256/cbeaa84fb2fdfc8fd5e437555e94a323ac8acc69e68278d127cb4adf595f9d46 new file mode 100644 index 0000000..7024a7a --- /dev/null +++ b/test/testdata/containerd-subject-layout/blobs/sha256/cbeaa84fb2fdfc8fd5e437555e94a323ac8acc69e68278d127cb4adf595f9d46 @@ -0,0 +1 @@ +{"architecture":"arm64","config":{"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"WorkingDir":"/","ArgsEscaped":true},"created":null,"history":[{"created_by":"CMD []","comment":"buildkit.dockerfile.v0","empty_layer":true}],"os":"linux","rootfs":{"type":"layers","diff_ids":null}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/d85d624a324422194b43cccd975b5752cf0acaedd668bb525fcd40c3587cc460 b/test/testdata/containerd-subject-layout/blobs/sha256/d85d624a324422194b43cccd975b5752cf0acaedd668bb525fcd40c3587cc460 deleted file mode 100644 index e37f3ea..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/d85d624a324422194b43cccd975b5752cf0acaedd668bb525fcd40c3587cc460 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"arm64","config":{"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"WorkingDir":"/","OnBuild":null},"created":"2024-03-08T16:42:30.065465358Z","history":[{"created":"2024-03-08T16:42:30.065465358Z","created_by":"COPY /tmp/hello.txt / # buildkit","comment":"buildkit.dockerfile.v0"}],"os":"linux","rootfs":{"type":"layers","diff_ids":["sha256:b842af8c2f1451ffc802ae4139819eaea8441223357642548d8a25ab5c52cff7"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e b/test/testdata/containerd-subject-layout/blobs/sha256/da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e deleted file mode 100644 index c18e28f..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://spdx.dev/Document","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"sbom","documentNamespace":"https://anchore.com/syft/dir/sbom-6d900ae6-587d-4695-9c01-511801a85b65","creationInfo":{"licenseListVersion":"3.23","creators":["Organization: Anchore, Inc","Tool: syft-v0.105.0","Tool: buildkit-v0.12.4"],"created":"2024-03-08T16:42:30Z"},"packages":[{"name":"sbom","SPDXID":"SPDXRef-DocumentRoot-Directory-sbom","supplier":"NOASSERTION","downloadLocation":"NOASSERTION","filesAnalyzed":false,"primaryPackagePurpose":"FILE"}],"relationships":[{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-DocumentRoot-Directory-sbom","relationshipType":"DESCRIBES"}]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620 b/test/testdata/containerd-subject-layout/blobs/sha256/da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620 deleted file mode 100644 index e68961b..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620 +++ /dev/null @@ -1,16 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:1c70b3e7c3a57801501ec127aa6c918c390c373294ec4fc48f2c6fe703fcc6fe", - "size": 453 - }, - "layers": [ - { - "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip", - "digest": "sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad", - "size": 116 - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/db8f2a6e112ea6396f57d073269ecfac61e8dcdad3a4a643dcb577522492f898 b/test/testdata/containerd-subject-layout/blobs/sha256/db8f2a6e112ea6396f57d073269ecfac61e8dcdad3a4a643dcb577522492f898 deleted file mode 100644 index 2500f81..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/db8f2a6e112ea6396f57d073269ecfac61e8dcdad3a4a643dcb577522492f898 +++ /dev/null @@ -1,50 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.index.v1+json", - "manifests": [ - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "size": 476, - "platform": { - "architecture": "amd64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "size": 476, - "platform": { - "architecture": "arm64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:26da286bbc886aa14d191808db8fcbbd5d8ec68cf0047f954133e76d8e73d71c", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:e0a9b9404ac2691b9b1c9ef217f22bb1e106efd5ee791640411764e1cf39ea2c", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/e0a9b9404ac2691b9b1c9ef217f22bb1e106efd5ee791640411764e1cf39ea2c b/test/testdata/containerd-subject-layout/blobs/sha256/e0a9b9404ac2691b9b1c9ef217f22bb1e106efd5ee791640411764e1cf39ea2c deleted file mode 100644 index ac75840..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/e0a9b9404ac2691b9b1c9ef217f22bb1e106efd5ee791640411764e1cf39ea2c +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:a4cf4b24f3fa8cd49a59e8fd4ef5ce285f0aa928d2651f7ec3d5a78276249dec", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064 b/test/testdata/containerd-subject-layout/blobs/sha256/e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064 new file mode 100644 index 0000000..df67bf4 --- /dev/null +++ b/test/testdata/containerd-subject-layout/blobs/sha256/e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064 @@ -0,0 +1 @@ +{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://spdx.dev/Document","subject":[{"name":"pkg:docker/test@latest?platform=linux%2Farm64","digest":{"sha256":"e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec"}}],"predicate":{"SPDXID":"SPDXRef-DOCUMENT","creationInfo":{"created":"2024-09-19T20:28:48Z","creators":["Organization: Anchore, Inc","Tool: syft-v0.105.0"],"licenseListVersion":"3.23"},"dataLicense":"CC0-1.0","documentNamespace":"https://anchore.com/syft/dir/sbom-4d662591-02b0-4448-8cdc-c8b539bbe1a0","name":"sbom","packages":[{"SPDXID":"SPDXRef-DocumentRoot-Directory-sbom","downloadLocation":"NOASSERTION","filesAnalyzed":false,"name":"sbom","primaryPackagePurpose":"FILE","supplier":"NOASSERTION"}],"relationships":[{"relatedSpdxElement":"SPDXRef-DocumentRoot-Directory-sbom","relationshipType":"DESCRIBES","spdxElementId":"SPDXRef-DOCUMENT"}],"spdxVersion":"SPDX-2.3"}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec b/test/testdata/containerd-subject-layout/blobs/sha256/e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec new file mode 100644 index 0000000..00ebcd6 --- /dev/null +++ b/test/testdata/containerd-subject-layout/blobs/sha256/e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec @@ -0,0 +1,10 @@ +{ + "schemaVersion": 2, + "mediaType": "application/vnd.oci.image.manifest.v1+json", + "config": { + "mediaType": "application/vnd.oci.image.config.v1+json", + "digest": "sha256:cbeaa84fb2fdfc8fd5e437555e94a323ac8acc69e68278d127cb4adf595f9d46", + "size": 308 + }, + "layers": null +} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/f2b95cecafef9c22a5d059fac8f20e3645a45370e52abf9581dd4eedd152fce0 b/test/testdata/containerd-subject-layout/blobs/sha256/f2b95cecafef9c22a5d059fac8f20e3645a45370e52abf9581dd4eedd152fce0 deleted file mode 100644 index b55918a..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/f2b95cecafef9c22a5d059fac8f20e3645a45370e52abf9581dd4eedd152fce0 +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:c9f436179969b60ec0bbd406b1340c501e59376a658b14b53c1828924c0ac668", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/f634c4c53b03bf8ff917b61165631fda0cfe691a383e7b333269a53bf9a79c34 b/test/testdata/containerd-subject-layout/blobs/sha256/f634c4c53b03bf8ff917b61165631fda0cfe691a383e7b333269a53bf9a79c34 deleted file mode 100644 index 70ff6e9..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/f634c4c53b03bf8ff917b61165631fda0cfe691a383e7b333269a53bf9a79c34 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e","sha256:9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/blobs/sha256/fed2c8841731e2cf1ceb53c49c6440fcd6d565a8658141914a8a07c127e00d7e b/test/testdata/containerd-subject-layout/blobs/sha256/fed2c8841731e2cf1ceb53c49c6440fcd6d565a8658141914a8a07c127e00d7e deleted file mode 100644 index f04ad30..0000000 --- a/test/testdata/containerd-subject-layout/blobs/sha256/fed2c8841731e2cf1ceb53c49c6440fcd6d565a8658141914a8a07c127e00d7e +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e","sha256:92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776"]}} \ No newline at end of file diff --git a/test/testdata/containerd-subject-layout/index.json b/test/testdata/containerd-subject-layout/index.json index 7f59b51..3742c4d 100644 --- a/test/testdata/containerd-subject-layout/index.json +++ b/test/testdata/containerd-subject-layout/index.json @@ -1,10 +1,11 @@ { "schemaVersion": 2, + "mediaType": "application/vnd.oci.image.index.v1+json", "manifests": [ { "mediaType": "application/vnd.oci.image.index.v1+json", - "digest": "sha256:db8f2a6e112ea6396f57d073269ecfac61e8dcdad3a4a643dcb577522492f898", - "size": 1607, + "digest": "sha256:bba371330d0124ce45f669c5d73092a3f2078ed1491e2bc52189a82e279074a1", + "size": 855, "annotations": { "io.containerd.image.name": "docker.io/library/test-image:test", "org.opencontainers.image.ref.name": "test" diff --git a/test/testdata/missing-subject-layout/blobs/sha256/0f2ee9a338149a5a1435a7383582e5ef981b8a6bb7415d07d8d70c90d8cfd326 b/test/testdata/missing-subject-layout/blobs/sha256/0f2ee9a338149a5a1435a7383582e5ef981b8a6bb7415d07d8d70c90d8cfd326 deleted file mode 100644 index 38efdce..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/0f2ee9a338149a5a1435a7383582e5ef981b8a6bb7415d07d8d70c90d8cfd326 +++ /dev/null @@ -1,50 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.index.v1+json", - "manifests": [ - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "size": 476, - "platform": { - "architecture": "amd64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "size": 476, - "platform": { - "architecture": "arm64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:aeca14119e3242c51633a899438518217417e01414d18189a3cf71c07f2a02c3", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:6658b8ba1e1221a6288bf50cd7813f814e2baad70141a3e315b7c3476b0f476f", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/1c70b3e7c3a57801501ec127aa6c918c390c373294ec4fc48f2c6fe703fcc6fe b/test/testdata/missing-subject-layout/blobs/sha256/1c70b3e7c3a57801501ec127aa6c918c390c373294ec4fc48f2c6fe703fcc6fe deleted file mode 100644 index d2651b3..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/1c70b3e7c3a57801501ec127aa6c918c390c373294ec4fc48f2c6fe703fcc6fe +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"amd64","config":{"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"WorkingDir":"/","OnBuild":null},"created":"2024-03-08T16:42:30.065465358Z","history":[{"created":"2024-03-08T16:42:30.065465358Z","created_by":"COPY /tmp/hello.txt / # buildkit","comment":"buildkit.dockerfile.v0"}],"os":"linux","rootfs":{"type":"layers","diff_ids":["sha256:b842af8c2f1451ffc802ae4139819eaea8441223357642548d8a25ab5c52cff7"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/26da286bbc886aa14d191808db8fcbbd5d8ec68cf0047f954133e76d8e73d71c b/test/testdata/missing-subject-layout/blobs/sha256/26da286bbc886aa14d191808db8fcbbd5d8ec68cf0047f954133e76d8e73d71c deleted file mode 100644 index 596880e..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/26da286bbc886aa14d191808db8fcbbd5d8ec68cf0047f954133e76d8e73d71c +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:2953164d6cc6c8bb8271f78f9fb2003318350a8026ea082b63a249cfa60918a3", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/2953164d6cc6c8bb8271f78f9fb2003318350a8026ea082b63a249cfa60918a3 b/test/testdata/missing-subject-layout/blobs/sha256/2953164d6cc6c8bb8271f78f9fb2003318350a8026ea082b63a249cfa60918a3 deleted file mode 100644 index 5d63600..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/2953164d6cc6c8bb8271f78f9fb2003318350a8026ea082b63a249cfa60918a3 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850","sha256:c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/2a9b671f3fc9bc5ca967b616d96cbbdb6493e32d4f6abd8f7a191990e8efb289 b/test/testdata/missing-subject-layout/blobs/sha256/2a9b671f3fc9bc5ca967b616d96cbbdb6493e32d4f6abd8f7a191990e8efb289 deleted file mode 100644 index 65cb27a..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/2a9b671f3fc9bc5ca967b616d96cbbdb6493e32d4f6abd8f7a191990e8efb289 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850","sha256:8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706 b/test/testdata/missing-subject-layout/blobs/sha256/371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706 deleted file mode 100644 index 72c55db..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Farm64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:9ef7beaea047309185047764e3aa0d4f29979dacc88e573daa9d0f82050b4ab1":"step0","sha256:c3529d59c164c4bc6fd97482020a2147fa20b991d48916315d80504673c871bf":"step2","sha256:c99cf7ecacd148d653fcacb51c2eadf68504a4d32c870f6de26706635b08df28":"step1","sha256:f9acdec24273860ab573e08a5e75a6cb8c4baef6602571df599b3d9b745b7b0f":"step3"}},"metadata":{"buildInvocationID":"jckf4dzdrb4i99ygsshezjtsq","buildStartedOn":"2024-04-29T10:23:45.125886079Z","buildFinishedOn":"2024-04-29T10:23:46.287890106Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"ba33451b352942e366f12662f2c3a0c8ac54d696","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:4efcb3fab1b18d9764b436e8f9430f56dd8fee0f811ae064f8ec051e7ac5dec4":"step0","sha256:5c08b537da7192a6909348620c571138948f7874016718afc6d6d4e1569453d3":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:bca4290a96390d7a6fc6f2f9929370d06f8dfcacba591c76e3d5c5044e7f420c","size":3347715}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/3883faf6acc3cae029364ed17ec2ce917fc9a500aab72f813d26fed8404e7162 b/test/testdata/missing-subject-layout/blobs/sha256/3883faf6acc3cae029364ed17ec2ce917fc9a500aab72f813d26fed8404e7162 deleted file mode 100644 index 162856c..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/3883faf6acc3cae029364ed17ec2ce917fc9a500aab72f813d26fed8404e7162 +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:2a9b671f3fc9bc5ca967b616d96cbbdb6493e32d4f6abd8f7a191990e8efb289", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/3e64f9d2888ed9211fbf2c6b5853ea559248fdb4ab711bcea34b65c62f0e026b b/test/testdata/missing-subject-layout/blobs/sha256/3e64f9d2888ed9211fbf2c6b5853ea559248fdb4ab711bcea34b65c62f0e026b deleted file mode 100644 index 71fba30..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/3e64f9d2888ed9211fbf2c6b5853ea559248fdb4ab711bcea34b65c62f0e026b +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850","sha256:8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/4e5988d06eee647cb901d4435830fbf13cf3ab1ae27ec91246b280514e6a7b33 b/test/testdata/missing-subject-layout/blobs/sha256/4e5988d06eee647cb901d4435830fbf13cf3ab1ae27ec91246b280514e6a7b33 deleted file mode 100644 index d2e2697..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/4e5988d06eee647cb901d4435830fbf13cf3ab1ae27ec91246b280514e6a7b33 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850","sha256:c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/5049b0fd8de6fc8937065a0b26214e5a1e620e98488de6bac72c0284b1a5242f b/test/testdata/missing-subject-layout/blobs/sha256/5049b0fd8de6fc8937065a0b26214e5a1e620e98488de6bac72c0284b1a5242f new file mode 100644 index 0000000..47def76 --- /dev/null +++ b/test/testdata/missing-subject-layout/blobs/sha256/5049b0fd8de6fc8937065a0b26214e5a1e620e98488de6bac72c0284b1a5242f @@ -0,0 +1 @@ +{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224 b/test/testdata/missing-subject-layout/blobs/sha256/5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224 deleted file mode 100644 index 2d1769e..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Farm64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:9ef7beaea047309185047764e3aa0d4f29979dacc88e573daa9d0f82050b4ab1":"step0","sha256:c3529d59c164c4bc6fd97482020a2147fa20b991d48916315d80504673c871bf":"step2","sha256:c99cf7ecacd148d653fcacb51c2eadf68504a4d32c870f6de26706635b08df28":"step1","sha256:f9acdec24273860ab573e08a5e75a6cb8c4baef6602571df599b3d9b745b7b0f":"step3"}},"metadata":{"buildInvocationID":"nkbtpuurp2ogre7j5hlfdrvma","buildStartedOn":"2024-04-26T14:24:49.386895737Z","buildFinishedOn":"2024-04-26T14:24:50.962885799Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"77b839051c1796c77a5383f1570585c7f3ff70ea","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:41e476230918469ca0be3275c43594cc0a909d01fdf0fe8b73f59c50d2c2d1b9":"step0","sha256:f1bd0b5d897e59fc7a5775b7082658676e06cc12674666e1713b56c38f7d1c0a":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:bca4290a96390d7a6fc6f2f9929370d06f8dfcacba591c76e3d5c5044e7f420c","size":3347715}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/6658b8ba1e1221a6288bf50cd7813f814e2baad70141a3e315b7c3476b0f476f b/test/testdata/missing-subject-layout/blobs/sha256/6658b8ba1e1221a6288bf50cd7813f814e2baad70141a3e315b7c3476b0f476f deleted file mode 100644 index afaa051..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/6658b8ba1e1221a6288bf50cd7813f814e2baad70141a3e315b7c3476b0f476f +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:fed2c8841731e2cf1ceb53c49c6440fcd6d565a8658141914a8a07c127e00d7e", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/6c3da8eeaba64ce5acfcbaeb1f2c06af73879adba0fcb4743339c9a54b377635 b/test/testdata/missing-subject-layout/blobs/sha256/6c3da8eeaba64ce5acfcbaeb1f2c06af73879adba0fcb4743339c9a54b377635 deleted file mode 100644 index 06473ef..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/6c3da8eeaba64ce5acfcbaeb1f2c06af73879adba0fcb4743339c9a54b377635 +++ /dev/null @@ -1,50 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.index.v1+json", - "manifests": [ - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "size": 476, - "platform": { - "architecture": "amd64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "size": 476, - "platform": { - "architecture": "arm64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:9638ca53d2795806cf51b7461575c51e4a626a091dc2842b35cac18c787ff80f", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:8049aa9ad3479085066b31d02b74310803129c3eb1e22d2e62279f8c72340b55", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e b/test/testdata/missing-subject-layout/blobs/sha256/7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e deleted file mode 100644 index 1e9ebfd..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e +++ /dev/null @@ -1,16 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:d85d624a324422194b43cccd975b5752cf0acaedd668bb525fcd40c3587cc460", - "size": 453 - }, - "layers": [ - { - "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip", - "digest": "sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad", - "size": 116 - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/8049aa9ad3479085066b31d02b74310803129c3eb1e22d2e62279f8c72340b55 b/test/testdata/missing-subject-layout/blobs/sha256/8049aa9ad3479085066b31d02b74310803129c3eb1e22d2e62279f8c72340b55 deleted file mode 100644 index 88ced07..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/8049aa9ad3479085066b31d02b74310803129c3eb1e22d2e62279f8c72340b55 +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:f634c4c53b03bf8ff917b61165631fda0cfe691a383e7b333269a53bf9a79c34", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85", - "size": 3943, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532 b/test/testdata/missing-subject-layout/blobs/sha256/8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532 deleted file mode 100644 index 6234c35..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Famd64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:46a51bd96c5f07c63901007f7fc78b5cbc14d05c2f2b1ec8e206d0f72a8d077a":"step2","sha256:a99a5b91a7644662f368e8bc1c6ca7fad2ea98ce130fd2d2ca648a42e8f9cca9":"step1","sha256:db2976cd1ada912761fd8495e52cdb659606c87e1b2d529926b859b4b7df140c":"step3","sha256:faa2314417184f0f81e21fe46ef9c04da17b8fc0d629ac5f017dd02a596697bb":"step0"}},"metadata":{"buildInvocationID":"4sdluz1285kjezq148xqo3fcr","buildStartedOn":"2024-04-29T10:20:54.451240475Z","buildFinishedOn":"2024-04-29T10:20:56.48203241Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"ba33451b352942e366f12662f2c3a0c8ac54d696","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:8c30f94c18660dd82452640583d991e007708a353546172a422418107a360f48":"step1","sha256:e1d9e97f2a2942f94811bc5453568509de77e86328036ef73562ba0b56137db6":"step0"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:4abcf20661432fb2d719aaf90656f55c287f8ca915dc1c92ec14ff61e67fbaf8","size":3408729}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375 b/test/testdata/missing-subject-layout/blobs/sha256/8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375 deleted file mode 100644 index a5dd69f..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/8f94b6e2a8be82e2e5b562d73212578bb3a02e8c0da7fc175c79045e73519375 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Famd64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:46a51bd96c5f07c63901007f7fc78b5cbc14d05c2f2b1ec8e206d0f72a8d077a":"step2","sha256:a99a5b91a7644662f368e8bc1c6ca7fad2ea98ce130fd2d2ca648a42e8f9cca9":"step1","sha256:db2976cd1ada912761fd8495e52cdb659606c87e1b2d529926b859b4b7df140c":"step3","sha256:faa2314417184f0f81e21fe46ef9c04da17b8fc0d629ac5f017dd02a596697bb":"step0"}},"metadata":{"buildInvocationID":"nkbtpuurp2ogre7j5hlfdrvma","buildStartedOn":"2024-04-26T14:24:49.386895737Z","buildFinishedOn":"2024-04-26T14:24:50.962885799Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"77b839051c1796c77a5383f1570585c7f3ff70ea","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:41e476230918469ca0be3275c43594cc0a909d01fdf0fe8b73f59c50d2c2d1b9":"step0","sha256:f1bd0b5d897e59fc7a5775b7082658676e06cc12674666e1713b56c38f7d1c0a":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:4abcf20661432fb2d719aaf90656f55c287f8ca915dc1c92ec14ff61e67fbaf8","size":3408729}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776 b/test/testdata/missing-subject-layout/blobs/sha256/92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776 deleted file mode 100644 index ed7f598..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Farm64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:9ef7beaea047309185047764e3aa0d4f29979dacc88e573daa9d0f82050b4ab1":"step0","sha256:c3529d59c164c4bc6fd97482020a2147fa20b991d48916315d80504673c871bf":"step2","sha256:c99cf7ecacd148d653fcacb51c2eadf68504a4d32c870f6de26706635b08df28":"step1","sha256:f9acdec24273860ab573e08a5e75a6cb8c4baef6602571df599b3d9b745b7b0f":"step3"}},"metadata":{"buildInvocationID":"oufyhd0aciw714m1i5y6l09xz","buildStartedOn":"2024-04-19T16:25:04.209111656Z","buildFinishedOn":"2024-04-19T16:25:05.831440763Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"5914df2930aba701d6ddc3ba9272a5732dfe8ab4","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:18b166b594df5270bf6a4aa8dcd0a96b3635d0a23106d819620cbab2f3f5cf22":"step0","sha256:31d6cbba3f437cfb5933e60d5f4d2be69109c2fae9ed5ffe04da16931a459cca":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:bca4290a96390d7a6fc6f2f9929370d06f8dfcacba591c76e3d5c5044e7f420c","size":3347715}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/9638ca53d2795806cf51b7461575c51e4a626a091dc2842b35cac18c787ff80f b/test/testdata/missing-subject-layout/blobs/sha256/9638ca53d2795806cf51b7461575c51e4a626a091dc2842b35cac18c787ff80f deleted file mode 100644 index 09d726b..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/9638ca53d2795806cf51b7461575c51e4a626a091dc2842b35cac18c787ff80f +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:3e64f9d2888ed9211fbf2c6b5853ea559248fdb4ab711bcea34b65c62f0e026b", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:8f2f55fc493890c2482a1220844157f4b0c8a6445d220af741e9fee8099bf532", - "size": 3943, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad b/test/testdata/missing-subject-layout/blobs/sha256/97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad deleted file mode 100644 index 48e62f9..0000000 Binary files a/test/testdata/missing-subject-layout/blobs/sha256/97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad and /dev/null differ diff --git a/test/testdata/missing-subject-layout/blobs/sha256/98e06f6b48edd74e21e8504c5538aec56315874a6db860fbf6874cd7a830e3c8 b/test/testdata/missing-subject-layout/blobs/sha256/98e06f6b48edd74e21e8504c5538aec56315874a6db860fbf6874cd7a830e3c8 deleted file mode 100644 index 658ff6e..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/98e06f6b48edd74e21e8504c5538aec56315874a6db860fbf6874cd7a830e3c8 +++ /dev/null @@ -1,50 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.index.v1+json", - "manifests": [ - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "size": 476, - "platform": { - "architecture": "amd64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "size": 476, - "platform": { - "architecture": "arm64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:3883faf6acc3cae029364ed17ec2ce917fc9a500aab72f813d26fed8404e7162", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:f2b95cecafef9c22a5d059fac8f20e3645a45370e52abf9581dd4eedd152fce0", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85 b/test/testdata/missing-subject-layout/blobs/sha256/9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85 deleted file mode 100644 index 74dd618..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Farm64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"arm64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:9ef7beaea047309185047764e3aa0d4f29979dacc88e573daa9d0f82050b4ab1":"step0","sha256:c3529d59c164c4bc6fd97482020a2147fa20b991d48916315d80504673c871bf":"step2","sha256:c99cf7ecacd148d653fcacb51c2eadf68504a4d32c870f6de26706635b08df28":"step1","sha256:f9acdec24273860ab573e08a5e75a6cb8c4baef6602571df599b3d9b745b7b0f":"step3"}},"metadata":{"buildInvocationID":"4sdluz1285kjezq148xqo3fcr","buildStartedOn":"2024-04-29T10:20:54.451240475Z","buildFinishedOn":"2024-04-29T10:20:56.48203241Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"ba33451b352942e366f12662f2c3a0c8ac54d696","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:8c30f94c18660dd82452640583d991e007708a353546172a422418107a360f48":"step1","sha256:e1d9e97f2a2942f94811bc5453568509de77e86328036ef73562ba0b56137db6":"step0"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:bca4290a96390d7a6fc6f2f9929370d06f8dfcacba591c76e3d5c5044e7f420c","size":3347715}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/a051db630f91aae4fc649b455724f2c5c60ae0c508e87d88937e862524f488b5 b/test/testdata/missing-subject-layout/blobs/sha256/a051db630f91aae4fc649b455724f2c5c60ae0c508e87d88937e862524f488b5 new file mode 100644 index 0000000..781c250 --- /dev/null +++ b/test/testdata/missing-subject-layout/blobs/sha256/a051db630f91aae4fc649b455724f2c5c60ae0c508e87d88937e862524f488b5 @@ -0,0 +1,19 @@ +{ + "schemaVersion": 2, + "mediaType": "application/vnd.oci.image.manifest.v1+json", + "config": { + "mediaType": "application/vnd.oci.image.config.v1+json", + "digest": "sha256:5049b0fd8de6fc8937065a0b26214e5a1e620e98488de6bac72c0284b1a5242f", + "size": 167 + }, + "layers": [ + { + "mediaType": "application/vnd.in-toto+json", + "digest": "sha256:e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064", + "size": 917, + "annotations": { + "in-toto.io/predicate-type": "https://spdx.dev/Document" + } + } + ] +} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/a4cf4b24f3fa8cd49a59e8fd4ef5ce285f0aa928d2651f7ec3d5a78276249dec b/test/testdata/missing-subject-layout/blobs/sha256/a4cf4b24f3fa8cd49a59e8fd4ef5ce285f0aa928d2651f7ec3d5a78276249dec deleted file mode 100644 index be03cec..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/a4cf4b24f3fa8cd49a59e8fd4ef5ce285f0aa928d2651f7ec3d5a78276249dec +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e","sha256:371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850 b/test/testdata/missing-subject-layout/blobs/sha256/a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850 deleted file mode 100644 index f765564..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850 +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://spdx.dev/Document","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"sbom","documentNamespace":"https://anchore.com/syft/dir/sbom-6d900ae6-587d-4695-9c01-511801a85b65","creationInfo":{"licenseListVersion":"3.23","creators":["Organization: Anchore, Inc","Tool: syft-v0.105.0","Tool: buildkit-v0.12.4"],"created":"2024-03-08T16:42:30Z"},"packages":[{"name":"sbom","SPDXID":"SPDXRef-DocumentRoot-Directory-sbom","supplier":"NOASSERTION","downloadLocation":"NOASSERTION","filesAnalyzed":false,"primaryPackagePurpose":"FILE"}],"relationships":[{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-DocumentRoot-Directory-sbom","relationshipType":"DESCRIBES"}]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/aeca14119e3242c51633a899438518217417e01414d18189a3cf71c07f2a02c3 b/test/testdata/missing-subject-layout/blobs/sha256/aeca14119e3242c51633a899438518217417e01414d18189a3cf71c07f2a02c3 deleted file mode 100644 index 4ba3cd7..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/aeca14119e3242c51633a899438518217417e01414d18189a3cf71c07f2a02c3 +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:4e5988d06eee647cb901d4435830fbf13cf3ab1ae27ec91246b280514e6a7b33", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:a9646604f9522bf59d203a86ac5c2354a573ea041b8846409c4fc0f8c4a70850", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/bba371330d0124ce45f669c5d73092a3f2078ed1491e2bc52189a82e279074a1 b/test/testdata/missing-subject-layout/blobs/sha256/bba371330d0124ce45f669c5d73092a3f2078ed1491e2bc52189a82e279074a1 new file mode 100644 index 0000000..721f68d --- /dev/null +++ b/test/testdata/missing-subject-layout/blobs/sha256/bba371330d0124ce45f669c5d73092a3f2078ed1491e2bc52189a82e279074a1 @@ -0,0 +1,28 @@ +{ + "schemaVersion": 2, + "mediaType": "application/vnd.oci.image.index.v1+json", + "manifests": [ + { + "mediaType": "application/vnd.oci.image.manifest.v1+json", + "digest": "sha256:e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec", + "size": 288, + "platform": { + "architecture": "arm64", + "os": "linux" + } + }, + { + "mediaType": "application/vnd.oci.image.manifest.v1+json", + "digest": "sha256:a051db630f91aae4fc649b455724f2c5c60ae0c508e87d88937e862524f488b5", + "size": 558, + "annotations": { + "vnd.docker.reference.digest": "sha256:e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec", + "vnd.docker.reference.type": "attestation-manifest" + }, + "platform": { + "architecture": "unknown", + "os": "unknown" + } + } + ] +} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d b/test/testdata/missing-subject-layout/blobs/sha256/c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d deleted file mode 100644 index cca62ed..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/c01e5307ec84299048d76f162abec6f8bee4c463103161ab772c774e7ae9dd6d +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Famd64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:46a51bd96c5f07c63901007f7fc78b5cbc14d05c2f2b1ec8e206d0f72a8d077a":"step2","sha256:a99a5b91a7644662f368e8bc1c6ca7fad2ea98ce130fd2d2ca648a42e8f9cca9":"step1","sha256:db2976cd1ada912761fd8495e52cdb659606c87e1b2d529926b859b4b7df140c":"step3","sha256:faa2314417184f0f81e21fe46ef9c04da17b8fc0d629ac5f017dd02a596697bb":"step0"}},"metadata":{"buildInvocationID":"oufyhd0aciw714m1i5y6l09xz","buildStartedOn":"2024-04-19T16:25:04.209111656Z","buildFinishedOn":"2024-04-19T16:25:05.831440763Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"5914df2930aba701d6ddc3ba9272a5732dfe8ab4","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:18b166b594df5270bf6a4aa8dcd0a96b3635d0a23106d819620cbab2f3f5cf22":"step0","sha256:31d6cbba3f437cfb5933e60d5f4d2be69109c2fae9ed5ffe04da16931a459cca":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:4abcf20661432fb2d719aaf90656f55c287f8ca915dc1c92ec14ff61e67fbaf8","size":3408729}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf b/test/testdata/missing-subject-layout/blobs/sha256/c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf deleted file mode 100644 index 6d6f8bf..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/c6dd08ccc92ab60a87648a6b61fbf88d9287a936b285a8b4dde8893a1f4ffedf +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://slsa.dev/provenance/v0.2","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Famd64","digest":{"sha256":"da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620"}}],"predicate":{"builder":{"id":""},"buildType":"https://mobyproject.org/buildkit@v1","materials":[{"uri":"pkg:docker/docker/buildkit-syft-scanner@stable-1","digest":{"sha256":"176e0869c38aeaede37e594fcf182c91d44391a932e1d71e99ec204873445a33"}},{"uri":"pkg:docker/alpine@latest?platform=linux%2Famd64","digest":{"sha256":"c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}}],"invocation":{"configSource":{"entryPoint":"Dockerfile"},"parameters":{"frontend":"dockerfile.v0","locals":[{"name":"context"},{"name":"dockerfile"}]},"environment":{"platform":"linux/amd64"}},"buildConfig":{"llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"docker-image://docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b"}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}}},{"id":"step1","op":{"Op":{"exec":{"meta":{"args":["/bin/sh","-c","echo \"hello world\" \u003e /tmp/hello.txt"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"cwd":"/","removeMountStubsRecursive":true},"mounts":[{"input":0,"dest":"/","output":0}]}},"platform":{"Architecture":"amd64","OS":"linux"},"constraints":{}},"inputs":["step0:0"]},{"id":"step2","op":{"Op":{"file":{"actions":[{"input":-1,"secondaryInput":0,"output":0,"Action":{"copy":{"src":"/tmp/hello.txt","dest":"/","mode":-1,"followSymlink":true,"dirCopyContents":true,"createDestPath":true,"allowWildcard":true,"allowEmptyWildcard":true,"timestamp":-1}}}]}},"constraints":{}},"inputs":["step1:0"]},{"id":"step3","op":{"Op":null},"inputs":["step2:0"]}],"digestMapping":{"sha256:46a51bd96c5f07c63901007f7fc78b5cbc14d05c2f2b1ec8e206d0f72a8d077a":"step2","sha256:a99a5b91a7644662f368e8bc1c6ca7fad2ea98ce130fd2d2ca648a42e8f9cca9":"step1","sha256:db2976cd1ada912761fd8495e52cdb659606c87e1b2d529926b859b4b7df140c":"step3","sha256:faa2314417184f0f81e21fe46ef9c04da17b8fc0d629ac5f017dd02a596697bb":"step0"}},"metadata":{"buildInvocationID":"jckf4dzdrb4i99ygsshezjtsq","buildStartedOn":"2024-04-29T10:23:45.125886079Z","buildFinishedOn":"2024-04-29T10:23:46.287890106Z","completeness":{"parameters":true,"environment":true,"materials":false},"reproducible":false,"https://mobyproject.org/buildkit@v1#metadata":{"vcs":{"revision":"ba33451b352942e366f12662f2c3a0c8ac54d696","source":"git@github.com:docker/image-signer-verifier.git"},"source":{"locations":{"step0":{"locations":[{"ranges":[{"start":{"line":1},"end":{"line":1}}]}]},"step1":{"locations":[{"ranges":[{"start":{"line":2},"end":{"line":2}}]}]},"step2":{"locations":[{"ranges":[{"start":{"line":5},"end":{"line":5}}]}]}},"infos":[{"filename":"Dockerfile","language":"Dockerfile","data":"RlJPTSBhbHBpbmUgQVMgYnVpbGQKUlVOIGVjaG8gImhlbGxvIHdvcmxkIiA+IC90bXAvaGVsbG8udHh0CgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3RtcC9oZWxsby50eHQgLwo=","llbDefinition":[{"id":"step0","op":{"Op":{"source":{"identifier":"local://dockerfile","attrs":{"local.differ":"none","local.followpaths":"[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]","local.sharedkeyhint":"dockerfile"}}},"constraints":{}}},{"id":"step1","op":{"Op":null},"inputs":["step0:0"]}],"digestMapping":{"sha256:4efcb3fab1b18d9764b436e8f9430f56dd8fee0f811ae064f8ec051e7ac5dec4":"step0","sha256:5c08b537da7192a6909348620c571138948f7874016718afc6d6d4e1569453d3":"step1"}}]},"layers":{"step0:0":[[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","digest":"sha256:4abcf20661432fb2d719aaf90656f55c287f8ca915dc1c92ec14ff61e67fbaf8","size":3408729}]],"step2:0":[[{"mediaType":"application/vnd.oci.image.layer.v1.tar+gzip","digest":"sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad","size":116}]]}}}}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/c9f436179969b60ec0bbd406b1340c501e59376a658b14b53c1828924c0ac668 b/test/testdata/missing-subject-layout/blobs/sha256/c9f436179969b60ec0bbd406b1340c501e59376a658b14b53c1828924c0ac668 deleted file mode 100644 index 56780cc..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/c9f436179969b60ec0bbd406b1340c501e59376a658b14b53c1828924c0ac668 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e","sha256:5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/cbeaa84fb2fdfc8fd5e437555e94a323ac8acc69e68278d127cb4adf595f9d46 b/test/testdata/missing-subject-layout/blobs/sha256/cbeaa84fb2fdfc8fd5e437555e94a323ac8acc69e68278d127cb4adf595f9d46 new file mode 100644 index 0000000..7024a7a --- /dev/null +++ b/test/testdata/missing-subject-layout/blobs/sha256/cbeaa84fb2fdfc8fd5e437555e94a323ac8acc69e68278d127cb4adf595f9d46 @@ -0,0 +1 @@ +{"architecture":"arm64","config":{"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"WorkingDir":"/","ArgsEscaped":true},"created":null,"history":[{"created_by":"CMD []","comment":"buildkit.dockerfile.v0","empty_layer":true}],"os":"linux","rootfs":{"type":"layers","diff_ids":null}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/d85d624a324422194b43cccd975b5752cf0acaedd668bb525fcd40c3587cc460 b/test/testdata/missing-subject-layout/blobs/sha256/d85d624a324422194b43cccd975b5752cf0acaedd668bb525fcd40c3587cc460 deleted file mode 100644 index e37f3ea..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/d85d624a324422194b43cccd975b5752cf0acaedd668bb525fcd40c3587cc460 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"arm64","config":{"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"],"WorkingDir":"/","OnBuild":null},"created":"2024-03-08T16:42:30.065465358Z","history":[{"created":"2024-03-08T16:42:30.065465358Z","created_by":"COPY /tmp/hello.txt / # buildkit","comment":"buildkit.dockerfile.v0"}],"os":"linux","rootfs":{"type":"layers","diff_ids":["sha256:b842af8c2f1451ffc802ae4139819eaea8441223357642548d8a25ab5c52cff7"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e b/test/testdata/missing-subject-layout/blobs/sha256/da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e deleted file mode 100644 index c18e28f..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e +++ /dev/null @@ -1 +0,0 @@ -{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://spdx.dev/Document","subject":[{"name":"pkg:docker/test-image@test?platform=linux%2Farm64","digest":{"sha256":"7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e"}}],"predicate":{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"sbom","documentNamespace":"https://anchore.com/syft/dir/sbom-6d900ae6-587d-4695-9c01-511801a85b65","creationInfo":{"licenseListVersion":"3.23","creators":["Organization: Anchore, Inc","Tool: syft-v0.105.0","Tool: buildkit-v0.12.4"],"created":"2024-03-08T16:42:30Z"},"packages":[{"name":"sbom","SPDXID":"SPDXRef-DocumentRoot-Directory-sbom","supplier":"NOASSERTION","downloadLocation":"NOASSERTION","filesAnalyzed":false,"primaryPackagePurpose":"FILE"}],"relationships":[{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-DocumentRoot-Directory-sbom","relationshipType":"DESCRIBES"}]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620 b/test/testdata/missing-subject-layout/blobs/sha256/da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620 deleted file mode 100644 index e68961b..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620 +++ /dev/null @@ -1,16 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:1c70b3e7c3a57801501ec127aa6c918c390c373294ec4fc48f2c6fe703fcc6fe", - "size": 453 - }, - "layers": [ - { - "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip", - "digest": "sha256:97a548f8d65d9ab617f608dd621f59e0d43a3b346f34c34eb58da31f00a9b0ad", - "size": 116 - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/db8f2a6e112ea6396f57d073269ecfac61e8dcdad3a4a643dcb577522492f898 b/test/testdata/missing-subject-layout/blobs/sha256/db8f2a6e112ea6396f57d073269ecfac61e8dcdad3a4a643dcb577522492f898 deleted file mode 100644 index 2500f81..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/db8f2a6e112ea6396f57d073269ecfac61e8dcdad3a4a643dcb577522492f898 +++ /dev/null @@ -1,50 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.index.v1+json", - "manifests": [ - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "size": 476, - "platform": { - "architecture": "amd64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "size": 476, - "platform": { - "architecture": "arm64", - "os": "linux" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:26da286bbc886aa14d191808db8fcbbd5d8ec68cf0047f954133e76d8e73d71c", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:da8b190665956ea07890a0273e2a9c96bfe291662f08e2860e868eef69c34620", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - }, - { - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "digest": "sha256:e0a9b9404ac2691b9b1c9ef217f22bb1e106efd5ee791640411764e1cf39ea2c", - "size": 836, - "annotations": { - "vnd.docker.reference.digest": "sha256:7a76cec943853f9f7105b1976afa1bf7cd5bb6afc4e9d5852dd8da7cf81ae86e", - "vnd.docker.reference.type": "attestation-manifest" - }, - "platform": { - "architecture": "unknown", - "os": "unknown" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/e0a9b9404ac2691b9b1c9ef217f22bb1e106efd5ee791640411764e1cf39ea2c b/test/testdata/missing-subject-layout/blobs/sha256/e0a9b9404ac2691b9b1c9ef217f22bb1e106efd5ee791640411764e1cf39ea2c deleted file mode 100644 index ac75840..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/e0a9b9404ac2691b9b1c9ef217f22bb1e106efd5ee791640411764e1cf39ea2c +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:a4cf4b24f3fa8cd49a59e8fd4ef5ce285f0aa928d2651f7ec3d5a78276249dec", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:371954672cfaa92735d6fbd70a787aac618a41d4c8ec8d6e12bd12d0cc601706", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064 b/test/testdata/missing-subject-layout/blobs/sha256/e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064 new file mode 100644 index 0000000..df67bf4 --- /dev/null +++ b/test/testdata/missing-subject-layout/blobs/sha256/e2c3b7df754e062b0c6b17c5262ea237fc86d68432e86e68724c57f04be3d064 @@ -0,0 +1 @@ +{"_type":"https://in-toto.io/Statement/v0.1","predicateType":"https://spdx.dev/Document","subject":[{"name":"pkg:docker/test@latest?platform=linux%2Farm64","digest":{"sha256":"e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec"}}],"predicate":{"SPDXID":"SPDXRef-DOCUMENT","creationInfo":{"created":"2024-09-19T20:28:48Z","creators":["Organization: Anchore, Inc","Tool: syft-v0.105.0"],"licenseListVersion":"3.23"},"dataLicense":"CC0-1.0","documentNamespace":"https://anchore.com/syft/dir/sbom-4d662591-02b0-4448-8cdc-c8b539bbe1a0","name":"sbom","packages":[{"SPDXID":"SPDXRef-DocumentRoot-Directory-sbom","downloadLocation":"NOASSERTION","filesAnalyzed":false,"name":"sbom","primaryPackagePurpose":"FILE","supplier":"NOASSERTION"}],"relationships":[{"relatedSpdxElement":"SPDXRef-DocumentRoot-Directory-sbom","relationshipType":"DESCRIBES","spdxElementId":"SPDXRef-DOCUMENT"}],"spdxVersion":"SPDX-2.3"}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec b/test/testdata/missing-subject-layout/blobs/sha256/e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec new file mode 100644 index 0000000..00ebcd6 --- /dev/null +++ b/test/testdata/missing-subject-layout/blobs/sha256/e44a73ec811b0442dfcdd13a0eb035746d0569662684dafe2f3e8abe644871ec @@ -0,0 +1,10 @@ +{ + "schemaVersion": 2, + "mediaType": "application/vnd.oci.image.manifest.v1+json", + "config": { + "mediaType": "application/vnd.oci.image.config.v1+json", + "digest": "sha256:cbeaa84fb2fdfc8fd5e437555e94a323ac8acc69e68278d127cb4adf595f9d46", + "size": 308 + }, + "layers": null +} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/f2b95cecafef9c22a5d059fac8f20e3645a45370e52abf9581dd4eedd152fce0 b/test/testdata/missing-subject-layout/blobs/sha256/f2b95cecafef9c22a5d059fac8f20e3645a45370e52abf9581dd4eedd152fce0 deleted file mode 100644 index b55918a..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/f2b95cecafef9c22a5d059fac8f20e3645a45370e52abf9581dd4eedd152fce0 +++ /dev/null @@ -1,27 +0,0 @@ -{ - "schemaVersion": 2, - "mediaType": "application/vnd.oci.image.manifest.v1+json", - "config": { - "mediaType": "application/vnd.oci.image.config.v1+json", - "digest": "sha256:c9f436179969b60ec0bbd406b1340c501e59376a658b14b53c1828924c0ac668", - "size": 241 - }, - "layers": [ - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e", - "size": 946, - "annotations": { - "in-toto.io/predicate-type": "https://spdx.dev/Document" - } - }, - { - "mediaType": "application/vnd.in-toto+json", - "digest": "sha256:5171425b78a2aedb43eb4e95083e64d3764c798507596ceded776c4ab038c224", - "size": 3944, - "annotations": { - "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2" - } - } - ] -} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/f634c4c53b03bf8ff917b61165631fda0cfe691a383e7b333269a53bf9a79c34 b/test/testdata/missing-subject-layout/blobs/sha256/f634c4c53b03bf8ff917b61165631fda0cfe691a383e7b333269a53bf9a79c34 deleted file mode 100644 index 70ff6e9..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/f634c4c53b03bf8ff917b61165631fda0cfe691a383e7b333269a53bf9a79c34 +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e","sha256:9fe102c03d71d47a24cd7fc7db8e7affc05fd9bf98eb027038b7daf176861e85"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/blobs/sha256/fed2c8841731e2cf1ceb53c49c6440fcd6d565a8658141914a8a07c127e00d7e b/test/testdata/missing-subject-layout/blobs/sha256/fed2c8841731e2cf1ceb53c49c6440fcd6d565a8658141914a8a07c127e00d7e deleted file mode 100644 index f04ad30..0000000 --- a/test/testdata/missing-subject-layout/blobs/sha256/fed2c8841731e2cf1ceb53c49c6440fcd6d565a8658141914a8a07c127e00d7e +++ /dev/null @@ -1 +0,0 @@ -{"architecture":"unknown","os":"unknown","config":{},"rootfs":{"type":"layers","diff_ids":["sha256:da5651e8877b960aa30f32f317fbeba28f5e06f1ce4d3895b3b8770140280a2e","sha256:92d3311aa91737ff81e2a4c8e269e78c3c95df611b44580426c384d3f5057776"]}} \ No newline at end of file diff --git a/test/testdata/missing-subject-layout/index.json b/test/testdata/missing-subject-layout/index.json index d97044c..cd950bf 100644 --- a/test/testdata/missing-subject-layout/index.json +++ b/test/testdata/missing-subject-layout/index.json @@ -1,10 +1,11 @@ { "schemaVersion": 2, + "mediaType": "application/vnd.oci.image.index.v1+json", "manifests": [ { "mediaType": "application/vnd.oci.image.index.v1+json", - "digest": "sha256:db8f2a6e112ea6396f57d073269ecfac61e8dcdad3a4a643dcb577522492f898", - "size": 1607, + "digest": "sha256:bba371330d0124ce45f669c5d73092a3f2078ed1491e2bc52189a82e279074a1", + "size": 855, "annotations": { "org.opencontainers.image.ref.name": "test" }