Bug 1165803

Summary: pcs CLI should recognize and act upon "fail due to lack of authentication" state if/as suitable (e.g. for "pcs config restore")
Product: Red Hat Enterprise Linux 7 Reporter: Jan Pokorný [poki] <jpokorny>
Component: pcsAssignee: Tomas Jelinek <tojeline>
Status: CLOSED ERRATA QA Contact: cluster-qe <cluster-qe>
Severity: unspecified Docs Contact:
Priority: low    
Version: 7.1CC: cfeist, cluster-maint, mlisik, rsteiger, tojeline
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: pcs-0.9.140-1.el7 Doc Type: Bug Fix
Doc Text:
Cause: User runs 'pcs config restore' command when some of the cluster nodes are not accessible by pcsd. Consequence: A generic error message, which is not very helpful, is printed. Fix: Print an explanatory error message helping the user to fix the issue. Result: User is informed about the cause of the error and how to fix it.
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-19 09:33:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
proposed fix none

Description Jan Pokorný [poki] 2014-11-19 18:08:46 UTC
Intro:
host-137 is a first node stated in the backed up configuration
c3.tar.bz2 and pcsd is running there, but no entity has authenticate
against it yet; then on a different host:

# pcs config restore c3.tar.bz2
> Error: unable to determine status of the node host-137

One might expect the state of interaction (as in summary) can be easily
distinguished, leaving the user with a hint to try:

    pcs cluster auth [host-137] ...

Even smoother workflow would be if the authentication process/dialog
was started immediately, prompting for credentials -- one catch though:
it would break the existing scripts utilizing pcs (hanging indefinitely
for the user input) so there would have to be additional switch
indicating "interactive" mode.


I am not sure what's the situation with other failed-on-auth operations,
take "config restore" just as an example.

Comment 3 Tomas Jelinek 2015-05-05 12:45:28 UTC
Created attachment 1022175 [details]
proposed fix

test:
[root@rh71-node1:~]# pcs status pcsd
  rh71-node1: Unable to authenticate
  rh71-node2: Unable to authenticate
[root@rh71-node1:~]# pcs config restore ~/backup.tar.bz2
Error: Unable to authenticate to rh71-node1 - (HTTP error: 401), try running 'pcs cluster auth'
Error: Unable to authenticate to rh71-node2 - (HTTP error: 401), try running 'pcs cluster auth'
[root@rh71-node1:~]# echo $?
1

Comment 4 Tomas Jelinek 2015-06-04 14:32:29 UTC
Before Fix:
[root@rh71-node1 ~]# rpm -q pcs
pcs-0.9.137-13.el7_1.2.x86_64
Delete authorization tokens:
run on each node: rm /var/lib/pcsd/tokens /var/lib/pcsd/pcs_users.conf
[root@rh71-node1:~]# pcs config restore ~/backup.tar.bz2
Error: unable to determine status of the node rh71-node1



After Fix:
[root@rh71-node1:~]# rpm -q pcs
pcs-0.9.140-1.el6.x86_64
Delete authorization tokens:
run on each node: rm /var/lib/pcsd/tokens /var/lib/pcsd/pcs_users.conf
[root@rh71-node1:~]# pcs config restore ~/backup.tar.bz2
Error: Unable to authenticate to rh71-node1 - (HTTP error: 401), try running 'pcs cluster auth'
Error: Unable to authenticate to rh71-node2 - (HTTP error: 401), try running 'pcs cluster auth'

Comment 8 errata-xmlrpc 2015-11-19 09:33:38 UTC
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://rhn.redhat.com/errata/RHSA-2015-2290.html