MCPcopy
hub / github.com/derailed/k9s / Init

Method Init

internal/vul/scanner.go:84–116  ·  view source on GitHub ↗

Init initializes image vulnerability database.

(name, version string)

Source from the content-addressed store, hash-verified

82
83// Init initializes image vulnerability database.
84func (s *imageScanner) Init(name, version string) {
85 defer func(t time.Time) {
86 slog.Debug("VulDb initialization complete",
87 slogs.Elapsed, time.Since(t),
88 )
89 }(time.Now())
90
91 opts := options.DefaultGrype(clio.Identification{Name: name, Version: version})
92 opts.GenerateMissingCPEs = true
93
94 provider, status, err := grype.LoadVulnerabilityDB(
95 opts.ToClientConfig(),
96 opts.ToCuratorConfig(),
97 opts.DB.AutoUpdate,
98 )
99 if err != nil {
100 s.log.Error("VulDb load failed", slogs.Error, err)
101 return
102 }
103 s.mx.Lock()
104 s.opts, s.provider, s.status = opts, provider, status
105 s.mx.Unlock()
106
107 if e := validateDBLoad(err, status); e != nil {
108 s.log.Error("VulDb validate failed", slogs.Error, e)
109 return
110 }
111
112 s.mx.Lock()
113 s.initialized = true
114 s.mx.Unlock()
115 slog.Debug("VulDB initialized")
116}
117
118// Stop closes scan database.
119func (s *imageScanner) Stop() {

Callers

nothing calls this directly

Calls 2

validateDBLoadFunction · 0.85
ErrorMethod · 0.45

Tested by

no test coverage detected