From 4c8d487ea9bd19920fd3dc62099f6e43dc8a4d3d Mon Sep 17 00:00:00 2001 From: Eduardo Navarro Date: Fri, 22 Apr 2022 16:34:40 +0200 Subject: [PATCH] [backend] Add missing predicate to provenance file --- src/backend/bs_worker | 5 ++++- src/backend/t/1000-bs_worker.t | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/backend/bs_worker b/src/backend/bs_worker index 12be4590885..b56fd0ec0f0 100755 --- a/src/backend/bs_worker +++ b/src/backend/bs_worker @@ -3233,7 +3233,10 @@ sub generate_slsa_provenance_statement { my $stmt = { '_type' => "https://in-toto.io/Statement/v0.1", 'subject' => $subject, - 'materials' => $buildinfo->{'materials'} || [], + 'predicateType' => 'https://slsa.dev/provenance/v0.2', + 'predicate' => { + 'materials' => $buildinfo->{'materials'} || [], + }, }; require Build::SimpleJSON; return Build::SimpleJSON::unparse($stmt, 'template' => $slsa_json_template, 'keepspecial' => 1); diff --git a/src/backend/t/1000-bs_worker.t b/src/backend/t/1000-bs_worker.t index 4fa5f795bea..d0df9589ca9 100644 --- a/src/backend/t/1000-bs_worker.t +++ b/src/backend/t/1000-bs_worker.t @@ -183,7 +183,6 @@ use JSON::XS (); $got = JSON::XS::decode_json($got); my $expected_statement = { '_type' => 'https://in-toto.io/Statement/v0.1', - 'materials' => $expected_materials, 'subject' => [ { 'digest' => { @@ -198,5 +197,9 @@ my $expected_statement = { } } ], + 'predicateType' => 'https://slsa.dev/provenance/v0.2', + 'predicate' => { + 'materials' => $expected_materials, + } }; is_deeply($got, $expected_statement, 'generate_slsa_provenance_statement - Return value');