Files
kube-forge/internal/config/modules_secrets_storage.go

48 lines
1.9 KiB
Go

package config
type SecretsStorage struct {
ChartRef string `yaml:"chart_ref" env-default:"kube-forge/vault"`
ChartVersion string `yaml:"chart_version" env-default:"0.1.0"`
Enabled bool `yaml:"enabled"`
KeyShares int `yaml:"key_shares" env-default:"5"`
KeyThreshold int `yaml:"key_threshold" env-default:"3"`
UnsealKeys []string `yaml:"unseal_keys" env-default:"[]"`
AuthToken string `yaml:"auth_token" env-default:""`
Expose struct {
Type string `yaml:"type"`
Domain string `yaml:"domain"`
Path string `yaml:"path" env-default:"/"`
NodePort int `yaml:"node_port"`
Tls struct {
Enabled bool `yaml:"enabled"`
} `yaml:"tls"`
} `yaml:"expose"`
CsiIntegration struct {
Enabled bool `yaml:"enabled"`
Image string `yaml:"image" env-default:"harbor.kvazaric.ru/kube-forge/hashicorp/vault-csi-provider"`
Tag string `yaml:"tag" env-default:"1.4.1"`
} `yaml:"csi_integration"`
Injector struct {
Image string `yaml:"image" env-default:"harbor.kvazaric.ru/kube-forge/hashicorp/vault-k8s"`
Tag string `yaml:"tag" env-default:"1.3.1"`
} `yaml:"injector"`
Server struct {
Image string `yaml:"image" env-default:"harbor.kvazaric.ru/kube-forge/hashicorp/vault"`
Tag string `yaml:"tag" env-default:"1.16.0"`
Persistence struct {
DataStorage struct {
StorageClass string `yaml:"storage_class" env-default:"local-path"`
Size string `yaml:"size" env-default:"10Gi"`
} `yaml:"data_storage"`
AuditStorage struct {
StorageClass string `yaml:"storage_class" env-default:"local-path"`
Size string `yaml:"size" env-default:"10Gi"`
} `yaml:"audit_storage"`
} `yaml:"persistence"`
} `yaml:"server"`
Agent struct {
Image string `yaml:"image" env-default:"harbor.kvazaric.ru/kube-forge/hashicorp/vault"`
Tag string `yaml:"tag" env-default:"1.16.0"`
} `yaml:"agent"`
}