vmware: Fix vmware tools installation on newer Ubuntus

Modules are included in the kernel since 3.9.
This commit is contained in:
Ossi Salmi 2014-11-13 13:02:11 +02:00
parent 07ed199b8e
commit c5cf861db0

View file

@ -42,6 +42,7 @@ class vmware::guest::centos {
class vmware::guest::ubuntu { class vmware::guest::ubuntu {
require gnu::gcc require gnu::gcc
require gnu::make
if ! $vmware_tools_package { if ! $vmware_tools_package {
if $vmware_tools_package_latest { if $vmware_tools_package_latest {
@ -64,27 +65,31 @@ class vmware::guest::ubuntu {
source => "/usr/local/src/vmwaretools.tar.gz", source => "/usr/local/src/vmwaretools.tar.gz",
require => File["/usr/local/src/vmwaretools.tar.gz"], require => File["/usr/local/src/vmwaretools.tar.gz"],
} }
if versioncmp($::kernelversion, "3.9") >= 0 {
$creates = "/etc/init/vmware-tools.conf"
} else {
$creates = "/lib/modules/${::kernelrelease}/misc/vmci.ko"
}
exec { "vmware-install.pl": exec { "vmware-install.pl":
command => "/bin/sh -c 'unset DISPLAY REMOTEHOST SSH_CONNECTION ; perl vmware-install.pl -d ; test -f /lib/modules/${kernelrelease}/misc/vmci.ko'", command => "/bin/sh -c 'umask 022; unset DISPLAY REMOTEHOST SSH_CONNECTION; perl vmware-install.pl -d; test -f ${creates}'",
path => "/bin:/usr/bin:/sbin:/usr/sbin", path => "/bin:/usr/bin:/sbin:/usr/sbin",
cwd => "/usr/local/src/vmwaretools", cwd => "/usr/local/src/vmwaretools",
environment => [ "PAGER=/bin/cat", ], environment => [ "PAGER=/bin/cat", ],
creates => "/lib/modules/${kernelrelease}/misc/vmci.ko", creates => $creates,
require => Util::Extract::Tar["/usr/local/src/vmwaretools"], require => Util::Extract::Tar["/usr/local/src/vmwaretools"],
} }
file { "/etc/init.d/vmware-tools": file { "/etc/init.d/vmware-tools":
ensure => link, ensure => link,
target => "/lib/init/upstart-job", target => "/lib/init/upstart-job",
before => Service["vmware-tools"], before => Service["vmware-tools"],
} }
service { "vmware-tools": service { "vmware-tools":
ensure => running, ensure => running,
enable => true, enable => true,
hasrestart => false, subscribe => Exec["vmware-install.pl"],
start => "service vmware-tools start",
stop => "service vmware-tools stop",
status => "service vmware-tools status",
subscribe => Exec["vmware-install.pl"],
} }
} }