Description of problem ====================== *Import Cluster* wizard shows list of "Discovered Host(s)" with an option to filter machines there. The text states: > Review the hosts for the and click Import to monitor this cluster. This is a good way to check if one tries to import the correct cluster (eg. making sure that one particular machine or subset of machines is present), but it has no effect on the actual import itself. The problem is that the when the filter returns no results and no hosts are displayed, the import button is missing. This could make someone to think that this filtering has some effect on the import (eg. that it's possible to import just a subset of a trusted storage pool by using the filter feature here). Version-Release number ====================== tendrl-ui-1.6.3-3.el7rhgs.noarch Other RHGS WA components on the server machine: ``` # rpm -qa | grep tendrl | sort tendrl-ansible-1.6.3-4.el7rhgs.noarch tendrl-api-1.6.3-3.el7rhgs.noarch tendrl-api-httpd-1.6.3-3.el7rhgs.noarch tendrl-commons-1.6.3-6.el7rhgs.noarch tendrl-grafana-plugins-1.6.3-4.el7rhgs.noarch tendrl-grafana-selinux-1.5.4-2.el7rhgs.noarch tendrl-monitoring-integration-1.6.3-4.el7rhgs.noarch tendrl-node-agent-1.6.3-6.el7rhgs.noarch tendrl-notifier-1.6.3-3.el7rhgs.noarch tendrl-selinux-1.5.4-2.el7rhgs.noarch tendrl-ui-1.6.3-3.el7rhgs.noarch ``` How reproducible ================ 100 % Steps to Reproduce ================== 1. Prepare gluster trusted storage pool 2. Install RHGS WA using tendrl-ansible 3. Log into the WA web ui and click import 4. Try filtering hosts in Discovered Host(s) section so that no results would be shown Actual results ============== Instead of list of hosts, "No Hosts Detected" is shown. The import and Cancel buttons are not visible, so that one can't start import. Expected results ================ Instead of list of hosts, "No Hosts Detected" is shown. Import and Cancel buttons are still accessible. Additional info =============== Do we need to tweak the text a bit, eg. making it more clear or moving it around? I have no particular opinion there. The fact that the host selection is not passed further could be checked by inspecting http requests during import. Using firefox inspector, I see: ``` POST http://mbukatov-usm1-server.example.com/api/1.0/clusters/84ffce52-031b-415f-a8a0-c878043dfd89/import Headers: Host: mbukatov-usm1-server.example.com User-Agent: Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0 Accept: application/json, text/plain, */* Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Referer: http://mbukatov-usm1-server.usmqe.lab.eng.brq.redhat.com/ Authorization: Bearer b792589aefab9061fe0181fbef13f98a3ba9b000d07ae48b56d3fa8a5bbe6363 Content-Length: 89 Content-Type: text/plain;charset=UTF-8 Connection: keep-alive Body: {"Cluster.volume_profiling_flag":"leave-as-is","Cluster.short_name":"cluster_2018_06_07"} ``` Related Design Document: https://redhat.invisionapp.com/share/8QCOEVEY9#/screens/247445416
Linking related BZ: 1584660
Question for Ju: do you think that we need to do anything besides allowing import with empty host list?
Created attachment 1448787 [details] screenshot 1: import cluster screen
Created attachment 1448788 [details] screenshot 2: import cluster screen when filtering some hosts
Created attachment 1448789 [details] screenshot 3: import cluster screen when no hosts are shown after filtering
In reviewing the screenshots, I observed the following: (1) 1 or more hosts need to be visible for the "Import" button to be enabled. (2) The filter (to the host table) is for locating a specific host(s) with the host table, but it is not needed for performing the import. (3) It's confusing as user loses context of what the total number of discovered hosts vs. filtered hosts when a filter is applied. E.g. 2 of 10 discovered hosts, whereby 2 hosts filtered out of a total list of 10 discovered hosts. Refer to https://www.patternfly.org/pattern-library/content-views/table-view/ for further information. My recommendations are as follow: (1) Update UI to include the <filtered item count> of <total items> Discovered hosts when filtered is applied. (2) With regards to Import not enabled until all hosts are not filtered. It's behaving the way it should as if we put a filter and let users Import, it can be confusing to users whether all or a subset of nodes are being imported. Hence, my suggestion is to add a validation that provides a message (like you get when you put invalid text in the custom cluster name -- see https://redhat.invisionapp.com/share/8QCOEVEY9#/screens/279647239) so that if there is any filters on the discovered hosts, that the filter has to be cleared or removed before the Import is enabled. E.g. "Review the discovered host list, and ensure there are no filters applied before proceeding with Import."
QE team will verify that the Ju's suggestion in comment 6 is implemented.
Checking tendrl-ui-1.6.3-4.el7rhgs.noarch When filter for "Discovered Host(s)" is applied, the page reports eg.: > 1 of 4 Discovered - Hosts - where 1 is number of hosts which matches active filters, and 4 is total number of discovered hosts. When the filter matches no hosts, the page works the same as before, shows: > No Hosts Detected This matches the suggestion in comment 6. When one clicks on "Import" button while some filters are active, the error is shown on the top of the page: > Review the discovered host list, and ensure there are no filters applied > before proceeding with Import. This remains on the page even after the filters are removed. I have no problem with that. When the filters are removed, the it's possible to start import again.
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. https://access.redhat.com/errata/RHSA-2018:2616