Create new databases and change owners of existing ones during sync. (#153)

* Create new databases and change owners of existing ones during sync.
This commit is contained in:
Oleksii Kliukin
2017-11-02 17:46:33 +01:00
committed by GitHub
parent d3679bfd4a
commit ce960e892a
4 changed files with 116 additions and 51 deletions
+24
View File
@@ -557,3 +557,27 @@ func (c *Cluster) GetStatefulSet() *v1beta1.StatefulSet {
func (c *Cluster) GetPodDisruptionBudget() *policybeta1.PodDisruptionBudget {
return c.PodDisruptionBudget
}
func (c *Cluster) createDatabases() error {
c.setProcessName("creating databases")
if len(c.Spec.Databases) == 0 {
return nil
}
if err := c.initDbConn(); err != nil {
return fmt.Errorf("could not init database connection")
}
defer func() {
if err := c.closeDbConn(); err != nil {
c.logger.Errorf("could not close database connection: %v", err)
}
}()
for datname, owner := range c.Spec.Databases {
if err := c.executeCreateDatabase(datname, owner); err != nil {
return err
}
}
return nil
}