github.com/ActiveState/cli@v0.0.0-20240508170324-6801f60cd051/pkg/platform/api/mediator/request/cve.go (about) 1 package request 2 3 // VulnerabilitiesByProject returns the query for retrieving vulnerabilities by projects 4 func VulnerabilitiesByProject(org, name string) *vulnerabilitiesByProject { 5 return &vulnerabilitiesByProject{vars: map[string]interface{}{ 6 "org": org, 7 "name": name, 8 }} 9 } 10 11 type vulnerabilitiesByProject struct { 12 vars map[string]interface{} 13 } 14 15 func (p *vulnerabilitiesByProject) Query() string { 16 return `query Vulnerabilities($org: String!, $name: String!) 17 { 18 project(org: $org, name: $name) { 19 __typename 20 ... on Project { 21 name 22 description 23 commit { 24 commit_id 25 vulnerability_histogram { 26 severity 27 count 28 } 29 sources { 30 name 31 version 32 vulnerabilities { 33 severity 34 cve_id 35 alt_ids 36 } 37 } 38 } 39 } 40 ... on NotFound { 41 message 42 } 43 } 44 }` 45 } 46 47 func (p *vulnerabilitiesByProject) Vars() (map[string]interface{}, error) { 48 return p.vars, nil 49 } 50 51 type vulnerabilitiesByCommit struct { 52 vars map[string]interface{} 53 } 54 55 // VulnerabilitiesByCommit returns the query for retrieving vulnerabilities for a specific commit 56 func VulnerabilitiesByCommit(commitID string) *vulnerabilitiesByCommit { 57 return &vulnerabilitiesByCommit{vars: map[string]interface{}{ 58 "commit_id": commitID, 59 }} 60 } 61 62 func (p *vulnerabilitiesByCommit) Query() string { 63 return `query Vulnerabilities($commit_id: Uuid!) 64 { 65 commit(commit_id: $commit_id) { 66 __typename 67 ... on Commit { 68 commit_id 69 vulnerability_histogram { 70 severity 71 count 72 } 73 sources { 74 name 75 version 76 vulnerabilities { 77 severity 78 cve_id 79 alt_ids 80 } 81 } 82 } 83 ... on NotFound { 84 message 85 } 86 } 87 }` 88 } 89 90 func (p *vulnerabilitiesByCommit) Vars() (map[string]interface{}, error) { 91 return p.vars, nil 92 }