pass cluster labels as JSON to Spilo (#877)

This commit is contained in:
Felix Kunde 2020-03-25 09:59:54 +01:00 committed by GitHub
parent cc1ffdc7b6
commit 579f78864b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 4 deletions

View File

@ -549,10 +549,6 @@ func (c *Cluster) generateSpiloPodEnvVars(uid types.UID, spiloConfiguration stri
Name: "KUBERNETES_ROLE_LABEL", Name: "KUBERNETES_ROLE_LABEL",
Value: c.OpConfig.PodRoleLabel, Value: c.OpConfig.PodRoleLabel,
}, },
{
Name: "KUBERNETES_LABELS",
Value: labels.Set(c.OpConfig.ClusterLabels).String(),
},
{ {
Name: "PGPASSWORD_SUPERUSER", Name: "PGPASSWORD_SUPERUSER",
ValueFrom: &v1.EnvVarSource{ ValueFrom: &v1.EnvVarSource{
@ -588,6 +584,12 @@ func (c *Cluster) generateSpiloPodEnvVars(uid types.UID, spiloConfiguration stri
Value: c.OpConfig.PamRoleName, Value: c.OpConfig.PamRoleName,
}, },
} }
// Spilo expects cluster labels as JSON
if clusterLabels, err := json.Marshal(labels.Set(c.OpConfig.ClusterLabels)); err != nil {
envVars = append(envVars, v1.EnvVar{Name: "KUBERNETES_LABELS", Value: labels.Set(c.OpConfig.ClusterLabels).String()})
} else {
envVars = append(envVars, v1.EnvVar{Name: "KUBERNETES_LABELS", Value: string(clusterLabels)})
}
if spiloConfiguration != "" { if spiloConfiguration != "" {
envVars = append(envVars, v1.EnvVar{Name: "SPILO_CONFIGURATION", Value: spiloConfiguration}) envVars = append(envVars, v1.EnvVar{Name: "SPILO_CONFIGURATION", Value: spiloConfiguration})
} }