wisski-cloud-distillery/internal/config/validators/domain.go
Tom Wiesing 945329a080
Move to yaml-based configuration
This commit updates the configuration to be yaml-based and updates the
configuration to read in a yaml file.
2023-02-25 09:14:56 +01:00

21 lines
461 B
Go

package validators
import (
"regexp"
"strings"
"github.com/pkg/errors"
)
var regexpDomain = regexp.MustCompile(`^([a-zA-Z0-9][-a-zA-Z0-9]*\.)*[a-zA-Z0-9][-a-zA-Z0-9]*$`) // TODO: Make this regexp nicer!
func ValidateDomain(domain *string, dflt string) error {
if *domain == "" {
*domain = dflt
}
if !regexpDomain.MatchString(*domain) {
return errors.Errorf("%q is not a valid domain", *domain)
}
*domain = strings.ToLower(*domain)
return nil
}