+++ This bug was initially created as a clone of Bug #1796078 +++
Description of problem:
Not all operators support all architectures. Therefore, operators under OLM will have an annotation defining supported architectures. If the current architecture of the cluster is not listed in this annotation, the console should filter (hide) the operator from view.
* The console backend needs to use golang's sys/runtime library to get the architecture of the cluster/pod
* The console should pass the architecture to the front end
* The OLM page should filter based on the provided architecture data.
This story supports https://issues.redhat.com/browse/OLM-1464
The backend work to gather the architecture & pass to the front end needs backports to 4.3 & 4.2
The front end filtering work needs backports to 4.3, 4.2 if it is clean.
PR is open, needs some small changes.
1. create custom catalog source, it references an image in which operator CSV has label
# cat yapei-oswindows-catalog-source.yaml
displayName: windows label keycloak operator
# oc create -f yapei-oswindows-catalog-source.yaml
# oc get packagemanifests | grep keycloak
keycloak-operator Community Operators 8h
keycloak-operator windows label keycloak operator 43s
# oc get packagemanifests keycloak-operator --show-labels
NAME CATALOG AGE LABELS
keycloak-operator windows label keycloak operator 56s catalog-namespace=openshift-marketplace,catalog=oswindows-keycloak-operators,operatorframework.io/arch.amd64=supported,operatorframework.io/os.windows=supported,provider-url=,provider=Red Hat
2. cluster admin user view Operator Hub, search using keyword `keycloak` we can only see one operator item from community, also there is no Custom provider type
Verified on 4.3.0-0.nightly-2020-06-15-183232
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.