in internal/resource/service.go [37:53]
func (builder *ServiceBuilder) Update(object client.Object) error {
var idx int
serviceList := builder.Instance.Spec.ServiceList
if idx = getServiceIndex(object, serviceList); idx == -1 {
return fmt.Errorf("failed to update object: %w", errors.New("the specified Service does not exist: "+object.GetName()))
}
desired := serviceList[idx]
current := object.(*v12.Service)
current.Labels = metadata.GetLabels(builder.Instance.Name, builder.Instance.Labels)
current.Annotations = desired.Annotations
current.Spec = desired.ServiceSpec
if err := controllerutil.SetControllerReference(builder.Instance, current, builder.Scheme); err != nil {
return fmt.Errorf("failed setting controller reference: %w", err)
}
return nil
}