Files
diun/internal/model/watch.go
CrazyMax b1953afdae Check digest from HEAD request (#217)
* Check digest from HEAD request
* Add FAQ note about Docker Hub rate limits
* Compare digest as watch setting

Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2020-11-12 23:00:01 +00:00

30 lines
992 B
Go

package model
import (
"github.com/crazy-max/diun/v4/pkg/utl"
)
// Watch holds data necessary for watch configuration
type Watch struct {
Workers int `yaml:"workers,omitempty" json:"workers,omitempty" validate:"required,min=1"`
Schedule string `yaml:"schedule,omitempty" json:"schedule,omitempty" validate:"required"`
FirstCheckNotif *bool `yaml:"firstCheckNotif,omitempty" json:"firstCheckNotif,omitempty" validate:"required"`
CompareDigest *bool `yaml:"compareDigest,omitempty" json:"compareDigest,omitempty" validate:"required"`
Healthchecks *Healthchecks `yaml:"healthchecks,omitempty" json:"healthchecks,omitempty"`
}
// GetDefaults gets the default values
func (s *Watch) GetDefaults() *Watch {
n := &Watch{}
n.SetDefaults()
return n
}
// SetDefaults sets the default values
func (s *Watch) SetDefaults() {
s.Workers = 10
s.Schedule = "0 * * * *"
s.FirstCheckNotif = utl.NewFalse()
s.CompareDigest = utl.NewTrue()
}