summaryrefslogtreecommitdiffstats
path: root/os-plugins/plugins/vmware/OpenSLX
diff options
context:
space:
mode:
authorVolker Uhrig2008-04-08 22:45:45 +0200
committerVolker Uhrig2008-04-08 22:45:45 +0200
commitde03766511fd2b677872b54299986115500650c9 (patch)
treeedcfdb6ec52526ef409b633cc068e3dedd942988 /os-plugins/plugins/vmware/OpenSLX
parentBugfix: Removed forgotten quotation mark, which caused a kernel panic :( (diff)
downloadcore-de03766511fd2b677872b54299986115500650c9.tar.gz
core-de03766511fd2b677872b54299986115500650c9.tar.xz
core-de03766511fd2b677872b54299986115500650c9.zip
* Different changes. Step 1 done
* SuSE works now in local mode (default) * Ubuntu should run, too git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@1732 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'os-plugins/plugins/vmware/OpenSLX')
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm14
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm37
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Fedora.pm2
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm7
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm25
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/Distro/Ubuntu.pm2
-rw-r--r--os-plugins/plugins/vmware/OpenSLX/OSPlugin/vmware.pm24
7 files changed, 74 insertions, 37 deletions
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm
index 3c128f14..dda76379 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Base.pm
@@ -86,7 +86,7 @@ sub fillRunlevelScript
# distinction is made via enabled forwarding
setup_vmnet1() {
if [ -n "\$vmnet1" ] ; then
- test -c /dev/vmnet1 || mknod c 119 1 /dev/vmnet1
+ #test -c /dev/vmnet1 || mknod c 119 1 /dev/vmnet1
# the path might be directly point to the plugin dir
$location/vmnet-netifup -d /var/run/vmnet-netifup-vmnet1.pid \\
/dev/vmnet1 vmnet1
@@ -103,7 +103,7 @@ sub fillRunlevelScript
# incomplete ...
setup_vmnet8() {
if [ -n "\$vmnet8" ] ; then
- test -c /dev/vmnet1 || mknod c 119 8 /dev/vmnet8
+ #test -c /dev/vmnet8 || mknod c 119 8 /dev/vmnet8
# /etc/vmware/vmnet-natd-8.mac simply contains a mac like 00:50:56:F1:30:50
$location/vmnet-natd -d /var/run/vmnet-natd-8.pid \\
-m /etc/vmware/vmnet-natd-8.mac -c /etc/vmware/nat.conf
@@ -114,7 +114,6 @@ sub fillRunlevelScript
runvmdhcpd() {
if [ -n "\$dhcpif" ] ; then
# the path might be directly point to the plugin dir
- mkdir /var/run/vmware 2>/dev/null
$location/vmnet-dhcpd -cf /etc/vmware/dhcpd.conf -lf \\
/var/run/vmware/dhcpd.leases -pf /var/run/vmnet-dhcpd-vmnet8.pid \$dhcpif
fi
@@ -134,13 +133,16 @@ sub fillRunlevelScript
# message output should match the given vendor-os
echo "Stopping vmware background services ..."
killall vmnet-netifup vmnet-natd vmnet-bridge vmware vmplayer \\
- vmware-tray 2>/dev/null
+ vmware-tray vmnet-dhcpd 2>/dev/null
# wait for shutting down of interfaces
usleep 50000
unload_modules
;;
- status)
- echo "Say something useful here ..."
+ #status)
+ # echo "Say something useful here ..."
+ #;;
+ restart)
+ "\$0" stop && "\$0" start
;;
esac
exit 0
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm
index e8f40c16..43add481 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Debian.pm
@@ -33,8 +33,8 @@ sub fillRunlevelScript
my $script = unshiftHereDoc(<<" End-of-Here");
#! /bin/sh
- # Ubuntu specific start/stop script, generated via stage1 'vmware' plugin
- # install
+ # Ubuntu/Debian specific start/stop script, generated via stage1 'vmware'
+ # plugin install
# inspiration taken from vmware start script:
# Copyright 1998-2007 VMware, Inc. All rights reserved.
#
@@ -50,8 +50,10 @@ sub fillRunlevelScript
# Short-Description: Manages the services needed to run VMware software
# Description: Manages the services needed to run VMware software
### END INIT INFO
+
load_modules() {
# to be filled in via the stage1 configuration script
+ #TODO: everything behind || is not equal to Suse.pm
modprobe -qa vmmon vmnet vmblock 2>/dev/null || echo "Problem here!"
# most probably nobody wants to run the parallel port driver ...
#modprobe vm...
@@ -72,7 +74,9 @@ sub fillRunlevelScript
# distinction is made via enabled forwarding
setup_vmnet1() {
if [ -n "\$vmnet1" ] ; then
- test -c /dev/vmnet1 || mknod c 119 1 /dev/vmnet1
+ # we don't need the following test. It's handled by
+ # XX_vmware.sh
+ #test -c /dev/vmnet1 || mknod c 119 1 /dev/vmnet1
# the path might be directly point to the plugin dir
$location/vmnet-netifup -d /var/run/vmnet-netifup-vmnet1.pid \\
/dev/vmnet1 vmnet1
@@ -89,7 +93,9 @@ sub fillRunlevelScript
# incomplete ...
setup_vmnet8() {
if [ -n "\$vmnet8" ] ; then
- test -c /dev/vmnet1 || mknod c 119 8 /dev/vmnet8
+ # we don't need the following test. It's handled by
+ # XX_vmware.sh
+ #test -c /dev/vmnet8 || mknod c 119 8 /dev/vmnet8
# /etc/vmware/vmnet-natd-8.mac simply contains a mac like 00:50:56:F1:30:50
$location/vmnet-natd -d /var/run/vmnet-natd-8.pid \\
-m /etc/vmware/vmnet-natd-8.mac -c /etc/vmware/nat.conf
@@ -100,7 +106,6 @@ sub fillRunlevelScript
runvmdhcpd() {
if [ -n "\$dhcpif" ] ; then
# the path might be directly point to the plugin dir
- mkdir /var/run/vmware 2>/dev/null
$location/vmnet-dhcpd -cf /etc/vmware/dhcpd.conf -lf \\
/var/run/vmware/dhcpd.leases -pf /var/run/vmnet-dhcpd-vmnet8.pid \$dhcpif
fi
@@ -117,21 +122,33 @@ sub fillRunlevelScript
setup_vmnet0 || log_warning_msg "Problems setting up vmnet0 interface"
setup_vmnet1 || log_warning_msg "Problems setting up vmnet1 interface"
setup_vmnet8 || log_warning_msg "Problems setting up vmnet8 interface"
- runvmdhcpd
+ runvmdhcpd || log_warning_msg "Problems starting vmware dhcpd"
log_end_msg $?
;;
stop)
# message output should match the given vendor-os
log_daemon_msg "Stopping vmware background services ..." "vmware"
killall vmnet-netifup vmnet-natd vmnet-bridge vmware vmplayer \\
- vmware-tray 2>/dev/null
+ vmware-tray vmnet-dhcpd 2>/dev/null
# wait for shutting down of interfaces
usleep 50000
unload_modules
log_end_msg $?
;;
- status)
- log_daemon_msg "Say something useful here ..."
+ # we don't need a status yet... at least as long as it is
+ # unclear in which path the corresponding binary (see original
+ # /etc/init.d/vmware) is in our case
+ #status)
+ # log_daemon_msg "Say something useful here ..."
+ #;;
+ restart)
+ \$0 stop
+ \$0 start
+ exit $?
+ ;;
+ *)
+ log_success_msg "Usage: \$0 {start|stop|restart}"
+ exit 2
;;
esac
exit 0
@@ -139,4 +156,4 @@ sub fillRunlevelScript
return $script;
}
-1; \ No newline at end of file
+1;
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Fedora.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Fedora.pm
index 1a68a286..1c03540f 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Fedora.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Fedora.pm
@@ -27,4 +27,4 @@ use OpenSLX::Basics;
# TODO: implement!
-1; \ No newline at end of file
+1;
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm
index 594a55cd..cc84320d 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Gentoo.pm
@@ -69,7 +69,7 @@ sub fillRunlevelScript
# distinction is made via enabled forwarding
setup_vmnet1() {
if [ -n "\$vmnet1" ] ; then
- test -c /dev/vmnet1 || mknod c 119 1 /dev/vmnet1
+ #test -c /dev/vmnet1 || mknod c 119 1 /dev/vmnet1
# the path might be directly point to the plugin dir
$location/vmnet-netifup -d /var/run/vmnet-netifup-vmnet1.pid \\
/dev/vmnet1 vmnet1
@@ -86,7 +86,7 @@ sub fillRunlevelScript
# incomplete ...
setup_vmnet8() {
if [ -n "\$vmnet8" ] ; then
- test -c /dev/vmnet1 || mknod c 119 8 /dev/vmnet8
+ #test -c /dev/vmnet8 || mknod c 119 8 /dev/vmnet8
# /etc/vmware/vmnet-natd-8.mac simply contains a mac like 00:50:56:F1:30:50
$location/vmnet-natd -d /var/run/vmnet-natd-8.pid \\
-m /etc/vmware/vmnet-natd-8.mac -c /etc/vmware/nat.conf
@@ -97,7 +97,6 @@ sub fillRunlevelScript
runvmdhcpd() {
if [ -n "\$dhcpif" ] ; then
# the path might be directly point to the plugin dir
- mkdir /var/run/vmware 2>/dev/null
$location/vmnet-dhcpd -cf /etc/vmware/dhcpd.conf -lf \\
/var/run/vmware/dhcpd.leases -pf /var/run/vmnet-dhcpd-vmnet8.pid \$dhcpif
fi
@@ -120,7 +119,7 @@ sub fillRunlevelScript
# message output should match the given vendor-os
ebegin "Stopping vmware background services ..."
killall vmnet-netifup vmnet-natd vmnet-bridge vmware vmplayer \\
- vmware-tray 2>/dev/null
+ vmware-tray vmnet-dhcpd 2>/dev/null
# wait for shutting down of interfaces
usleep 50000
unload_modules
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm
index 9c380cb6..098b9f6a 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Suse.pm
@@ -74,7 +74,9 @@ sub fillRunlevelScript
# distinction is made via enabled forwarding
setup_vmnet1() {
if [ -n "\$vmnet1" ] ; then
- test -c /dev/vmnet1 || mknod c 119 1 /dev/vmnet1
+ # we don't need the following test. It's handled by
+ # XX_vmware.sh
+ #test -c /dev/vmnet1 || mknod c 119 1 /dev/vmnet1
# the path might be directly point to the plugin dir
$location/vmnet-netifup -d /var/run/vmnet-netifup-vmnet1.pid \\
/dev/vmnet1 vmnet1
@@ -91,7 +93,9 @@ sub fillRunlevelScript
# incomplete ...
setup_vmnet8() {
if [ -n "\$vmnet8" ] ; then
- test -c /dev/vmnet1 || mknod c 119 8 /dev/vmnet8
+ # we don't need the following test. It's handled by
+ # XX_vmware.sh
+ #test -c /dev/vmnet8 || mknod c 119 8 /dev/vmnet8
# /etc/vmware/vmnet-natd-8.mac simply contains a mac like 00:50:56:F1:30:50
$location/vmnet-natd -d /var/run/vmnet-natd-8.pid \\
-m /etc/vmware/vmnet-natd-8.mac -c /etc/vmware/nat.conf
@@ -102,7 +106,6 @@ sub fillRunlevelScript
runvmdhcpd() {
if [ -n "\$dhcpif" ] ; then
# the path might be directly point to the plugin dir
- mkdir /var/run/vmware 2>/dev/null
$location/vmnet-dhcpd -cf /etc/vmware/dhcpd.conf -lf \\
/var/run/vmware/dhcpd.leases -pf /var/run/vmnet-dhcpd-vmnet8.pid \$dhcpif
fi
@@ -128,15 +131,25 @@ sub fillRunlevelScript
# message output should match the given vendor-os
echo -n "Stopping vmware background services ..."
killall vmnet-netifup vmnet-natd vmnet-bridge vmware vmplayer \\
- vmware-tray 2>/dev/null
+ vmware-tray vmnet-dhcpd 2>/dev/null
# wait for shutting down of interfaces
usleep 50000
unload_modules
rc_status -v
;;
- status)
- echo -n "Say something useful here ..."
+ # we don't need a status yet... at least as long as it is
+ # unclear in which path the corresponding binary (see original
+ # /etc/init.d/vmware) is in our case
+ #status)
+ # echo -n "Say something useful here ..."
+ #;;
+ restart)
+ "\$0" stop && "\$0" start
;;
+ *)
+ echo "Usage: `basename "\$0"` {start|stop|restart}"
+ exit 1
+ ;;
esac
exit 0
End-of-Here
diff --git a/os-plugins/plugins/vmware/OpenSLX/Distro/Ubuntu.pm b/os-plugins/plugins/vmware/OpenSLX/Distro/Ubuntu.pm
index 02b44b5c..d7ffc2e5 100644
--- a/os-plugins/plugins/vmware/OpenSLX/Distro/Ubuntu.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/Distro/Ubuntu.pm
@@ -20,4 +20,4 @@ use warnings;
# inherit everything from Debian (as Ubuntu is based on it anyway)
use base qw(vmware::OpenSLX::Distro::Debian);
-1; \ No newline at end of file
+1;
diff --git a/os-plugins/plugins/vmware/OpenSLX/OSPlugin/vmware.pm b/os-plugins/plugins/vmware/OpenSLX/OSPlugin/vmware.pm
index 6b96fead..942332c9 100644
--- a/os-plugins/plugins/vmware/OpenSLX/OSPlugin/vmware.pm
+++ b/os-plugins/plugins/vmware/OpenSLX/OSPlugin/vmware.pm
@@ -203,22 +203,26 @@ sub installationPhase
$self->_writeRunlevelScript($vmbin, $runlevelScript);
}
- # generate links for the user executables vmware and player and a
- # simplified version of the start script
+ # creat our own simplified version of the vmware and player wrapper
+ # Depending on the configured kind it will be copied in stage3
@files = qw( vmware vmplayer );
foreach my $file (@files) {
# OLTA: this backup strategy is useless if invoked twice, so I have
# deactivated it
- # rename ("/usr/bin/$file", "/usr/bin/$file.slx-bak");
- linkFile("/usr/bin/$file", "/var/X11R6/bin/$file");
+ # VOLKER: we need to remove them, because /usr isn't tempfs. So we
+ # backup it. I don't see where it is invoken twice
+ rename ("/usr/bin/$file", "/usr/bin/$file.slx-bak");
+ # because of tempfs of /var but not /usr we link the file
+ # to /var/..., where we can write in stage3
+ linkFile("/var/X11R6/bin/$file", "/usr/bin/$file");
my $script = unshiftHereDoc(<<" End-of-Here");
#!/bin/sh
# written by OpenSLX-plugin 'vmware' in Stage1
# radically simplified version of the original script $file by VMware Inc.
PREFIX=$vmpath # depends on the vmware location
- exec "\$PREFIX"'/lib/wrapper-gtk24.sh' \
- "\$PREFIX"'/lib' \
- "\$PREFIX"'/bin/$file' \
+ exec "\$PREFIX"'/lib/wrapper-gtk24.sh' \\
+ "\$PREFIX"'/lib' \\
+ "\$PREFIX"'/bin/$file' \\
"\$PREFIX"'/libconf' "\$@"
End-of-Here
spitFile("$self->{'pluginRepositoryPath'}/$file", $script);
@@ -236,8 +240,10 @@ sub removalPhase
# restore old start scripts - to be discussed
my @files = qw( vmware vmplayer );
foreach my $file (@files) {
- # rename ("/usr/bin/$file.slx-bak", "/usr/bin/$file");
- unlink("/var/X11R6/bin/$file");
+ unlink("/usr/bin/$file");
+ rename ("/usr/bin/$file.slx-bak", "/usr/bin/$file");
+ # we only create in stage3 a file there... not needed
+ #unlink("/var/X11R6/bin/$file");
}
# TODO: path is distro specific
#rename ("/etc/init.d/vmware.slx-bak", "/etc/init.d/vmware");