@@ -9,24 +9,23 @@ import (
99 "strings"
1010
1111 "github.com/sirupsen/logrus"
12-
13- appsv1 "k8s.io/api/apps/v1"
14- v1 "k8s.io/api/core/v1"
15- policybeta1 "k8s.io/api/policy/v1beta1"
16- "k8s.io/apimachinery/pkg/api/resource"
17- metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
18- "k8s.io/apimachinery/pkg/types"
19- "k8s.io/apimachinery/pkg/util/intstr"
20-
12+ acidzalando "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do"
2113 acidv1 "github.com/zalando/postgres-operator/pkg/apis/acid.zalan.do/v1"
2214 "github.com/zalando/postgres-operator/pkg/spec"
2315 "github.com/zalando/postgres-operator/pkg/util"
2416 "github.com/zalando/postgres-operator/pkg/util/config"
2517 "github.com/zalando/postgres-operator/pkg/util/constants"
2618 "github.com/zalando/postgres-operator/pkg/util/k8sutil"
19+ appsv1 "k8s.io/api/apps/v1"
2720 batchv1 "k8s.io/api/batch/v1"
2821 batchv1beta1 "k8s.io/api/batch/v1beta1"
22+ v1 "k8s.io/api/core/v1"
23+ policybeta1 "k8s.io/api/policy/v1beta1"
24+ "k8s.io/apimachinery/pkg/api/resource"
25+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2926 "k8s.io/apimachinery/pkg/labels"
27+ "k8s.io/apimachinery/pkg/types"
28+ "k8s.io/apimachinery/pkg/util/intstr"
3029)
3130
3231const (
@@ -859,28 +858,29 @@ func deduplicateEnvVars(input []v1.EnvVar, containerName string, logger *logrus.
859858 return result
860859}
861860
862- // Return list of variables the pod recieved from the configured ConfigMap
861+ // Return list of variables the pod received from the configured ConfigMap
863862func (c * Cluster ) getPodEnvironmentConfigMapVariables () ([]v1.EnvVar , error ) {
864863 configMapPodEnvVarsList := make ([]v1.EnvVar , 0 )
865864
866865 if c .OpConfig .PodEnvironmentConfigMap .Name == "" {
867866 return configMapPodEnvVarsList , nil
868867 }
869868
869+ configMapName := c .podEnvironmentObjectNameTemplate (c .OpConfig .PodEnvironmentConfigMap .Name )
870870 cm , err := c .KubeClient .ConfigMaps (c .OpConfig .PodEnvironmentConfigMap .Namespace ).Get (
871871 context .TODO (),
872- c . OpConfig . PodEnvironmentConfigMap . Name ,
872+ configMapName ,
873873 metav1.GetOptions {})
874874 if err != nil {
875875 // if not found, try again using the cluster's namespace if it's different (old behavior)
876876 if k8sutil .ResourceNotFound (err ) && c .Namespace != c .OpConfig .PodEnvironmentConfigMap .Namespace {
877877 cm , err = c .KubeClient .ConfigMaps (c .Namespace ).Get (
878878 context .TODO (),
879- c . OpConfig . PodEnvironmentConfigMap . Name ,
879+ configMapName ,
880880 metav1.GetOptions {})
881881 }
882882 if err != nil {
883- return nil , fmt .Errorf ("could not read PodEnvironmentConfigMap: %v" , err )
883+ return nil , fmt .Errorf ("could not read PodEnvironmentConfigMap %s : %w" , configMapName , err )
884884 }
885885 }
886886 for k , v := range cm .Data {
@@ -899,7 +899,7 @@ func (c *Cluster) getPodEnvironmentSecretVariables() ([]v1.EnvVar, error) {
899899
900900 secret , err := c .KubeClient .Secrets (c .Namespace ).Get (
901901 context .TODO (),
902- c .OpConfig .PodEnvironmentSecret ,
902+ c .podEnvironmentObjectNameTemplate ( c . OpConfig .PodEnvironmentSecret ) ,
903903 metav1.GetOptions {})
904904 if err != nil {
905905 return nil , fmt .Errorf ("could not read Secret PodEnvironmentSecretName: %v" , err )
@@ -920,6 +920,11 @@ func (c *Cluster) getPodEnvironmentSecretVariables() ([]v1.EnvVar, error) {
920920 return secretPodEnvVarsList , nil
921921}
922922
923+ func (c * Cluster ) podEnvironmentObjectNameTemplate (template string ) string {
924+ objectNameTemplate := config .StringTemplate (template )
925+ return objectNameTemplate .Format ("cluster" , c .clusterName ().Name , "tprkind" , acidv1 .PostgresCRDResourceKind , "tprgroup" , acidzalando .GroupName )
926+ }
927+
923928func getSidecarContainer (sidecar acidv1.Sidecar , index int , resources * v1.ResourceRequirements ) * v1.Container {
924929 name := sidecar .Name
925930 if name == "" {
0 commit comments