Details
Description
While trying to install the Pipelines operator v1.7 after a successful upgrade test for Gitops operator (starting from GitOps v1.4.11 all the way upto v1.6 by switching the channels along the way), an error showed up:
a unique replacement chain within a channel is required to determine the relative order between channel entries, but 2 replacement chains were found in channel "gitops-1.6" of package "openshift-gitops-operator": openshift-gitops-operator.v1.5.4...openshift-gitops-operator.v1.5.2, openshift-gitops-operator.v1.6.0
This is trivial as the error goes away and operator gets installed eventually. Further investigation:
This is the point where the error is coming from
https://github.com/operator-framework/operator-lifecycle-manager/blob/67177c0c822f[…]262c6b4f54bebad17f/pkg/controller/registry/resolver/resolver.go
Looks like OLM validates the above logic for all the operators together.
Steps to Reproduce
- Install Pipeline operator on OCP 4.10 (Not sure about other versions)
- Install GitOps v1.4.11 by subscribing to gitops-1.4 channel
- Upgrade the operator to 1.5.z by switching the channel to gitops-1.5 and then to v1.6.0 by subscribing to gitops-1.6