Description of problem:
OLM dependency resolution takes into account Operators from catalogs in the same namespace as the Operator stating the dependency as well as all those Operators from catalogs in the so-called “global catalog” namespace. Catalogs from this namespace are available to all users in the cluster.
With the 4.1 release OperatorHub incorrectly places CatalogSources in a namespace that is not the global catalog namespace configured for OLM. When an Operator gets installed via OperatorHub the catalog will be created in the target namespace of that Operator, effectively triggering the behavior described above. As such no dependency resolution can be performed.
Version-Release number of selected component (if applicable): 4.1.0 or newer
Steps to Reproduce:
1. Try to install an Operator from OperatorHub that has at least 1 dependency on another Operator
2. OperatorHub creates intermediate catalog in target namespace
3. OLM attempts to reconcile a Subscription
OLM fails to install the Operator from this catalog as the other catalogs are not placed in the global catalog namespace
OperatorHub catalogs are created in a global catalog namespace, making the content available for dependency resolution. OLM can successfully reconcile subscriptions on Operators that have a dependency.