X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/e99f026d040c6020dfcc51c6d988cf18d325a530..a0080bdf353bcc107eb80a5755958c6c276d49eb:/lib/config/load.go diff --git a/lib/config/load.go b/lib/config/load.go index 248960beb9..956a47b1a4 100644 --- a/lib/config/load.go +++ b/lib/config/load.go @@ -295,6 +295,7 @@ func (ldr *Loader) Load() (*arvados.Config, error) { ldr.checkToken(fmt.Sprintf("Clusters.%s.SystemRootToken", id), cc.SystemRootToken), ldr.checkToken(fmt.Sprintf("Clusters.%s.Collections.BlobSigningKey", id), cc.Collections.BlobSigningKey), checkKeyConflict(fmt.Sprintf("Clusters.%s.PostgreSQL.Connection", id), cc.PostgreSQL.Connection), + ldr.checkEnum("Containers.LocalKeepLogsToContainerLog", cc.Containers.LocalKeepLogsToContainerLog, "none", "all", "errors"), ldr.checkEmptyKeepstores(cc), ldr.checkUnlistedKeepstores(cc), ldr.checkStorageClasses(cc), @@ -338,6 +339,15 @@ func (ldr *Loader) checkToken(label, token string) error { return nil } +func (ldr *Loader) checkEnum(label, value string, accepted ...string) error { + for _, s := range accepted { + if s == value { + return nil + } + } + return fmt.Errorf("%s: unacceptable value %q: must be one of %q", label, value, accepted) +} + func (ldr *Loader) setImplicitStorageClasses(cfg *arvados.Config) error { cluster: for id, cc := range cfg.Clusters {