diff options
author | Sebastian Schmelzer | 2010-09-02 17:50:49 +0200 |
---|---|---|
committer | Sebastian Schmelzer | 2010-09-02 17:50:49 +0200 |
commit | 416ab8a37f1b07dc9f6c0fb3ff1a8ff2036510b5 (patch) | |
tree | 4715f7d742fec50931017f38fe6ff0a89d4ceccc /os-plugins/plugins/xen/OpenSLX/OSPlugin/xen.pm | |
parent | Fix for the problem reported on the list (sed filter forgotten for the (diff) | |
download | core-416ab8a37f1b07dc9f6c0fb3ff1a8ff2036510b5.tar.gz core-416ab8a37f1b07dc9f6c0fb3ff1a8ff2036510b5.tar.xz core-416ab8a37f1b07dc9f6c0fb3ff1a8ff2036510b5.zip |
change dir structure
Diffstat (limited to 'os-plugins/plugins/xen/OpenSLX/OSPlugin/xen.pm')
-rw-r--r-- | os-plugins/plugins/xen/OpenSLX/OSPlugin/xen.pm | 185 |
1 files changed, 0 insertions, 185 deletions
diff --git a/os-plugins/plugins/xen/OpenSLX/OSPlugin/xen.pm b/os-plugins/plugins/xen/OpenSLX/OSPlugin/xen.pm deleted file mode 100644 index 12331983..00000000 --- a/os-plugins/plugins/xen/OpenSLX/OSPlugin/xen.pm +++ /dev/null @@ -1,185 +0,0 @@ -# Copyright (c) 2010 - RZ Uni Freiburg -# Copyright (c) 2010 - OpenSLX GmbH -# -# This program is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your suggestions, praise, or complaints to feedback@openslx.org -# -# General information about OpenSLX can be found at http://openslx.org/ -# ----------------------------------------------------------------------------- -# xen.pm -# - implementation of the 'xen' plugin -# ----------------------------------------------------------------------------- -package OpenSLX::OSPlugin::xen; - -use strict; -use warnings; - -use base qw(OpenSLX::OSPlugin::Base); - -use File::Path; - -use OpenSLX::Basics; -use OpenSLX::Utils; - -sub new -{ - my $class = shift; - - my $self = { - name => 'xen', - }; - - return bless $self, $class; -} - -sub getInfo -{ - my $self = shift; - - return { - description => unshiftHereDoc(<<' End-of-Here'), - Configures Xen diskless boot, no installation yet. - End-of-Here - precedence => 10, - }; -} - -sub getAttrInfo -{ - my $self = shift; - - return { - 'xen::active' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - should the 'xen'-plugin be executed during boot? - End-of-Here - content_regex => qr{^(0|1)$}, - content_descr => '1 means active - 0 means inactive', - # set active to 0, later set specially created Xen system to 1 - default => '0', - }, - # attribute 'imagesrc' defines where we can find xen images - 'xen::imagesrc' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - Where do we store our xen images? NFS? Filesystem? - End-of-Here - content_regex => qr{^(/|nfs://)}, - content_descr => 'local path or URI or "-" (unset)', - default => undef, - }, - # attribute 'tftpdir' defines TFTP dir for network boots /w NAT - 'xen::tftpdir' => { - applies_to_systems => 1, - applies_to_clients => 1, - description => unshiftHereDoc(<<' End-of-Here'), - Do you want to define a stage 4 TFTP dir for netwoork boots? - Needed to boot Xen via NFS, we only need the initramfs - Hint: Mount your TFTP ro via NFS to a local dir - End-of-Here - content_regex => qr{^(/)}, - content_descr => 'local path or "-" (unset)', - default => undef, - }, - }; -} - -sub installationPhase -{ - my $self = shift; - my $info = shift; - - $self->{pluginRepositoryPath} = $info->{'plugin-repo-path'}; - $self->{openslxBasePath} = $info->{'openslx-base-path'}; - - # Copy run-virt.include and template files to the appropriate place for - # inclusion in stage4 - my $pluginName = $self->{'name'}; - my $pluginBasePath = - "$self->{openslxBasePath}/lib/plugins/$pluginName/files"; - - foreach my $file ( qw( run-virt.include machine.include hvm.include ) ) { - copyFile("$pluginBasePath/$file", "$self->{pluginRepositoryPath}/"); - chmod 0644, "$self->{pluginRepositoryPath}/$file"; - } - - return; -} - -sub removalPhase -{ - my $self = shift; - my $info = shift; - - return; -} - -sub suggestAdditionalKernelModules -{ - my $self = shift; - my $makeInitRamFSEngine = shift; - - my @suggestedModules; - - # Xen needs bridge module, for guests xennet and maybe xenblk - # earlier versions needed netloop - push @suggestedModules, qw( bridge xennet xenblk ); - - return @suggestedModules; -} - -#sub _xenLabel -#{ -# # set label for each Xen system -# foreach my $info (@$systemInfos) { -# if ($info->{xen::active} eq 1) { -# my $label = $info->{label} || ''; -# if (!length($label) || $label eq $info->{name}) { -# if ($info->{name} =~ m{^(.+)::(.+)$}) { -# my $system = $1; -# my $exportType = $2; -# $label = $system . "-xen" . ' ' x (36-length($system)) -# . $exportType; -# } else { -# $label = $info->{name}; -# } -# } -# } -# $info->{pxeLabel} = $label; -# } -# return $info; #??? -#} - -#sub _xenBootEntry -#{ -# # Xen entries look different -# # Example: -# # KERNEL mboot.c32 vendor-os/xen.gz dom0_mem=128000 --- -# # vendor-os/vmlinuz-xen debug=3 --- vendor-os/initramfs-1 -# # TODO: versionsort oder per attr? -# if ($info->{xen::active} eq 1) { -# my $xenKernel = slxsystem(ls /boot/xen* | sort | tail -n 1); -# $append .= " file=$bootURI" if length($bootURI); -# $append .= " file=$tftpPrefix" if length($tftpPrefix); -# $append .= " $clientAppend"; -# $append .= " --- $pxePrefix$vendorOSName/$info->{'initramfs-name'}"; -# $slxLabels .= "LABEL openslx-$info->{'external-id'}-xen\n"; -# # $slxLabels .= $pxeDefault; -# $slxLabels .= "\tMENU LABEL ^$info->{pxeLabel}\n"; -# $slxLabels .= "\tKERNEL mboot.c32\n"; -# $slxLabels .= "\tAPPEND $pxePrefix$vendorOSName/$xenKernel"; -# # $slxLabels .= " dom0_mem=128000"; -# $slxLabels .= " --- $pxePrefix$vendorOSName/$kernelName"; -# $slxLabels .= " --- $append\n"; -# $slxLabels .= "\tIPAPPEND 3\n"; -# } -# return $slxLabels; -#} - -1; |