Skip to content

Commit d1be59c

Browse files
authored
Merge pull request #959 from cblecker/label-panic
Bug 1732302: Fix panic when binding already exists
2 parents bb4e018 + 93c999a commit d1be59c

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

pkg/controller/operators/catalog/step_ensurer.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,10 @@ func (o *StepEnsurer) EnsureClusterRole(cr *rbacv1.ClusterRole, step *v1alpha1.S
163163
}
164164

165165
// We're updating, point owner to the newest csv
166-
cr.Labels[ownerutil.OwnerKey] = step.Resolving
166+
if cr.ObjectMeta.Labels == nil {
167+
cr.ObjectMeta.Labels = map[string]string{}
168+
}
169+
cr.ObjectMeta.Labels[ownerutil.OwnerKey] = step.Resolving
167170
if _, updateErr := o.kubeClient.UpdateClusterRole(cr); updateErr != nil {
168171
err = errorwrap.Wrapf(updateErr, "error updating clusterrole %s", cr.GetName())
169172
return
@@ -187,7 +190,10 @@ func (o *StepEnsurer) EnsureClusterRoleBinding(crb *rbacv1.ClusterRoleBinding, s
187190
}
188191

189192
// if we're updating, point owner to the newest csv
190-
crb.Labels[ownerutil.OwnerKey] = step.Resolving
193+
if crb.ObjectMeta.Labels == nil {
194+
crb.ObjectMeta.Labels = map[string]string{}
195+
}
196+
crb.ObjectMeta.Labels[ownerutil.OwnerKey] = step.Resolving
191197
if _, updateErr := o.kubeClient.UpdateClusterRoleBinding(crb); updateErr != nil {
192198
err = errorwrap.Wrapf(updateErr, "error updating clusterrolebinding %s", crb.GetName())
193199
return

0 commit comments

Comments
 (0)