Documentation ¶
Index ¶
- Variables
- func Analyse(id string) (v1.LayerEnvelope, error)
- func Asset(name string) ([]byte, error)
- func AssetDir(name string) ([]string, error)
- func AssetInfo(name string) (os.FileInfo, error)
- func AssetNames() []string
- func Config()
- func IsHealthy() bool
- func MustAsset(name string) []byte
- func Push(layer v1.LayerEnvelope) error
- func ReportAsHTML(analyses ImageAnalysis) (string, error)
- func RestoreAsset(dir, name string) error
- func RestoreAssets(dir, name string) error
- func Versions() (interface{}, error)
- type Feature
- type FeatureByVulnerabilities
- type ImageAnalysis
- func (imageAnalysis ImageAnalysis) CountAllVulnerabilities() VulnerabiliesCounts
- func (imageAnalysis ImageAnalysis) CountVulnerabilities(l v1.Layer) int
- func (imageAnalysis ImageAnalysis) ShortName(l v1.Layer) string
- func (imageAnalysis ImageAnalysis) SortLayers() []Layer
- func (imageAnalysis ImageAnalysis) SortVulnerabilities() []Vulnerability
- func (imageAnalysis ImageAnalysis) String() string
- type Layer
- type LayerByVulnerabilities
- type LayerError
- type ReportConfig
- type VulnerabiliesCounts
- type VulnerabilitiesBySeverity
- type Vulnerability
Constants ¶
This section is empty.
Variables ¶
var (
OSNotSupported = errors.New(oSNotSupportedValue)
)
Functions ¶
func Analyse ¶
func Analyse(id string) (v1.LayerEnvelope, error)
Analyse get Analysis os specified layer
func Asset ¶
Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetDir ¶
AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:
data/ foo.txt img/ a.png b.png
then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.
func AssetInfo ¶
AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.
func MustAsset ¶
MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.
func ReportAsHTML ¶
func ReportAsHTML(analyses ImageAnalysis) (string, error)
ReportAsHTML report analysis as HTML
func RestoreAsset ¶
RestoreAsset restores an asset under the given directory
func RestoreAssets ¶
RestoreAssets restores an asset under the given directory recursively
Types ¶
type Feature ¶
type Feature struct { Name string Version string Vulnerabilities []Vulnerability }
Feature : A feature inteface
type FeatureByVulnerabilities ¶
type FeatureByVulnerabilities []Feature
FeatureByVulnerabilities sorting off features by vulnerabilities
func (FeatureByVulnerabilities) Len ¶
func (a FeatureByVulnerabilities) Len() int
func (FeatureByVulnerabilities) Less ¶
func (a FeatureByVulnerabilities) Less(i, j int) bool
func (FeatureByVulnerabilities) Swap ¶
func (a FeatureByVulnerabilities) Swap(i, j int)
type ImageAnalysis ¶
type ImageAnalysis struct { Registry string ImageName string Tag string Layers []v1.LayerEnvelope }
ImageAnalysis Full image analysis
func (ImageAnalysis) CountAllVulnerabilities ¶
func (imageAnalysis ImageAnalysis) CountAllVulnerabilities() VulnerabiliesCounts
CountAllVulnerabilities Total count of vulnerabilities
func (ImageAnalysis) CountVulnerabilities ¶
func (imageAnalysis ImageAnalysis) CountVulnerabilities(l v1.Layer) int
CountVulnerabilities counts all image vulnerability
func (ImageAnalysis) SortLayers ¶
func (imageAnalysis ImageAnalysis) SortLayers() []Layer
SortLayers give layers ordered by vulnerability algorithm
func (ImageAnalysis) SortVulnerabilities ¶
func (imageAnalysis ImageAnalysis) SortVulnerabilities() []Vulnerability
SortVulnerabilities get all vulnerabilities sorted by Severity
func (ImageAnalysis) String ¶
func (imageAnalysis ImageAnalysis) String() string
type LayerByVulnerabilities ¶
type LayerByVulnerabilities []Layer
LayerByVulnerabilities sorting of layers by global vulnerability
func (LayerByVulnerabilities) Len ¶
func (a LayerByVulnerabilities) Len() int
func (LayerByVulnerabilities) Less ¶
func (a LayerByVulnerabilities) Less(i, j int) bool
func (LayerByVulnerabilities) Swap ¶
func (a LayerByVulnerabilities) Swap(i, j int)
type LayerError ¶
type LayerError struct {
Message string
}
type ReportConfig ¶
ReportConfig Reporting configuration
var Report ReportConfig
Report Reporting Config value
type VulnerabiliesCounts ¶
type VulnerabiliesCounts struct { Total int Unknown, Negligible, Low, Medium, High, Critical, Defcon1 int TotalFeatures int SafeFeatures int UnsafeFeatures int }
VulnerabiliesCounts Total count of vulnerabilities
func (VulnerabiliesCounts) RelativeCount ¶
func (vulnerabilityCount VulnerabiliesCounts) RelativeCount(severity string, useFeatureNumber bool) float64
RelativeCount get the percentage of vulnerabilities of a severity
type VulnerabilitiesBySeverity ¶
type VulnerabilitiesBySeverity []Vulnerability
VulnerabilitiesBySeverity sorting vulnerabilities by severity
func (VulnerabilitiesBySeverity) Len ¶
func (a VulnerabilitiesBySeverity) Len() int
func (VulnerabilitiesBySeverity) Less ¶
func (a VulnerabilitiesBySeverity) Less(i, j int) bool
func (VulnerabilitiesBySeverity) Swap ¶
func (a VulnerabilitiesBySeverity) Swap(i, j int)
type Vulnerability ¶
type Vulnerability struct {
Name, Severity, IntroduceBy, Description, Link, Layer string
}
Vulnerability : A vulnerability inteface
func (Vulnerability) Weight ¶
func (v Vulnerability) Weight() int
Weight get the weight of the vulnerability according to its Severity