VMaaS library for Updates and Vulnerabilities evaluation
sqlite data dump generated by vmaas-reposcan /api/vmaas/v1/export/dump
available in examples/vmaas.db for testing purposes
import "github.com/redhatinsights/vmaas-lib/vmaas"
// download and initialize cache from URL, rsync (or from file using vmaas.InitFromFile)
api, _ := vmaas.InitFromURL("http://example.com/dump.db")
// you can specify options for the library, see options.go
api, _ := vmaas.InitFromURL("http://example.com/dump.db", WithUnfixed(true), WithMaxGoroutines(100))
// run periodic cache reload task
api.PeriodicCacheReload(
// check for newer cache every 5 minutes
time.Minute*time.Duration(5),
// get timestamp of the latest vmaas-reposcan cache
fmt.Sprintf("http://localhost:8081/api/v1/latestdump"),
// override cache url, or use url from InitFromUrl
nil,
)
request := vmaas.Request{
Packages: []string{"kernel-0:4.18.0-372.26.1.el8_6.x86_64"},
}
// get CVEs for given package
vulnerabilities, _ := api.Vulnerabilities(request)
// get Updates for given package
updates, _ := api.Updates(request)