Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/ci/reports/sbom/report.rb')
-rw-r--r--lib/gitlab/ci/reports/sbom/report.rb16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/gitlab/ci/reports/sbom/report.rb b/lib/gitlab/ci/reports/sbom/report.rb
index 51fa8ce0d2e..9a71c67388d 100644
--- a/lib/gitlab/ci/reports/sbom/report.rb
+++ b/lib/gitlab/ci/reports/sbom/report.rb
@@ -5,10 +5,24 @@ module Gitlab
module Reports
module Sbom
class Report
- attr_reader :components, :source, :errors
+ # This represents the attributes defined in cycloneDX Schema
+ # https://gitlab.com/gitlab-org/gitlab/-/blob/master/app/validators/json_schemas/cyclonedx_report.json#L7
+ BOM_FORMAT = 'CycloneDX'
+ SPEC_VERSION = '1.4'
+ VERSION = 1
+
+ attr_reader :source, :errors
+ attr_accessor :sbom_attributes, :metadata, :components
def initialize
+ @sbom_attributes = {
+ bom_format: BOM_FORMAT,
+ spec_version: SPEC_VERSION,
+ serial_number: "urn:uuid:#{SecureRandom.uuid}",
+ version: VERSION
+ }
@components = []
+ @metadata = ::Gitlab::Ci::Reports::Sbom::Metadata.new
@errors = []
end