Skip to content

Commit

Permalink
add sbom settings for project (#20069)
Browse files Browse the repository at this point in the history
Add a new switcher for sbom generation, by default is false.

Signed-off-by: wang yan <wangyan@vmware.com>
  • Loading branch information
wy65701436 authored Mar 1, 2024
1 parent d79e4b1 commit 3782bab
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 1 deletion.
1 change: 1 addition & 0 deletions src/pkg/project/models/pro_meta.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,5 @@ const (
ProMetaSeverity = "severity"
ProMetaAutoScan = "auto_scan"
ProMetaReuseSysCVEAllowlist = "reuse_sys_cve_allowlist"
ProMetaAutoSBOMGen = "auto_sbom_generation"
)
9 changes: 9 additions & 0 deletions src/pkg/project/models/project.go
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,15 @@ func (p *Project) AutoScan() bool {
return isTrue(auto)
}

// AutoSBOMGen ...
func (p *Project) AutoSBOMGen() bool {
auto, exist := p.GetMetadata(ProMetaAutoSBOMGen)
if !exist {
return false
}
return isTrue(auto)
}

// FilterByPublic returns orm.QuerySeter with public filter
func (p *Project) FilterByPublic(_ context.Context, qs orm.QuerySeter, _ string, value interface{}) orm.QuerySeter {
subQuery := `SELECT project_id FROM project_metadata WHERE name = 'public' AND value = '%s'`
Expand Down
2 changes: 1 addition & 1 deletion src/server/v2.0/handler/project_metadata.go
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ func (p *projectMetadataAPI) validate(metas map[string]string) (map[string]strin

switch key {
case proModels.ProMetaPublic, proModels.ProMetaEnableContentTrust, proModels.ProMetaEnableContentTrustCosign,
proModels.ProMetaPreventVul, proModels.ProMetaAutoScan, proModels.ProMetaReuseSysCVEAllowlist:
proModels.ProMetaAutoSBOMGen, proModels.ProMetaPreventVul, proModels.ProMetaAutoScan, proModels.ProMetaReuseSysCVEAllowlist:
v, err := strconv.ParseBool(value)
if err != nil {
return nil, errors.New(nil).WithCode(errors.BadRequestCode).WithMessage("invalid value: %s", value)
Expand Down

0 comments on commit 3782bab

Please sign in to comment.