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, err := vmaas.InitFromURL("http://example.com/dump.db")
if err != nil {
panic(err)
}
// 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, _ := request.Vulnerabilities(api.Cache)
// get Updates for given package
updates, _ := request.Updates(api.Cache)