Bug 1328556

Summary: open-vm-tools postinstall tries to start vgauthd not in RPM
Product: [Fedora] Fedora EPEL Reporter: troy.engel
Component: open-vm-toolsAssignee: Simone Caronni <negativo17>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: el6CC: negativo17, ravindrakumar, rjones
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: open-vm-tools-9.10.2-3.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-05-26 08:19:25 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:

Description troy.engel 2016-04-19 16:07:16 UTC
Description of problem:

Installing open-vm-tools on EL6 tries to start the service 'vgauthd' which is not included in the package.


Version-Release number of selected component (if applicable):

# rpm -q open-vm-tools
open-vm-tools-9.10.2-1.el6.x86_64


How reproducible:

Always


Steps to Reproduce:

# yum install open-vm-tools


Actual results:

# yum install open-vm-tools
...
Resolving Dependencies
--> Running transaction check
---> Package open-vm-tools.x86_64 0:9.10.2-1.el6 will be installed
--> Processing Dependency: libmspack.so.0()(64bit) for package: open-vm-tools-9.10.2-1.el6.x86_64
--> Processing Dependency: libdnet.so.1()(64bit) for package: open-vm-tools-9.10.2-1.el6.x86_64
--> Running transaction check
---> Package libdnet.x86_64 0:1.12-6.el6 will be installed
---> Package libmspack.x86_64 0:0.5-0.1.alpha.el6 will be installed
--> Finished Dependency Resolution
...
Running Transaction
  Installing : libdnet-1.12-6.el6.x86_64
  Installing : libmspack-0.5-0.1.alpha.el6.x86_64
  Installing : open-vm-tools-9.10.2-1.el6.x86_64
error reading information on service vgauthd: No such file or directory
warning: %post(open-vm-tools-9.10.2-1.el6.x86_64) scriptlet failed, exit status 1
Non-fatal POSTIN scriptlet failure in rpm package open-vm-tools-9.10.2-1.el6.x86_64
  Verifying  : open-vm-tools-9.10.2-1.el6.x86_64
  Verifying  : libmspack-0.5-0.1.alpha.el6.x86_64
  Verifying  : libdnet-1.12-6.el6.x86_64


Expected results:

No errors. :)


Additional info:

# rpm -q --scripts open-vm-tools
...
postinstall scriptlet (using /bin/sh):
...
/sbin/chkconfig --add vgauthd


# rpm -ql open-vm-tools | egrep "(vgauth|init)"
/etc/rc.d/init.d/vmtoolsd

Comment 1 Simone Caronni 2016-04-20 21:39:43 UTC
Hi Troy, a bit of history on this.

The vgauth daemon is disabled in RHEL 7.2 packages (for no apparent reason, as I don't have access to all private Red Hat bugs) and will be re-enabled in RHEL 7.3 [1].

I've commented the lines and build requirements which enabled the daemon during the last build to mimick RHEL 7 [2], but considering that now they are re-enabling it, it might be worth investing some time in making it work.

I've created a new build for RHEL 6 that includes the daemon [3]. Can you please test it and make sure that the daemon starts and stop properly? I'm not sure I will be able to get access to our VMWare installation tomorrow.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1172833
[2] http://pkgs.fedoraproject.org/cgit/rpms/open-vm-tools.git/commit/?h=el6&id=73402a5f5964505d232115393b4b340be0491152
[3] http://koji.fedoraproject.org/koji/buildinfo?buildID=756375

Thanks,
--Simone

Comment 2 troy.engel 2016-04-20 21:58:18 UTC
Hi Simone,

The basic litmus test passes for the RPM itself, but the script has an error. Using the same VM as this was reported on:

# /etc/init.d/vmtoolsd stop
# yum remove open-vm-tools libmspack libdnet
# curl -O https://kojipkgs.fedoraproject.org//packages/open-vm-tools/9.10.2/2.el6/x86_64/open-vm-tools-9.10.2-2.el6.x86_64.rpm
# yum localinstall open-vm-tools-9.10.2-2.el6.x86_64.rpm

...good to go, no RPM errors. I can then start vmtoolsd:

[root@726846-cent6 ~]# /etc/init.d/vmtoolsd start
Starting vmtoolsd:                                         [  OK  ]


However, vgauthd has a bash test error:

[root@726846-cent6 ~]# /etc/init.d/vgauthd start
/etc/init.d/vgauthd: line 24: [: /etc/sysconfig/VGAuthService: binary operator expected
/etc/init.d/vgauthd: line 29: [: /usr/bin/VGAuthService: binary operator expected


Running it under a quick bash -x and chopping out the useless bits of output:

[root@726846-cent6 ~]# bash -x /etc/init.d/vgauthd start
+ . /etc/rc.d/init.d/functions
...
+ exec='/usr/bin/VGAuthService -b'
+ prog='VGAuthService -b'
+ '[' -e /etc/sysconfig/VGAuthService -b ']'
/etc/init.d/vgauthd: line 24: [: /etc/sysconfig/VGAuthService: binary operator expected
+ lockfile='/var/lock/subsys/VGAuthService -b'
+ case "$1" in
+ rh_status_q
+ rh_status
+ start
+ '[' -x /usr/bin/VGAuthService -b ']'
/etc/init.d/vgauthd: line 29: [: /usr/bin/VGAuthService: binary operator expected
+ exit 5


So you see the obvious problem:

exec="/usr/bin/VGAuthService -b"
...
start() {
    [ -x $exec ] || exit 5


The script needs to separate the executable from the options into two variables for that test to succeed, etc. (couple of ways to solve it, dealer's choice). I have this VM reserved for testing this bug, happy to help continue testing just holler.

Comment 3 Simone Caronni 2016-04-21 09:20:11 UTC
Hi Troy, sorry for the confusion, but VGAuth can not be enabled on EPEL 6, I opened a bug in August 2015 [1] for it. So much time has passed and VMWare does not care at all about bugs, so I completely forgot. What I had to do in this case, was to simply comment the line creating the problem.

I will see if with an update to open-vm-tools 10.0.0 is feasible.

I've done another build with VGAuth completely disabled [2], it works for me on VMWare Workstation.

[1] https://github.com/vmware/open-vm-tools/issues/37
[2] http://koji.fedoraproject.org/koji/taskinfo?taskID=13743698

Comment 4 Richard W.M. Jones 2016-04-21 09:31:00 UTC
(In reply to Simone Caronni from comment #1)
> Hi Troy, a bit of history on this.
> 
> The vgauth daemon is disabled in RHEL 7.2 packages (for no apparent reason,
> as I don't have access to all private Red Hat bugs) and will be re-enabled
> in RHEL 7.3 [1].

vgauth support requires some gigantic C++ libraries to be added
to RHEL 7 which we were (and still are) unhappy about.

Comment 5 Fedora Update System 2016-04-21 09:43:20 UTC
open-vm-tools-9.10.2-3.el6 has been submitted as an update to Fedora EPEL 6. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-7b7756794e

Comment 6 Simone Caronni 2016-04-21 09:46:13 UTC
(In reply to Richard W.M. Jones from comment #4)
> (In reply to Simone Caronni from comment #1)
> > The vgauth daemon is disabled in RHEL 7.2 packages (for no apparent reason,
> > as I don't have access to all private Red Hat bugs) and will be re-enabled
> > in RHEL 7.3 [1].
> 
> vgauth support requires some gigantic C++ libraries to be added
> to RHEL 7 which we were (and still are) unhappy about.

Ah, ok :)
Thanks.

Comment 7 troy.engel 2016-04-21 13:31:54 UTC
Thanks Simone - smoke tests pass on the newest build, added +1 karma. Much appreciated!

Comment 8 Fedora Update System 2016-04-22 20:47:25 UTC
open-vm-tools-9.10.2-3.el6 has been pushed to the Fedora EPEL 6 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-7b7756794e

Comment 9 Ravindra Kumar 2016-04-23 07:58:34 UTC
(In reply to Simone Caronni from comment #3)
> Hi Troy, sorry for the confusion, but VGAuth can not be enabled on EPEL 6, I
> opened a bug in August 2015 [1] for it. So much time has passed and VMWare
> does not care at all about bugs, so I completely forgot.

Sorry to hear that Simone. We do care about all bugs, supporting open-vm-tools for EPEL 6 is low on our priority. Is upgrading Xerces an option?

Comment 10 Fedora Update System 2016-05-26 08:19:21 UTC
open-vm-tools-9.10.2-3.el6 has been pushed to the Fedora EPEL 6 stable repository. If problems still persist, please make note of it in this bug report.