Documentation
¶
Index ¶
- func NewAgentSkillScanner(config AgentSkillScannerConfig, reader readers.PackageManifestReader, ...) *agentSkillScanner
- func NewCodeAnalysisEnricher(config CodeAnalysisEnricherConfig, readerRepository code.ReaderRepository) *codeAnalysisEnricher
- func NewMalysisMalwareAnalysisQueryEnricher(cc *grpc.ClientConn, gha *adapters.GithubClient, ...) (*malysisMalwareAnalysisQueryEnricher, error)
- func NewMalysisMalwareEnricher(cc *grpc.ClientConn, gha *adapters.GithubClient, ...) (*malysisMalwareEnricher, error)
- func NewPackageManifestScanner(config Config, readers []readers.PackageManifestReader, ...) *packageManifestScanner
- type AgentSkillScannerConfig
- type CodeAnalysisEnricherConfig
- type Config
- type InsightsBasedPackageMetaEnricherConfig
- type MalysisMalwareEnricherConfig
- type PackageDependencyCallbackFn
- type PackageMetaEnricher
- type ScannerCallbackErrArgFn
- type ScannerCallbackNoArgFn
- type ScannerCallbackOnManifestFn
- type ScannerCallbackOnPackageFn
- type ScannerCallbacks
- type SkillScannerCallbacks
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewAgentSkillScanner ¶ added in v1.12.17
func NewAgentSkillScanner( config AgentSkillScannerConfig, reader readers.PackageManifestReader, enricher PackageMetaEnricher, analyzer analyzer.Analyzer, reporters []reporter.Reporter, ) *agentSkillScanner
NewAgentSkillScanner creates a new scanner for Agent Skills
func NewCodeAnalysisEnricher ¶ added in v1.9.2
func NewCodeAnalysisEnricher(config CodeAnalysisEnricherConfig, readerRepository code.ReaderRepository) *codeAnalysisEnricher
func NewMalysisMalwareAnalysisQueryEnricher ¶ added in v1.10.1
func NewMalysisMalwareAnalysisQueryEnricher(cc *grpc.ClientConn, gha *adapters.GithubClient, config MalysisMalwareEnricherConfig, ) (*malysisMalwareAnalysisQueryEnricher, error)
NewMalysisMalwareAnalysisQueryEnricher creates a new malware analysis query enricher. We are re-using the config from the malware enricher because this enricher is a subset of the malware enricher.
func NewMalysisMalwareEnricher ¶ added in v1.9.0
func NewMalysisMalwareEnricher(cc *grpc.ClientConn, gha *adapters.GithubClient, config MalysisMalwareEnricherConfig, ) (*malysisMalwareEnricher, error)
func NewPackageManifestScanner ¶
func NewPackageManifestScanner(config Config, readers []readers.PackageManifestReader, enrichers []PackageMetaEnricher, analyzers []analyzer.Analyzer, reporters []reporter.Reporter, ) *packageManifestScanner
Types ¶
type AgentSkillScannerConfig ¶ added in v1.12.17
type AgentSkillScannerConfig struct {
}
AgentSkillScannerConfig configures the skill scanner
func DefaultAgentSkillScannerConfig ¶ added in v1.12.17
func DefaultAgentSkillScannerConfig() AgentSkillScannerConfig
DefaultAgentSkillScannerConfig returns the default configuration
type CodeAnalysisEnricherConfig ¶ added in v1.9.2
type CodeAnalysisEnricherConfig struct {
EnableDepsUsageEvidence bool
}
type InsightsBasedPackageMetaEnricherConfig ¶ added in v1.4.0
type MalysisMalwareEnricherConfig ¶ added in v1.9.0
type MalysisMalwareEnricherConfig struct {
// Timeout for the enricher starting from the time of initialization.
// This includes the time taken to submit the package for analysis and
// waiting for the analysis to complete.
Timeout time.Duration
// Timeout for the gRPC operation to the Malysis service. This timeout
// is for a single gRPC operation.
GrpcOperationTimeout time.Duration
// Number of workers to poll the analysis results
QueryWorkerCount int
// Maximum number of retries for querying the analysis results for a given
// analysis identifier.
MaxQueryRetries int
}
func DefaultMalysisMalwareEnricherConfig ¶ added in v1.9.0
func DefaultMalysisMalwareEnricherConfig() MalysisMalwareEnricherConfig
type PackageDependencyCallbackFn ¶
Callback to receive a discovery package dependency
type PackageMetaEnricher ¶
type PackageMetaEnricher interface {
// Name of the enricher
Name() string
// Enrich the package with meta information
Enrich(pkg *models.Package, cb PackageDependencyCallbackFn) error
// Wait for all the enrichments to complete
Wait() error
}
Enrich meta information associated with the package
func NewInsightBasedPackageEnricher ¶
func NewInsightBasedPackageEnricher(config InsightsBasedPackageMetaEnricherConfig) (PackageMetaEnricher, error)
func NewInsightBasedPackageEnricherV2 ¶ added in v1.8.3
func NewInsightBasedPackageEnricherV2(cc *grpc.ClientConn) (PackageMetaEnricher, error)
NewInsightBasedPackageEnricherV2 creates a new instance of the enricher using Insights API v2. It requires a pre-configured gRPC client connection.
type ScannerCallbackErrArgFn ¶
type ScannerCallbackErrArgFn func(error)
type ScannerCallbackNoArgFn ¶
type ScannerCallbackNoArgFn func()
type ScannerCallbackOnManifestFn ¶
type ScannerCallbackOnManifestFn func(manifest *models.PackageManifest)
type ScannerCallbacks ¶
type ScannerCallbacks struct {
OnStartEnumerateManifest ScannerCallbackNoArgFn // Manifest enumeration is starting
OnEnumerateManifest ScannerCallbackOnManifestFn // A manifest is read by reader
OnStart ScannerCallbackNoArgFn // Manifest scan phase is starting
OnStartManifest ScannerCallbackOnManifestFn // A manifest is starting to be scanned
OnStartPackage ScannerCallbackOnPackageFn // A package analysis is starting
OnAddTransitivePackage ScannerCallbackOnPackageFn // A transitive dependency is discovered
OnDonePackage ScannerCallbackOnPackageFn // A package analysis is finished
OnDoneManifest ScannerCallbackOnManifestFn // A manifest analysis is finished
BeforeFinish ScannerCallbackNoArgFn // Scan is about to finish
OnStop ScannerCallbackErrArgFn // Scan is finished
}
type SkillScannerCallbacks ¶ added in v1.12.17
type SkillScannerCallbacks struct {
OnStart ScannerCallbackNoArgFn // Scanner is starting
OnStartEnrich ScannerCallbackNoArgFn // Beginning skill enrichment (malware analysis submission)
OnDoneEnrich ScannerCallbackNoArgFn // Enrichment completed
OnStartAnalyze ScannerCallbackNoArgFn // Beginning malware analysis
OnDoneAnalyze ScannerCallbackNoArgFn // Analysis completed
OnStartReport ScannerCallbackNoArgFn // Beginning report generation
OnDoneReport ScannerCallbackNoArgFn // Report generation completed
OnStop ScannerCallbackErrArgFn // Scanner is stopping (with optional error)
}
SkillScannerCallbacks defines callback functions for skill scanner lifecycle events This allows decoupling the scanner from UI/progress tracking concerns