summaryrefslogtreecommitdiffstats
path: root/installer/OpenSLX/OSExport/ExportType
diff options
context:
space:
mode:
authorOliver Tappe2007-05-07 18:07:15 +0200
committerOliver Tappe2007-05-07 18:07:15 +0200
commit47b886b5e1b7a00ae3fb4d0cf247eab0353161dd (patch)
tree1fa33d963536863ae61c650e22d2bc154c89281c /installer/OpenSLX/OSExport/ExportType
parent* moved instantiateClass() from OpenSLX::Utils to OpenSLX::Basics (diff)
downloadcore-47b886b5e1b7a00ae3fb4d0cf247eab0353161dd.tar.gz
core-47b886b5e1b7a00ae3fb4d0cf247eab0353161dd.tar.xz
core-47b886b5e1b7a00ae3fb4d0cf247eab0353161dd.zip
* reworked construction of export-URI to be delegated into the respective
exporter module, as a result, the NBD-URLs are now correct * added 'nbd' as an alias for the 'nbd-squash' export type git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1024 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'installer/OpenSLX/OSExport/ExportType')
-rw-r--r--installer/OpenSLX/OSExport/ExportType/Base.pm7
-rw-r--r--installer/OpenSLX/OSExport/ExportType/NBD_Squash.pm15
-rw-r--r--installer/OpenSLX/OSExport/ExportType/NFS.pm15
3 files changed, 34 insertions, 3 deletions
diff --git a/installer/OpenSLX/OSExport/ExportType/Base.pm b/installer/OpenSLX/OSExport/ExportType/Base.pm
index ccf21826..a21d5499 100644
--- a/installer/OpenSLX/OSExport/ExportType/Base.pm
+++ b/installer/OpenSLX/OSExport/ExportType/Base.pm
@@ -60,11 +60,12 @@ sub addExportToConfigDB
return $openslxDB->addExport($export);
}
-sub requiredFSMods
+sub generateExportURI
{
- my $self = shift;
+}
- return '';
+sub requiredFSMods
+{
}
################################################################################
diff --git a/installer/OpenSLX/OSExport/ExportType/NBD_Squash.pm b/installer/OpenSLX/OSExport/ExportType/NBD_Squash.pm
index ec25d067..d5782b59 100644
--- a/installer/OpenSLX/OSExport/ExportType/NBD_Squash.pm
+++ b/installer/OpenSLX/OSExport/ExportType/NBD_Squash.pm
@@ -21,6 +21,7 @@ use strict;
use Carp;
use File::Basename;
use OpenSLX::Basics;
+use OpenSLX::ConfigDB qw(:support);
use OpenSLX::OSExport::ExportType::Base 1.01;
################################################################################
@@ -111,6 +112,20 @@ sub addExportToConfigDB
return $res;
}
+sub generateExportURI
+{
+ my $self = shift;
+ my $export = shift;
+
+ my $server
+ = length($export->{server_ip})
+ ? $export->{server_ip}
+ : generatePlaceholderFor('serverip');
+ $server .= ":$export->{port}" if length($export->{port});
+
+ return "nbd://$server/squashfs";
+}
+
sub requiredFSMods
{
my $self = shift;
diff --git a/installer/OpenSLX/OSExport/ExportType/NFS.pm b/installer/OpenSLX/OSExport/ExportType/NFS.pm
index dad07b57..fa1d73b3 100644
--- a/installer/OpenSLX/OSExport/ExportType/NFS.pm
+++ b/installer/OpenSLX/OSExport/ExportType/NFS.pm
@@ -21,6 +21,7 @@ use strict;
use Carp;
use File::Basename;
use OpenSLX::Basics;
+use OpenSLX::ConfigDB qw(:support);
use OpenSLX::Utils;
use OpenSLX::OSExport::ExportType::Base 1.01;
@@ -58,6 +59,20 @@ sub purgeExport
1;
}
+sub generateExportURI
+{
+ my $self = shift;
+ my $export = shift;
+
+ my $server
+ = length($export->{server_ip})
+ ? $export->{server_ip}
+ : generatePlaceholderFor('serverip');
+ $server .= ":$export->{port}" if length($export->{port});
+
+ return "nfs://$server$openslxConfig{'export-path'}/nfs/$export->{name}"
+}
+
sub requiredFSMods
{
my $self = shift;