Skip to content

Commit 291f3ae

Browse files
integration
Signed-off-by: Laurent Goderre <[email protected]>
1 parent 12e14c2 commit 291f3ae

File tree

1 file changed

+39
-1
lines changed

1 file changed

+39
-1
lines changed

client/client_test.go

+39-1
Original file line numberDiff line numberDiff line change
@@ -9213,7 +9213,13 @@ cat <<EOF > $BUILDKIT_SCAN_DESTINATION/spdx.json
92139213
{
92149214
"_type": "https://in-toto.io/Statement/v0.1",
92159215
"predicateType": "https://spdx.dev/Document",
9216-
"predicate": {"name": "fallback"}
9216+
"predicate": {
9217+
"name": "fallback",
9218+
"extraParams": {
9219+
"ARG1": "$BUILDKIT_SCAN_ARG1",
9220+
"ARG2": "$BUILDKIT_SCAN_ARG2"
9221+
}
9222+
}
92179223
}
92189224
EOF
92199225
`
@@ -9436,6 +9442,38 @@ EOF
94369442
require.Equal(t, "https://in-toto.io/Statement/v0.1", attest.Type)
94379443
require.Equal(t, intoto.PredicateSPDX, attest.PredicateType)
94389444
require.Subset(t, attest.Predicate, map[string]interface{}{"name": "frontend"})
9445+
9446+
// test configuring the scanner (simple)
9447+
target = registry + "/buildkit/testsbom4:latest"
9448+
_, err = c.Build(sb.Context(), SolveOpt{
9449+
FrontendAttrs: map[string]string{
9450+
"attest:sbom": "generator=" + scannerTarget + ",ARG1=foo,ARG2=bar",
9451+
},
9452+
Exports: []ExportEntry{
9453+
{
9454+
Type: ExporterImage,
9455+
Attrs: map[string]string{
9456+
"name": target,
9457+
"push": "true",
9458+
},
9459+
},
9460+
},
9461+
}, "", makeTargetFrontend(false), nil)
9462+
require.NoError(t, err)
9463+
9464+
desc, provider, err = contentutil.ProviderFromRef(target)
9465+
require.NoError(t, err)
9466+
9467+
imgs, err = testutil.ReadImages(sb.Context(), provider, desc)
9468+
require.NoError(t, err)
9469+
require.Equal(t, 2, len(imgs.Images))
9470+
9471+
att = imgs.Find("unknown/unknown")
9472+
attest = intoto.Statement{}
9473+
require.NoError(t, json.Unmarshal(att.LayersRaw[0], &attest))
9474+
require.Equal(t, "https://in-toto.io/Statement/v0.1", attest.Type)
9475+
require.Equal(t, intoto.PredicateSPDX, attest.PredicateType)
9476+
require.Subset(t, attest.Predicate, map[string]interface{}{"extraParams": map[string]interface{}{"ARG1": "foo", "ARG2": "bar"}})
94399477
}
94409478

94419479
func testSBOMScanSingleRef(t *testing.T, sb integration.Sandbox) {

0 commit comments

Comments
 (0)