Documentation ¶
Index ¶
- Constants
- func RapidScanResult(dir string) (string, error)
- type ColumnStyle
- type Component
- type Components
- type Files
- type GitHub
- type IssueDetail
- type License
- type Licenses
- type Meta
- type OtherViolation
- type OtherViolations
- type OverviewRow
- type PolicyViolationLicense
- type PolicyViolationReport
- type PolicyViolationVulnerability
- type RapidScanReport
- type ScanCell
- type ScanDetailTable
- type ScanReport
- type ScanRow
- type Subheader
- type Vulnerabilities
- type Vulnerability
- type VulnerabilityReport
Constants ¶
const ( Green = iota + 1 Yellow Red Grey Black )
enum for style types
const StepReportDirectory = ".pipeline/stepReports"
StepReportDirectory specifies the default directory for markdown reports which can later be collected by step pipelineCreateSummary
Variables ¶
This section is empty.
Functions ¶
func RapidScanResult ¶ added in v1.276.0
RapidScanResult reads result of Rapid scan from generated file
Types ¶
type ColumnStyle ¶
type ColumnStyle int
ColumnStyle defines style for a specific column
func (ColumnStyle) String ¶
func (c ColumnStyle) String() string
type Component ¶ added in v1.276.0
type Component struct { ComponentName string `json:"componentName"` ComponentVersion string `json:"versionName"` ComponentIdentifier string `json:"componentIdentifier"` ViolatingPolicyNames []string `json:"violatingPolicyNames"` PolicyViolationVulnerabilities []PolicyViolationVulnerability `json:"policyViolationVulnerabilities"` PolicyViolationLicenses []PolicyViolationLicense `json:"policyViolationLicenses"` WarningMessage string `json:"warningMessage"` ErrorMessage string `json:"errorMessage"` }
type GitHub ¶ added in v1.237.0
type GitHub struct { Owner *string Repository *string Assignees *[]string IssueService githubIssueService SearchService githubSearchService }
GitHub contains metadata for reporting towards GitHub
func (*GitHub) UploadMultipleReports ¶ added in v1.237.0
func (g *GitHub) UploadMultipleReports(ctx context.Context, scanReports *[]IssueDetail) error
UploadMultipleReports uploads a number of reports to GitHub, one per IssueDetail to create transparency
func (*GitHub) UploadSingleReport ¶ added in v1.237.0
func (g *GitHub) UploadSingleReport(ctx context.Context, scanReport IssueDetail) error
UploadSingleReport uploads a single report to GitHub
type IssueDetail ¶ added in v1.204.0
IssueDetail represents any content that can be transformed into the body of a GitHub issue
type OtherViolation ¶ added in v1.276.0
type OtherViolation struct {
ComponentName string
}
type OtherViolations ¶ added in v1.276.0
type OtherViolations struct { PolicyViolationName string Values []OtherViolation }
type OverviewRow ¶ added in v1.125.0
type OverviewRow struct { Description string `json:"description"` Details string `json:"details,omitempty"` Style ColumnStyle `json:"style,omitempty"` }
OverviewRow defines a row in the report's overview section it can consist of a description and some details where the details can have a style attached
type PolicyViolationLicense ¶ added in v1.276.0
type PolicyViolationReport ¶ added in v1.255.0
type PolicyViolationReport struct { ArtifactID string Branch string CommitID string Description string DirectDependency string Group string PackageURL string PipelineName string PipelineLink string Version string }
func (*PolicyViolationReport) ToMarkdown ¶ added in v1.255.0
func (p *PolicyViolationReport) ToMarkdown() ([]byte, error)
type PolicyViolationVulnerability ¶ added in v1.276.0
type RapidScanReport ¶ added in v1.276.0
type RapidScanReport struct { Success bool ExecutedTime string MainTableHeaders []string MainTableValues [][]string VulnerabilitiesTable []Vulnerabilities LicensesTable []Licenses OtherViolationsTable []OtherViolations }
RapidScanReport - for commenting to pull requests
type ScanCell ¶
type ScanCell struct { Content string `json:"content"` Style ColumnStyle `json:"style"` }
ScanCell defines one column of a scan result table
type ScanDetailTable ¶
type ScanDetailTable struct { Headers []string `json:"headers"` Rows []ScanRow `json:"rows"` WithCounter bool `json:"withCounter"` CounterHeader string `json:"counterHeader"` NoRowsMessage string `json:"noRowsMessage"` }
ScanDetailTable defines a table containing scan result details
type ScanReport ¶
type ScanReport struct { StepName string `json:"stepName"` ReportTitle string `json:"title"` Subheaders []Subheader `json:"subheaders"` Overview []OverviewRow `json:"overview"` FurtherInfo string `json:"furtherInfo"` ReportTime time.Time `json:"reportTime"` DetailTable ScanDetailTable `json:"detailTable"` SuccessfulScan bool `json:"successfulScan"` }
ScanReport defines the elements of a scan report used by various scan steps
func (*ScanReport) AddSubHeader ¶ added in v1.125.0
func (s *ScanReport) AddSubHeader(header, details string)
AddSubHeader adds a sub header to the report containing of a text/title plus optional details
func (*ScanReport) ToHTML ¶
func (s *ScanReport) ToHTML() ([]byte, error)
ToHTML creates a HTML version of the report
func (*ScanReport) ToJSON ¶ added in v1.131.0
func (s *ScanReport) ToJSON() ([]byte, error)
ToJSON returns the report in JSON format
func (ScanReport) ToMarkdown ¶
func (s ScanReport) ToMarkdown() ([]byte, error)
ToMarkdown creates a markdown version of the report content
func (ScanReport) ToTxt ¶ added in v1.204.0
func (s ScanReport) ToTxt() string
ToTxt up to now returns the report in JSON format
type ScanRow ¶
type ScanRow struct {
Columns []ScanCell `json:"columns"`
}
ScanRow defines one row of a scan result table
func (*ScanRow) AddColumn ¶ added in v1.125.0
func (s *ScanRow) AddColumn(content interface{}, style ColumnStyle)
AddColumn adds a column to a dedicated ScanRow
type Subheader ¶ added in v1.125.0
type Subheader struct { Description string `json:"text"` Details string `json:"details,omitempty"` }
Subheader defines a dedicated sub header in a report
type Vulnerabilities ¶ added in v1.276.0
type Vulnerabilities struct { PolicyViolationName string Values []Vulnerability }
type Vulnerability ¶ added in v1.276.0
type VulnerabilityReport ¶ added in v1.237.0
type VulnerabilityReport struct { ProjectName string ProjectVersion string BlackDuckProjectLink string ArtifactID string Branch string CommitID string Description string DependencyType string Group string PackageURL string PipelineName string PipelineLink string PublishDate string Resolution string Score float64 Severity string Version string VulnerabilityLink string VulnerabilityName string Origin string }
VulnerabilityReport represents metadata for a report on a vulnerability
func (*VulnerabilityReport) ToMarkdown ¶ added in v1.237.0
func (v *VulnerabilityReport) ToMarkdown() ([]byte, error)
ToMarkdown creates a vulnerability in markdown format which can be used in GitHub issues