psegedy / vmaas-lib

VMaaS library for Updates and Vulnerabilities evaluation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Vmaas-lib

VMaaS library for Updates and Vulnerabilities evaluation

Prerequisites

sqlite data dump generated by vmaas-reposcan /api/vmaas/v1/export/dump

available in examples/vmaas.db for testing purposes

Usage

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)

About

VMaaS library for Updates and Vulnerabilities evaluation

License:GNU General Public License v3.0


Languages

Language:Go 92.7%Language:Shell 5.2%Language:Dockerfile 2.2%