Merge pull request #115 from zalando-incubator/database-name-fix

Adding '_' to allowed chars.
This commit is contained in:
Jan Mussler 2017-10-05 11:04:33 +02:00 committed by GitHub
commit bd9b0b613a
2 changed files with 5 additions and 4 deletions

View File

@ -31,6 +31,7 @@ import (
var (
alphaNumericRegexp = regexp.MustCompile("^[a-zA-Z][a-zA-Z0-9]*$")
databaseNameRegexp = regexp.MustCompile("^[a-zA-Z_][a-zA-Z0-9_]*$")
userRegexp = regexp.MustCompile(`^[a-z0-9]([-_a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-_a-z0-9]*[a-z0-9])?)*$`)
)

View File

@ -165,21 +165,21 @@ func (c *Cluster) createDatabases() error {
}
if err := c.initDbConn(); err != nil {
return fmt.Errorf("could not init db connection")
return fmt.Errorf("could not init database connection")
}
defer func() {
if err := c.closeDbConn(); err != nil {
c.logger.Errorf("could not close db connection: %v", err)
c.logger.Errorf("could not close database connection: %v", err)
}
}()
for datname, owner := range newDbs {
if _, ok := c.pgUsers[owner]; !ok {
c.logger.Infof("skipping creationg of the %q database, user %q does not exist", datname, owner)
c.logger.Infof("skipping creation of the %q database, user %q does not exist", datname, owner)
continue
}
if !alphaNumericRegexp.MatchString(datname) {
if !databaseNameRegexp.MatchString(datname) {
c.logger.Infof("database %q has invalid name", datname)
continue
}