opendatahub-io / opendatahub-operator

Open Data Hub operator to manage ODH component integrations
https://opendatahub.io
Apache License 2.0
59 stars 127 forks source link

fix(feature): uses server-side apply to reconile #1098

Closed bartoszmajsak closed 2 months ago

bartoszmajsak commented 2 months ago

Description

Aligns reconcile strategy for Managed() features to rely on Server-side apply rather than Update. The SSA approach is used by deploy package when reconciling kustomize resources, so keeping it the same makes sense.

The previous one, based on client.Update call, tries to overwrite the entire resource rather than using a patch operation, which can lead to errors when trying to overwrite immutable fields such as:

failed to update object test-namespace/knative-local-gateway: Service "knative-local-gateway" is invalid: [metadata.resourceVersion: Invalid value: "": must be specified for an update, spec.clusterIP: Invalid value: "": field is immutable]

Additional changes

How Has This Been Tested?

In make we trust.

Screenshot or short clip

Merge criteria

openshift-ci[bot] commented 2 months ago

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: zdtsw

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files: - ~~[OWNERS](https://github.com/opendatahub-io/opendatahub-operator/blob/incubation/OWNERS)~~ [zdtsw] Approvers can indicate their approval by writing `/approve` in a comment Approvers can cancel approval by writing `/approve cancel` in a comment