remove regex hostname parsing (#67)
All checks were successful
continuous-integration/drone/push Build is passing

Drop regex validation for postgres hostname, because it was breaking when running in a docker-compose stack where hostnames can be just one word.

If necessary this can be added in again later, but it probably won't be necessary because it doesn't actually add anything useful!
This commit is contained in:
Tobi Smethurst 2021-06-26 20:59:38 +02:00 committed by decentral1se
parent f16ba8821d
commit db43e381dc
No known key found for this signature in database
GPG Key ID: 5E2EF5A63E3718CC

View File

@ -26,7 +26,6 @@ import (
"fmt"
"net"
"net/mail"
"regexp"
"strings"
"time"
@ -48,7 +47,6 @@ type postgresService struct {
conn *pg.DB
log *logrus.Logger
cancel context.CancelFunc
// federationDB pub.Database
}
// NewPostgresService returns a postgresService derived from the provided config, which implements the go-fed DB interface.
@ -120,12 +118,6 @@ func derivePGOptions(c *config.Config) (*pg.Options, error) {
return nil, errors.New("no address set")
}
ipv4Regex := regexp.MustCompile(`^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$`)
hostnameRegex := regexp.MustCompile(`^(?:[a-z0-9]+(?:-[a-z0-9]+)*\.)+[a-z]{2,}$`)
if !hostnameRegex.MatchString(c.DBConfig.Address) && !ipv4Regex.MatchString(c.DBConfig.Address) && c.DBConfig.Address != "localhost" {
return nil, fmt.Errorf("address %s was neither an ipv4 address nor a valid hostname", c.DBConfig.Address)
}
// validate username
if c.DBConfig.User == "" {
return nil, errors.New("no user set")