config

package
v1.7.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 30, 2023 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CredentialConfig

type CredentialConfig struct {
	Name         string `yaml:"name,omitempty" validate:"required"`
	TenantID     string `yaml:"tenantID,omitempty" validate:"required"`
	ClientID     string `yaml:"clientID,omitempty" validate:"required"`
	ClientSecret string `yaml:"clientSecret,omitempty" validate:"required"`
}

type ResourceConfig

type ResourceConfig struct {
	Alias        string       `yaml:"alias,omitempty"`
	Credential   string       `yaml:"credential,omitempty"`
	Kind         ResourceKind `yaml:"kind,omitempty" validate:"required,oneof=cert key secret all-secrets"`
	Name         string       `yaml:"name"`
	VaultBaseURL string       `yaml:"vaultBaseURL,omitempty" validate:"required,url"`
	Version      string       `yaml:"version,omitempty"`
}

type ResourceKind

type ResourceKind string
const (
	CertKind       ResourceKind = "cert"
	KeyKind        ResourceKind = "key"
	SecretKind     ResourceKind = "secret"
	AllSecretsKind ResourceKind = "all-secrets"
)

type SinkConfig

type SinkConfig struct {
	Path         string `yaml:"path,omitempty" validate:"required"`
	Template     string `yaml:"template,omitempty"`
	TemplatePath string `yaml:"templatePath,omitempty"`
	Owner        string `yaml:"owner,omitempty" validate:"required_with=Group"`
	Group        string `yaml:"group,omitempty" validate:"required_with=Owner"`
	Mode         string `yaml:"mode,omitempty" validate:"fileMode"`

	// Hold update values when parsed
	UID      uint32
	GID      uint32
	FileMode os.FileMode
}

type WorkerConfig

type WorkerConfig struct {
	Resources     []ResourceConfig `yaml:"resources" validate:"required,dive,required"`
	Frequency     string           `yaml:"frequency,omitempty"`
	TimeFrequency time.Duration    `yaml:"timefrequency" validate:"-"`
	PreChange     string           `yaml:"preChange,omitempty"`
	PostChange    string           `yaml:"postChange,omitempty"`
	Sinks         []SinkConfig     `yaml:"sinks" validate:"required,dive,required"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL