summaryrefslogtreecommitdiffstats
path: root/boot-env
diff options
context:
space:
mode:
authorOliver Tappe2008-09-04 21:36:55 +0200
committerOliver Tappe2008-09-04 21:36:55 +0200
commit50f1d0be005174b05032c34ae9e251377e3b3ef5 (patch)
tree5088b0bdc0b2cee825d6f783b67836b341aecd02 /boot-env
parent* added stage3 nvidia setup (diff)
downloadcore-50f1d0be005174b05032c34ae9e251377e3b3ef5.tar.gz
core-50f1d0be005174b05032c34ae9e251377e3b3ef5.tar.xz
core-50f1d0be005174b05032c34ae9e251377e3b3ef5.zip
* turned the client fields 'boot_type','unbootable' and 'kernel_params' as well
as the system fields 'kernel_params' and 'hidden' into attributes * added client-only attribute 'boot_uri' which will soon be evaluated by the preboot-cd boot environment git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@2205 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'boot-env')
-rw-r--r--boot-env/OpenSLX/BootEnvironment/Base.pm12
-rw-r--r--boot-env/OpenSLX/BootEnvironment/PREBOOT_CD.pm12
-rw-r--r--boot-env/OpenSLX/BootEnvironment/PXE.pm4
3 files changed, 16 insertions, 12 deletions
diff --git a/boot-env/OpenSLX/BootEnvironment/Base.pm b/boot-env/OpenSLX/BootEnvironment/Base.pm
index 5e966374..8b8dc377 100644
--- a/boot-env/OpenSLX/BootEnvironment/Base.pm
+++ b/boot-env/OpenSLX/BootEnvironment/Base.pm
@@ -106,7 +106,7 @@ sub writeFilesRequiredForBooting
my $file = $cached->{file};
vlog(1, _tr('copying initialramfs %s from %s', $initramfsName, $file));
slxsystem("cp -a $file $initramfsName") unless $self->{'dry-run'};
- $info->{kernel_params} = $cached->{kernel_params};
+ $info->{attrs}->{kernel_params} = $cached->{attrs}->{kernel_params};
return 0;
}
else {
@@ -114,7 +114,7 @@ sub writeFilesRequiredForBooting
$self->_makeInitRamFS($info, $initramfsName);
$initramfsMap{$initramfsID} = {
file => $initramfsName,
- kernel_params => $info->{kernel_params},
+ kernel_params => $info->{attrs}->{kernel_params},
};
return 1;
}
@@ -138,7 +138,8 @@ sub _makeInitRamFS
'export-name' => $info->{export}->{name},
'export-uri' => $info->{'export-uri'},
'initramfs' => $initramfs,
- 'kernel-params' => [ split ' ', ($info->{kernel_params} || '') ],
+ 'kernel-params'
+ => [ split ' ', ($info->{attrs}->{kernel_params} || '') ],
'kernel-version' => $kernelFile =~ m[-(.+)$] ? $1 : '',
'plugins' => $info->{'active-plugins'},
'root-path'
@@ -148,7 +149,7 @@ sub _makeInitRamFS
};
# TODO: make debug-level an explicit attribute, it's used in many places!
- my $kernelParams = $info->{kernel_params} || '';
+ my $kernelParams = $info->{attrs}->{kernel_params} || '';
if ($kernelParams =~ m{debug(?:=(\d+))?}) {
my $debugLevel = defined $1 ? $1 : '1';
$params->{'debug-level'} = $debugLevel;
@@ -159,7 +160,8 @@ sub _makeInitRamFS
$makeInitRamFSEngine->execute($self->{'dry-run'});
# copy back kernel-params, as they might have been changed (by plugins)
- $info->{kernel_params} = join ' ', $makeInitRamFSEngine->kernelParams();
+ $info->{attrs}->{kernel_params}
+ = join ' ', $makeInitRamFSEngine->kernelParams();
return;
}
diff --git a/boot-env/OpenSLX/BootEnvironment/PREBOOT_CD.pm b/boot-env/OpenSLX/BootEnvironment/PREBOOT_CD.pm
index 8f24d7ce..a10a7f6b 100644
--- a/boot-env/OpenSLX/BootEnvironment/PREBOOT_CD.pm
+++ b/boot-env/OpenSLX/BootEnvironment/PREBOOT_CD.pm
@@ -72,7 +72,7 @@ sub writeBootloaderMenuFor
#
# my $pxeConfig = $self->_getTemplate();
# my $pxeFile = "$pxeConfigPath/$externalClientID";
-# my $clientAppend = $client->{kernel_params} || '';
+# my $clientAppend = $client->{attrs}->{kernel_params_client} || '';
# vlog(1, _tr("writing PXE-file %s", $pxeFile));
#
# # set label for each system
@@ -93,7 +93,7 @@ sub writeBootloaderMenuFor
# foreach my $info (sort { $a->{label} cmp $b->{label} } @$systemInfos) {
# my $vendorOSName = $info->{'vendor-os'}->{name};
# my $kernelName = basename($info->{'kernel-file'});
-# my $append = $info->{kernel_params};
+# my $append = $info->{attrs}->{kernel_params};
# $append .= " initrd=$vendorOSName/$info->{'initramfs-name'}";
# $append .= " $clientAppend";
# $slxLabels .= "LABEL openslx-$info->{'external-id'}\n";
@@ -245,7 +245,8 @@ sub _makePrebootInitRamFS
'export-name' => undef,
'export-uri' => undef,
'initramfs' => $initramfs,
- 'kernel-params' => [ split ' ', ($info->{kernel_params} || '') ],
+ 'kernel-params'
+ => [ split ' ', ($info->{attrs}->{kernel_params} || '') ],
'kernel-version' => $kernelFile =~ m[-(.+)$] ? $1 : '',
'plugins' => '',
'root-path'
@@ -255,7 +256,7 @@ sub _makePrebootInitRamFS
};
# TODO: make debug-level an explicit attribute, it's used in many places!
- my $kernelParams = $info->{kernel_params} || '';
+ my $kernelParams = $info->{attrs}->{kernel_params} || '';
if ($kernelParams =~ m{debug(?:=(\d+))?}) {
my $debugLevel = defined $1 ? $1 : '1';
$params->{'debug-level'} = $debugLevel;
@@ -266,7 +267,8 @@ sub _makePrebootInitRamFS
$makeInitRamFSEngine->execute($self->{'dry-run'});
# copy back kernel-params, as they might have been changed (by plugins)
- $info->{kernel_params} = join ' ', $makeInitRamFSEngine->kernelParams();
+ $info->{attrs}->{kernel_params}
+ = join ' ', $makeInitRamFSEngine->kernelParams();
return;
}
diff --git a/boot-env/OpenSLX/BootEnvironment/PXE.pm b/boot-env/OpenSLX/BootEnvironment/PXE.pm
index a746d9d4..d6ddae36 100644
--- a/boot-env/OpenSLX/BootEnvironment/PXE.pm
+++ b/boot-env/OpenSLX/BootEnvironment/PXE.pm
@@ -58,7 +58,7 @@ sub writeBootloaderMenuFor
my $pxeConfig = $self->_getTemplate();
my $pxeFile = "$pxeConfigPath/$externalClientID";
- my $clientAppend = $client->{kernel_params} || '';
+ my $clientAppend = $client->{attrs}->{kernel_params_client} || '';
vlog(1, _tr("writing PXE-file %s", $pxeFile));
# set label for each system
@@ -79,7 +79,7 @@ sub writeBootloaderMenuFor
foreach my $info (sort { $a->{label} cmp $b->{label} } @$systemInfos) {
my $vendorOSName = $info->{'vendor-os'}->{name};
my $kernelName = basename($info->{'kernel-file'});
- my $append = $info->{kernel_params};
+ my $append = $info->{attrs}->{kernel_params};
$append .= " initrd=$vendorOSName/$info->{'initramfs-name'}";
$append .= " $clientAppend";
$slxLabels .= "LABEL openslx-$info->{'external-id'}\n";