Documentation
¶
Index ¶
- Constants
- type BinMgrService
- type Component
- type Cve
- type CvssScore
- type Filter
- type GraphNode
- type ImpactPathNode
- type License
- type PolicyAlreadyExistsError
- type PolicyService
- func (xps *PolicyService) Create(params utils.PolicyParams) error
- func (xps *PolicyService) Delete(policyName string) error
- func (xps *PolicyService) Get(policyName string) (policyResp *utils.PolicyParams, err error)
- func (xps *PolicyService) GetJfrogHttpClient() *jfroghttpclient.JfrogHttpClient
- func (xps *PolicyService) GetXrayDetails() auth.ServiceDetails
- func (xps *PolicyService) Update(params utils.PolicyParams) error
- type ReportContent
- type ReportContentRequestParams
- type ReportDetails
- type ReportRequestParams
- type ReportResponse
- type ReportService
- func (rs *ReportService) Content(request ReportContentRequestParams) (*ReportContent, error)
- func (rs *ReportService) Delete(reportId string) error
- func (rs *ReportService) Details(reportId string) (*ReportDetails, error)
- func (rs *ReportService) Vulnerabilities(req ReportRequestParams) (*ReportResponse, error)
- type Repository
- type RequestScanResponse
- type Resource
- type Row
- type ScanResponse
- type ScanService
- type ScanType
- type VersionService
- type Violation
- type Vulnerability
- type WatchAlreadyExistsError
- type WatchService
- func (xws *WatchService) Create(params utils.WatchParams) error
- func (xws *WatchService) Delete(watchName string) error
- func (xws *WatchService) Get(watchName string) (watchResp *utils.WatchParams, err error)
- func (xws *WatchService) GetJfrogHttpClient() *jfroghttpclient.JfrogHttpClient
- func (vs *WatchService) GetXrayDetails() auth.ServiceDetails
- func (xws *WatchService) Update(params utils.WatchParams) error
- type XrayGraphScanParams
Constants ¶
const ( // ReportsAPI refer to: https://www.jfrog.com/confluence/display/JFROG/Xray+REST+API#XrayRESTAPI-REPORTS ReportsAPI = "api/v1/reports" VulnerabilitiesAPI = ReportsAPI + "/vulnerabilities" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BinMgrService ¶ added in v0.20.1
type BinMgrService struct {
XrayDetails auth.ServiceDetails
// contains filtered or unexported fields
}
BinMgrService defines the http client and Xray details
func NewBinMgrService ¶ added in v0.20.1
func NewBinMgrService(client *jfroghttpclient.JfrogHttpClient) *BinMgrService
NewBinMgrService creates a new Xray Binary Manager Service
func (*BinMgrService) AddBuildsToIndexing ¶ added in v0.20.1
func (xbms *BinMgrService) AddBuildsToIndexing(buildNames []string) error
AddBuildsToIndexing will add builds to indexing configuration
func (*BinMgrService) GetJfrogHttpClient ¶ added in v0.20.1
func (xbms *BinMgrService) GetJfrogHttpClient() *jfroghttpclient.JfrogHttpClient
GetJfrogHttpClient returns the http client
func (*BinMgrService) GetXrayDetails ¶ added in v0.20.1
func (xbms *BinMgrService) GetXrayDetails() auth.ServiceDetails
GetXrayDetails returns the Xray details
type Component ¶ added in v0.25.0
type Component struct {
FixedVersions []string `json:"fixed_versions,omitempty"`
ImpactPaths [][]ImpactPathNode `json:"impact_paths,omitempty"`
}
type GraphNode ¶ added in v0.25.0
type GraphNode struct {
// Component Id in the JFrog standard.
// For instance, for maven: gav://<groupId>:<artifactId>:<version>
// For detailed format examples please see:
// https://www.jfrog.com/confluence/display/JFROG/Xray+REST+API#XrayRESTAPI-ComponentIdentifiers
Id string `json:"component_id,omitempty"`
// Sha of the binary representing the component.
Sha256 string `json:"sha256,omitempty"`
Sha1 string `json:"sha1,omitempty"`
// For root file shall be the file name.
// For internal components shall be the internal path. (Relevant only for binary scan).
Path string `json:"path,omitempty"`
// List of license names
Licenses []string `json:"licenses,omitempty"`
// List of sub components.
Nodes []*GraphNode `json:"nodes,omitempty"`
Parent *GraphNode `json:"-"`
}
func (*GraphNode) NodeHasLoop ¶ added in v1.5.0
type ImpactPathNode ¶ added in v1.0.1
type PolicyAlreadyExistsError ¶ added in v0.21.0
type PolicyAlreadyExistsError struct {
InnerError error
}
func (*PolicyAlreadyExistsError) Error ¶ added in v0.21.0
func (*PolicyAlreadyExistsError) Error() string
type PolicyService ¶ added in v0.20.1
type PolicyService struct {
XrayDetails auth.ServiceDetails
// contains filtered or unexported fields
}
PolicyService defines the http client and Xray details
func NewPolicyService ¶ added in v0.20.1
func NewPolicyService(client *jfroghttpclient.JfrogHttpClient) *PolicyService
NewPolicyService creates a new Xray Policy Service
func (*PolicyService) Create ¶ added in v0.20.1
func (xps *PolicyService) Create(params utils.PolicyParams) error
Create will create a new Xray policy
func (*PolicyService) Delete ¶ added in v0.20.1
func (xps *PolicyService) Delete(policyName string) error
Delete will delete an existing policy by name It will error if no policy can be found by that name.
func (*PolicyService) Get ¶ added in v0.20.1
func (xps *PolicyService) Get(policyName string) (policyResp *utils.PolicyParams, err error)
Get retrieves the details about an Xray policy by its name It will error if no policy can be found by that name.
func (*PolicyService) GetJfrogHttpClient ¶ added in v0.20.1
func (xps *PolicyService) GetJfrogHttpClient() *jfroghttpclient.JfrogHttpClient
GetJfrogHttpClient returns the http client
func (*PolicyService) GetXrayDetails ¶ added in v0.20.1
func (xps *PolicyService) GetXrayDetails() auth.ServiceDetails
GetXrayDetails returns the Xray details
func (*PolicyService) Update ¶ added in v0.20.1
func (xps *PolicyService) Update(params utils.PolicyParams) error
Update will update an existing Xray policy by name It will error if no policy can be found by that name.
type ReportContent ¶ added in v1.6.0
ReportContent defines a report content response
type ReportContentRequestParams ¶ added in v1.6.0
type ReportContentRequestParams struct {
ReportId string
Direction string
PageNum int
NumRows int
OrderBy string
}
ReportContentRequestParams defines a report content request
type ReportDetails ¶ added in v1.6.0
type ReportDetails struct {
Id int `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Type string `json:"report_type,omitempty"`
Status string `json:"status,omitempty"`
TotalArtifacts int `json:"total_artifacts,omitempty"`
ProcessedArtifacts int `json:"num_of_processed_artifacts,omitempty"`
Progress int `json:"progress,omitempty"`
RowCount int `json:"number_of_rows,omitempty"`
StartTime string `json:"start_time,omitempty"`
EndTime string `json:"end_time,omitempty"`
Author string `json:"author,omitempty"`
}
ReportDetails defines the detail response for an Xray report
type ReportRequestParams ¶ added in v1.6.0
type ReportRequestParams struct {
Name string `json:"name,omitempty"`
Filters Filter `json:"filters,omitempty"`
Resources Resource `json:"resources,omitempty"`
}
ReportRequestParams defines a report request
type ReportResponse ¶ added in v1.6.0
ReportResponse defines a report request response
type ReportService ¶ added in v1.6.0
type ReportService struct {
XrayDetails auth.ServiceDetails
// contains filtered or unexported fields
}
ReportService defines the Http client and Xray details
func NewReportService ¶ added in v1.6.0
func NewReportService(client *jfroghttpclient.JfrogHttpClient) *ReportService
NewReportService creates a new Xray Report Service
func (*ReportService) Content ¶ added in v1.6.0
func (rs *ReportService) Content(request ReportContentRequestParams) (*ReportContent, error)
Content retrieves the report content for the provided request
func (*ReportService) Delete ¶ added in v1.6.0
func (rs *ReportService) Delete(reportId string) error
Delete deletes the report that has an id matching reportId
func (*ReportService) Details ¶ added in v1.6.0
func (rs *ReportService) Details(reportId string) (*ReportDetails, error)
Details retrieves the details for a report
func (*ReportService) Vulnerabilities ¶ added in v1.6.0
func (rs *ReportService) Vulnerabilities(req ReportRequestParams) (*ReportResponse, error)
Vulnerabilities requests a new Xray scan for vulnerabilities
type Repository ¶ added in v1.6.0
type Repository struct {
Name string `json:"name,omitempty"`
}
type RequestScanResponse ¶ added in v0.25.0
type RequestScanResponse struct {
ScanId string `json:"scan_id,omitempty"`
}
type Resource ¶ added in v1.6.0
type Resource struct {
IncludePathPatterns []string `json:"include_path_patterns,omitempty"`
Repositories []Repository `json:"repositories,omitempty"`
}
type Row ¶ added in v1.6.0
type Row struct {
Cves []Cve `json:"cves,omitempty"`
Cvsv2MaxScore float64 `json:"cvss2_max_score,omitempty"`
Cvsv3MaxScore float64 `json:"cvss3_max_score,omitempty"`
Summary string `json:"summary,omitempty"`
Severity string `json:"severity,omitempty"`
SeveritySource string `json:"severity_source,omitempty"`
VulnerableComponent string `json:"vulnerable_component,omitempty"`
ImpactedArtifact string `json:"impacted_artifact,omitempty"`
ImpactPath []string `json:"impact_path,omitempty"`
Path string `json:"path,omitempty"`
FixedVersions []string `json:"fixed_versions,omitempty"`
Published string `json:"published,omitempty"`
IssueId string `json:"issue_id,omitempty"`
PackageType string `json:"package_type,omitempty"`
Provider string `json:"provider,omitempty"`
Description string `json:"description,omitempty"`
References []string `json:"references,omitempty"`
ExternalAdvisorySource string `json:"external_advisory_source,omitempty"`
ExternalAdvisorySeverity string `json:"external_advisory_severity,omitempty"`
}
Row defines an entry of the report content
type ScanResponse ¶ added in v0.25.0
type ScanResponse struct {
ScanId string `json:"scan_id,omitempty"`
Violations []Violation `json:"violations,omitempty"`
Vulnerabilities []Vulnerability `json:"vulnerabilities,omitempty"`
Licenses []License `json:"licenses,omitempty"`
ScannedComponentId string `json:"component_id,omitempty"`
ScannedPackageType string `json:"package_type,omitempty"`
ScannedStatus string `json:"status,omitempty"`
}
type ScanService ¶ added in v0.25.0
type ScanService struct {
XrayDetails auth.ServiceDetails
// contains filtered or unexported fields
}
func NewScanService ¶ added in v0.25.0
func NewScanService(client *jfroghttpclient.JfrogHttpClient) *ScanService
NewScanService creates a new service to scan Binaries and VCS projects.
func (*ScanService) GetScanGraphResults ¶ added in v0.25.0
func (ss *ScanService) GetScanGraphResults(scanId string, includeVulnerabilities, includeLicenses bool) (*ScanResponse, error)
func (*ScanService) ScanGraph ¶ added in v0.25.0
func (ss *ScanService) ScanGraph(scanParams XrayGraphScanParams) (string, error)
type VersionService ¶
type VersionService struct {
XrayDetails auth.ServiceDetails
// contains filtered or unexported fields
}
VersionService returns the https client and Xray details
func NewVersionService ¶
func NewVersionService(client *jfroghttpclient.JfrogHttpClient) *VersionService
NewVersionService creates a new service to retrieve the version of Xray
func (*VersionService) GetVersion ¶
func (vs *VersionService) GetVersion() (string, error)
GetVersion returns the version of Xray
func (*VersionService) GetXrayDetails ¶
func (vs *VersionService) GetXrayDetails() auth.ServiceDetails
GetXrayDetails returns the Xray details
type Violation ¶ added in v0.25.0
type Violation struct {
Summary string `json:"summary,omitempty"`
Severity string `json:"severity,omitempty"`
ViolationType string `json:"type,omitempty"`
Components map[string]Component `json:"components,omitempty"`
WatchName string `json:"watch_name,omitempty"`
IssueId string `json:"issue_id,omitempty"`
Cves []Cve `json:"cves,omitempty"`
References []string `json:"references,omitempty"`
FailBuild bool `json:"fail_build,omitempty"`
LicenseKey string `json:"license_key,omitempty"`
LicenseName string `json:"license_name,omitempty"`
IgnoreUrl string `json:"ignore_url,omitempty"`
}
type Vulnerability ¶ added in v0.25.0
type Vulnerability struct {
Cves []Cve `json:"cves,omitempty"`
Summary string `json:"summary,omitempty"`
Severity string `json:"severity,omitempty"`
VulnerableComponents []string `json:"vulnerable_components,omitempty"`
Components map[string]Component `json:"components,omitempty"`
IssueId string `json:"issue_id,omitempty"`
}
type WatchAlreadyExistsError ¶ added in v0.21.0
type WatchAlreadyExistsError struct {
InnerError error
}
func (*WatchAlreadyExistsError) Error ¶ added in v0.21.0
func (*WatchAlreadyExistsError) Error() string
type WatchService ¶
type WatchService struct {
XrayDetails auth.ServiceDetails
// contains filtered or unexported fields
}
WatchService defines the http client and Xray details
func NewWatchService ¶
func NewWatchService(client *jfroghttpclient.JfrogHttpClient) *WatchService
NewWatchService creates a new Xray Watch Service
func (*WatchService) Create ¶
func (xws *WatchService) Create(params utils.WatchParams) error
Create will create a new Xray watch
func (*WatchService) Delete ¶
func (xws *WatchService) Delete(watchName string) error
Delete will delete an existing watch by name It will error if no watch can be found by that name.
func (*WatchService) Get ¶
func (xws *WatchService) Get(watchName string) (watchResp *utils.WatchParams, err error)
Get retrieves the details about an Xray watch by its name It will error if no watch can be found by that name.
func (*WatchService) GetJfrogHttpClient ¶
func (xws *WatchService) GetJfrogHttpClient() *jfroghttpclient.JfrogHttpClient
GetJfrogHttpClient returns the http client
func (*WatchService) GetXrayDetails ¶
func (vs *WatchService) GetXrayDetails() auth.ServiceDetails
GetXrayDetails returns the Xray details
func (*WatchService) Update ¶
func (xws *WatchService) Update(params utils.WatchParams) error
Update will update an existing Xray watch by name It will error if no watch can be found by that name.
type XrayGraphScanParams ¶ added in v0.25.0
type XrayGraphScanParams struct {
// A path in Artifactory that this Artifact is intended to be deployed to.
// This will provide a way to extract the watches that should be applied on this graph
RepoPath string
ProjectKey string
Watches []string
Graph *GraphNode
ScanType ScanType
}
func NewXrayGraphScanParams ¶ added in v0.25.0
func NewXrayGraphScanParams() XrayGraphScanParams
func (*XrayGraphScanParams) GetProjectKey ¶ added in v0.25.0
func (gp *XrayGraphScanParams) GetProjectKey() string