Description of problem:
The 'apply()' of ChooseServerScreen attempts to validate the server url by making a connection to it and a 'GET /subscription/status' (via 'is_valid_server_info()) but that request is not-async and will block the main thread. If the server url responds very slowly, there will be a perceptible pause between 'next' and the credentials screen.
That doesn't appear to be a new behavior, I think it dates back a while, but it's more noticeable now since most screens instantly apply()
Fix would likely need there to be a nongui/progress ValidateServerUrlScreen between ChooseServer and CredentialsScreen, and AsyncBackend method to make a status request.
Version-Release number of selected component (if applicable):
1.15.9-13 or earlier
Steps to Reproduce:
deferring to rhel-7.3.0 due to severity and time schedule remaining for rhel-7.2.0
Fix has been merged upstream. Moving to POST.
Demonstrating that in RHEL 73 there was no "Validating connection" check when you click next on the server details page of system registration.
1) Launch subscription-manager-gui
2) Click on register button
3) click next on the window
You will notice that next the user credential screen appears and there was *NO* screen with server connection check.
Retesting with latest subscription-manager on RHEL74
# subscription-manager version
server type: This system is currently not registered.
subscription management server: 0.9.51.21-1
subscription management rules: 5.15.1
# rpm -qa subscription-manager --changelog | grep 1268033
- 1268033: Add progress screen for validate server (firstname.lastname@example.org)
Follow the same steps mentioned above , you will notice a new progress window with 'Validating connection" appears before the user was presented with credentials screen. (PFA:validating.png)
Marking the bug as Verified!!
Created attachment 1277589 [details]
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.