Skip to content

Commit 65e9626

Browse files
committed
ISSUE-257 Propagate labels to ZookeeperCluster underlying resources
Fixes: pravega#257
1 parent c2435a5 commit 65e9626

File tree

1 file changed

+28
-7
lines changed

1 file changed

+28
-7
lines changed

pkg/zk/generators.go

+28-7
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,11 @@ func MakeStatefulSet(z *v1beta1.ZookeeperCluster) *appsv1.StatefulSet {
5454
} else {
5555
pvcs = append(pvcs, v1.PersistentVolumeClaim{
5656
ObjectMeta: metav1.ObjectMeta{
57-
Name: zkDataVolume,
58-
Labels: map[string]string{"app": z.GetName()},
57+
Name: zkDataVolume,
58+
Labels: mergeLabels(
59+
z.Spec.Labels,
60+
map[string]string{"app": z.GetName()},
61+
),
5962
},
6063
Spec: persistence.PersistentVolumeClaimSpec,
6164
})
@@ -85,10 +88,13 @@ func MakeStatefulSet(z *v1beta1.ZookeeperCluster) *appsv1.StatefulSet {
8588
Template: v1.PodTemplateSpec{
8689
ObjectMeta: metav1.ObjectMeta{
8790
GenerateName: z.GetName(),
88-
Labels: map[string]string{
89-
"app": z.GetName(),
90-
"kind": "ZookeeperMember",
91-
},
91+
Labels: mergeLabels(
92+
z.Spec.Labels,
93+
map[string]string{
94+
"app": z.GetName(),
95+
"kind": "ZookeeperMember",
96+
},
97+
),
9298
},
9399
Spec: makeZkPodSpec(z, extraVolumes),
94100
},
@@ -282,7 +288,10 @@ func makeService(name string, ports []v1.ServicePort, clusterIP bool, z *v1beta1
282288
Name: name,
283289
Namespace: z.Namespace,
284290

285-
Labels: map[string]string{"app": z.GetName(), "headless": strconv.FormatBool(!clusterIP)},
291+
Labels: mergeLabels(
292+
z.Spec.Labels,
293+
map[string]string{"app": z.GetName(), "headless": strconv.FormatBool(!clusterIP)},
294+
),
286295
Annotations: annotationMap,
287296
},
288297
Spec: v1.ServiceSpec{
@@ -318,3 +327,15 @@ func MakePodDisruptionBudget(z *v1beta1.ZookeeperCluster) *policyv1beta1.PodDisr
318327
},
319328
}
320329
}
330+
331+
// MergeLabels merges label maps
332+
func mergeLabels(l ...map[string]string) map[string]string {
333+
res := make(map[string]string)
334+
335+
for _, v := range l {
336+
for lKey, lValue := range v {
337+
res[lKey] = lValue
338+
}
339+
}
340+
return res
341+
}

0 commit comments

Comments
 (0)