diff options
Diffstat (limited to 'internal/config/validate.go')
-rw-r--r-- | internal/config/validate.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/internal/config/validate.go b/internal/config/validate.go index 866ec1be1..2735a9229 100644 --- a/internal/config/validate.go +++ b/internal/config/validate.go @@ -67,6 +67,19 @@ func Validate() error { errs = append(errs, fmt.Errorf("%s must be set", WebAssetBaseDirFlag())) } + tlsChain := GetTLSCertificateChain() + tlsKey := GetTLSCertificateKey() + tlsChainFlag := TLSCertificateChainFlag() + tlsKeyFlag := TLSCertificateKeyFlag() + + if GetLetsEncryptEnabled() && (tlsChain != "" || tlsKey != "") { + errs = append(errs, fmt.Errorf("%s cannot be enabled when %s and/or %s are also set", LetsEncryptEnabledFlag(), tlsChainFlag, tlsKeyFlag)) + } + + if (tlsChain != "" && tlsKey == "") || (tlsChain == "" && tlsKey != "") { + errs = append(errs, fmt.Errorf("%s and %s need to both be set or unset", tlsChainFlag, tlsKeyFlag)) + } + if len(errs) > 0 { errStrings := []string{} for _, err := range errs { |