Documentation
¶
Overview ¶
Package importer provides functionality for importing vulnerability records from various sources.
Index ¶
- Constants
- func Run(ctx context.Context, config Config) error
- func RunDeletions(ctx context.Context, config Config) error
- func Validate(data []byte) error
- type Config
- type RecordFormat
- type RetryableHTTPLeveledLogger
- func (r RetryableHTTPLeveledLogger) Debug(msg string, keysAndValues ...any)
- func (r RetryableHTTPLeveledLogger) Error(msg string, keysAndValues ...any)
- func (r RetryableHTTPLeveledLogger) Info(msg string, keysAndValues ...any)
- func (r RetryableHTTPLeveledLogger) Warn(msg string, keysAndValues ...any)
- type SourceRecord
- type WorkItem
Constants ¶
View Source
const TasksTopic = "tasks"
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct {
NumWorkers int
SourceRepoStore models.SourceRepositoryStore
VulnerabilityStore models.VulnerabilityStore
Publisher clients.Publisher
GCSProvider clients.CloudStorageProvider
HTTPClient *http.Client
GitWorkDir string
StrictValidation bool
DeleteThreshold float64
SampleRate float64
}
type RecordFormat ¶
type RecordFormat int
const ( RecordFormatUnknown RecordFormat = iota RecordFormatJSON RecordFormatYAML )
type RetryableHTTPLeveledLogger ¶
type RetryableHTTPLeveledLogger struct{}
func (RetryableHTTPLeveledLogger) Debug ¶
func (r RetryableHTTPLeveledLogger) Debug(msg string, keysAndValues ...any)
func (RetryableHTTPLeveledLogger) Error ¶
func (r RetryableHTTPLeveledLogger) Error(msg string, keysAndValues ...any)
func (RetryableHTTPLeveledLogger) Info ¶
func (r RetryableHTTPLeveledLogger) Info(msg string, keysAndValues ...any)
func (RetryableHTTPLeveledLogger) Warn ¶
func (r RetryableHTTPLeveledLogger) Warn(msg string, keysAndValues ...any)
type SourceRecord ¶
type SourceRecord interface {
// Open the source record
Open(ctx context.Context) (io.ReadCloser, error)
}
type WorkItem ¶
type WorkItem struct {
// Context is included to propagate tracing spans (links) and cancellation
// across the worker pool. This is a pragmatic choice for batch job processing.
Context context.Context //nolint:containedctx
SourceRecord SourceRecord
SourceRepository string
SourcePath string
Format RecordFormat
KeyPath string
Strict bool
IsDeleted bool
LastUpdated time.Time
HasLastUpdated bool
IsReimport bool
}
Click to show internal directories.
Click to hide internal directories.