34 lines
724 B
Go
34 lines
724 B
Go
package cache
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/future-architect/vuls/config"
|
|
"github.com/future-architect/vuls/models"
|
|
)
|
|
|
|
// DB has a cache instance
|
|
var DB Cache
|
|
|
|
const metabucket = "changelog-meta"
|
|
|
|
// Cache is a interface of cache
|
|
type Cache interface {
|
|
Close() error
|
|
GetMeta(string) (Meta, bool, error)
|
|
RefreshMeta(Meta) error
|
|
EnsureBuckets(Meta) error
|
|
PrettyPrint(Meta) error
|
|
GetChangelog(string, string) (string, error)
|
|
PutChangelog(string, string, string) error
|
|
}
|
|
|
|
// Meta holds a server name, distro information of the scanned server and
|
|
// package information that was collected at the last scan.
|
|
type Meta struct {
|
|
Name string
|
|
Distro config.Distro
|
|
Packs models.Packages
|
|
CreatedAt time.Time
|
|
}
|