marshal nested status field

This commit is contained in:
Felix Kunde 2019-04-09 11:30:12 +02:00
parent 17abf3b5ab
commit 48e184d98e
1 changed files with 2 additions and 2 deletions

View File

@ -159,13 +159,13 @@ func (c *Cluster) setStatus(status acidv1.PostgresClusterStatus) {
c.logger.Errorf("could not marshal status: %v", err)
}
patch := []byte(fmt.Sprintf(`{"Postgres cluster status": %s}`, string(b)))
patch := []byte(fmt.Sprintf(`{"status":{"PostgresClusterStatus": %s}}`, string(b)))
// we cannot do a full scale update here without fetching the previous manifest (as the resourceVersion may differ),
// however, we could do patch without it. In the future, once /status subresource is there (starting Kubernets 1.11)
// we should take advantage of it.
newspec, err := c.KubeClient.AcidV1ClientSet.AcidV1().Postgresqls(c.clusterNamespace()).Patch(c.Name, types.MergePatchType, patch)
if err != nil {
c.logger.Errorf("could not update Postgres cluster status: %v", err)
c.logger.Errorf("could not update status: %v", err)
}
// update the spec, maintaining the new resourceVersion.
c.setSpec(newspec)