argoproj-labs / argo-rollouts-manager

Kubernetes Operator for Argo Rollouts controller.
https://argo-rollouts-manager.readthedocs.io/en/latest/
Apache License 2.0
93 stars 304 forks source link

Remove dependency on Argo Rollouts from go.mod and upgrade controller-runtime to v0.16.3 #41

Closed jgwest closed 4 months ago

jgwest commented 7 months ago

A dependency on upstream Argo Rollouts was added to this repository, as part of https://github.com/argoproj-labs/argo-rollouts-manager/pull/15/files#diff-33ef32bf6c23acb95f5902d7097b7a1d5128ca061167ec0716715b0b9eeaa5f6.

However, I think this dependency will likely cause us problem in downstream consumers of this repository: depending on Argo Rollouts within go.mod may require us to pull in some of the argo rollouts dependencies, which may conflict with other dependencies in our sister projects which vendor in argo-cd: argocd-operator and gitops-operator.

I'm mostly concerned about differing kubernetes versions, go-client versions, and controller-runtime versions between the projects.

Fortunately, we depend on Rollouts very little, and it should be straightforward to remove the reference from our code.

While we're at it, let's also upgrade to controller-runtime v0.16.3 (which is the version used by our sister controllers).

Criteria:

jgwest commented 7 months ago

External Red Hat issue tracker: https://issues.redhat.com/browse/GITOPS-4069