Files
diun/internal/model/image.go
CrazyMax 9c797f1616 Review of platform detection (#56)
* Leave default image platform empty for static provider (see FAQ doc)
* Handle platform variant
* Add database migration process
* Switch to Open Container Specification labels as label-schema.org ones are deprecated
* Remove unneeded `diun.os` and `diun.arch` docker labels

Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2020-03-31 23:27:10 +02:00

30 lines
1.1 KiB
Go

package model
// Image holds image configuration
type Image struct {
Name string `yaml:"name,omitempty" json:",omitempty"`
Platform ImagePlatform `yaml:"platform,omitempty" json:",omitempty"`
RegOptsID string `yaml:"regopts_id,omitempty" json:",omitempty"`
WatchRepo bool `yaml:"watch_repo,omitempty" json:",omitempty"`
MaxTags int `yaml:"max_tags,omitempty" json:",omitempty"`
IncludeTags []string `yaml:"include_tags,omitempty" json:",omitempty"`
ExcludeTags []string `yaml:"exclude_tags,omitempty" json:",omitempty"`
}
// ImagePlatform holds image platform configuration
type ImagePlatform struct {
Os string `yaml:"os,omitempty" json:",omitempty"`
Arch string `yaml:"arch,omitempty" json:",omitempty"`
Variant string `yaml:"variant,omitempty" json:",omitempty"`
}
// Image status constants
const (
ImageStatusNew = ImageStatus("new")
ImageStatusUpdate = ImageStatus("update")
ImageStatusUnchange = ImageStatus("unchange")
)
// ImageStatus holds Docker image status analysis
type ImageStatus string