Compare commits

...

3 Commits

Author SHA1 Message Date
Felix Kunde 5dcd0283bd
Merge 90314537cd into 1af4c50ed0 2025-10-24 15:38:05 +00:00
Felix Kunde 90314537cd lets collect errors of syncSecret so we still get status updateFailed 2025-10-24 17:37:56 +02:00
Felix Kunde c53630dac1 need to add new pgUser field to e2e test 2025-10-24 15:51:11 +02:00
2 changed files with 12 additions and 6 deletions

View File

@ -1003,7 +1003,8 @@ class EndToEndTestCase(unittest.TestCase):
"Origin": 2, "Origin": 2,
"IsDbOwner": False, "IsDbOwner": False,
"Deleted": False, "Deleted": False,
"Rotated": False "Rotated": False,
"Degraded": False,
}) })
return True return True
except: except:

View File

@ -1059,6 +1059,7 @@ func (c *Cluster) syncStandbyClusterConfiguration() error {
func (c *Cluster) syncSecrets() error { func (c *Cluster) syncSecrets() error {
c.logger.Debug("syncing secrets") c.logger.Debug("syncing secrets")
c.setProcessName("syncing secrets") c.setProcessName("syncing secrets")
errors := make([]string, 0)
generatedSecrets := c.generateUserSecrets() generatedSecrets := c.generateUserSecrets()
retentionUsers := make([]string, 0) retentionUsers := make([]string, 0)
currentTime := time.Now() currentTime := time.Now()
@ -1077,10 +1078,10 @@ func (c *Cluster) syncSecrets() error {
c.Secrets[updatedSecret.UID] = updatedSecret c.Secrets[updatedSecret.UID] = updatedSecret
continue continue
} }
c.logger.Warningf("syncing secret %s failed: %v", util.NameFromMeta(updatedSecret.ObjectMeta), err) errors = append(errors, fmt.Sprintf("syncing secret %s failed: %v", util.NameFromMeta(updatedSecret.ObjectMeta), err))
pgUserDegraded = true pgUserDegraded = true
} else { } else {
c.logger.Warningf("could not create secret for user %s: in namespace %s: %v", secretUsername, generatedSecret.Namespace, err) errors = append(errors, fmt.Sprintf("could not create secret for user %s: in namespace %s: %v", secretUsername, generatedSecret.Namespace, err))
pgUserDegraded = true pgUserDegraded = true
} }
c.updatePgUser(secretUsername, pgUserDegraded) c.updatePgUser(secretUsername, pgUserDegraded)
@ -1090,16 +1091,20 @@ func (c *Cluster) syncSecrets() error {
if len(retentionUsers) > 0 { if len(retentionUsers) > 0 {
err := c.initDbConn() err := c.initDbConn()
if err != nil { if err != nil {
return fmt.Errorf("could not init db connection: %v", err) errors = append(errors, fmt.Sprintf("could not init db connection: %v", err))
} }
if err = c.cleanupRotatedUsers(retentionUsers, c.pgDb); err != nil { if err = c.cleanupRotatedUsers(retentionUsers, c.pgDb); err != nil {
return fmt.Errorf("error removing users exceeding configured retention interval: %v", err) errors = append(errors, fmt.Sprintf("error removing users exceeding configured retention interval: %v", err))
} }
if err := c.closeDbConn(); err != nil { if err := c.closeDbConn(); err != nil {
c.logger.Errorf("could not close database connection after removing users exceeding configured retention interval: %v", err) errors = append(errors, fmt.Sprintf("could not close database connection after removing users exceeding configured retention interval: %v", err))
} }
} }
if len(errors) > 0 {
return fmt.Errorf("%v", strings.Join(errors, `', '`))
}
return nil return nil
} }