@@ -247,8 +247,10 @@ func podOwnerIsOwner(pod *corev1.Pod, cm corev1.ConfigMap) bool {
247247}
248248
249249func (m * PodMutator ) enableClusterRoleBinding (ctx context.Context , pod * corev1.Pod ) error {
250- var serviceAccount = client.ObjectKey {Name : pod .Spec .ServiceAccountName ,
251- Namespace : pod .Namespace }
250+ serviceAccount := client.ObjectKey {
251+ Name : pod .Spec .ServiceAccountName ,
252+ Namespace : pod .Namespace ,
253+ }
252254 if pod .Spec .ServiceAccountName == "" {
253255 serviceAccount .Name = "default"
254256 }
@@ -266,7 +268,7 @@ func (m *PodMutator) enableClusterRoleBinding(ctx context.Context, pod *corev1.P
266268 m .Log .V (1 ).Info (fmt .Sprintf ("ClusterRoleBinding not found: %s" , clusterRoleBindingName ))
267269 return err
268270 }
269- var found = false
271+ found : = false
270272 for _ , subject := range crb .Subjects {
271273 if subject .Kind == "ServiceAccount" && subject .Name == serviceAccount .Name && subject .Namespace == serviceAccount .Namespace {
272274 m .Log .V (1 ).Info (fmt .Sprintf ("ClusterRoleBinding already exists for service account: %s/%s" , serviceAccount .Namespace , serviceAccount .Name ))
@@ -385,7 +387,9 @@ func (m *PodMutator) injectSidecar(
385387 commandSequence = append (
386388 commandSequence ,
387389 "--uri" ,
388- fmt .Sprintf ("file:%s" , fileSyncMountPath (featureFlag )),
390+ fmt .Sprintf ("file:%s/%s" ,
391+ fileSyncMountPath (featureFlag ),
392+ corev1alpha1 .FeatureFlagConfigurationConfigMapKey (featureFlag .Namespace , featureFlag .Name )),
389393 )
390394 pod .Spec .Volumes = append (pod .Spec .Volumes , corev1.Volume {
391395 Name : featureFlag .Name ,
@@ -398,9 +402,10 @@ func (m *PodMutator) injectSidecar(
398402 },
399403 })
400404 volumeMounts = append (volumeMounts , corev1.VolumeMount {
401- Name : featureFlag .Name ,
405+ Name : featureFlag .Name ,
406+ // create a directory mount per featureFlag spec
407+ // file mounts will not work
402408 MountPath : fileSyncMountPath (featureFlag ),
403- SubPath : corev1alpha1 .FeatureFlagConfigurationConfigMapDataKeyName (featureFlag .Namespace , featureFlag .Name ),
404409 })
405410 default :
406411 err := fmt .Errorf (
@@ -475,9 +480,7 @@ func setSecurityContext() *corev1.SecurityContext {
475480}
476481
477482func fileSyncMountPath (featureFlag * corev1alpha1.FeatureFlagConfiguration ) string {
478- return fmt .Sprintf ("%s/%s" , rootFileSyncMountPath ,
479- corev1alpha1 .FeatureFlagConfigurationConfigMapDataKeyName (featureFlag .Namespace , featureFlag .Name ),
480- )
483+ return fmt .Sprintf ("%s/%s" , rootFileSyncMountPath , corev1alpha1 .FeatureFlagConfigurationId (featureFlag .Namespace , featureFlag .Name ))
481484}
482485
483486func OpenFeatureEnabledAnnotationIndex (o client.Object ) []string {
0 commit comments