Files
diun/internal/model/regopts.go
CrazyMax 349917e7e4 Configuration transposed into environment variables (#82)
Configuration file not required anymore
DIUN_DB env var renamed DIUN_DB_PATH
Only accept duration as timeout value (10 becomes 10s)
Add getting started doc
Enhanced documentation
Add note about test notifications (#79)
Improve configuration management
Fix telegram init
All fields in configuration now camelCased
Improve configuration validation
Update doc
Update FAQ

Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2020-06-07 19:58:49 +00:00

31 lines
1.1 KiB
Go

package model
import (
"time"
"github.com/crazy-max/diun/v3/pkg/utl"
)
// RegOpts holds registry options configuration
type RegOpts struct {
Username string `yaml:"username,omitempty" json:"username,omitempty" validate:"omitempty"`
UsernameFile string `yaml:"usernameFile,omitempty" json:"usernameFile,omitempty" validate:"omitempty,file"`
Password string `yaml:"password,omitempty" json:"password,omitempty" validate:"omitempty"`
PasswordFile string `yaml:"passwordFile,omitempty" json:"passwordFile,omitempty" validate:"omitempty,file"`
InsecureTLS *bool `yaml:"insecureTls,omitempty" json:"insecureTls,omitempty" validate:"required"`
Timeout *time.Duration `yaml:"timeout,omitempty" json:"timeout,omitempty" validate:"required"`
}
// GetDefaults gets the default values
func (s *RegOpts) GetDefaults() *RegOpts {
n := &RegOpts{}
n.SetDefaults()
return n
}
// SetDefaults sets the default values
func (s *RegOpts) SetDefaults() {
s.InsecureTLS = utl.NewFalse()
s.Timeout = utl.NewDuration(10 * time.Second)
}