summaryrefslogtreecommitdiffstats
path: root/os-plugins/OpenSLX
diff options
context:
space:
mode:
Diffstat (limited to 'os-plugins/OpenSLX')
-rw-r--r--os-plugins/OpenSLX/OSPlugin/Base.pm12
-rw-r--r--os-plugins/OpenSLX/OSPlugin/Roster.pm20
2 files changed, 32 insertions, 0 deletions
diff --git a/os-plugins/OpenSLX/OSPlugin/Base.pm b/os-plugins/OpenSLX/OSPlugin/Base.pm
index 34b551d9..4b370375 100644
--- a/os-plugins/OpenSLX/OSPlugin/Base.pm
+++ b/os-plugins/OpenSLX/OSPlugin/Base.pm
@@ -128,3 +128,15 @@ sub postRemovalPhase
my $pluginRepositoryPath = shift;
my $pluginTempPath = shift;
}
+
+sub copyRequiredFilesIntoInitramfs
+{ # called by config-demuxer in order to give the plugin a chance to copy
+ # all required files from the vendor-OS into the initramfs.
+ # N.B.: Only files that are indeed required by the initramfs should be
+ # copied here, i.e. files that are needed *before* the root-fs
+ # has been mounted!
+ my $self = shift;
+ my $targetPath = shift;
+ my $attrs = shift;
+ my $makeInitRamFSEngine = shift;
+}
diff --git a/os-plugins/OpenSLX/OSPlugin/Roster.pm b/os-plugins/OpenSLX/OSPlugin/Roster.pm
index 832b0bb3..791865f1 100644
--- a/os-plugins/OpenSLX/OSPlugin/Roster.pm
+++ b/os-plugins/OpenSLX/OSPlugin/Roster.pm
@@ -17,6 +17,7 @@ use strict;
use warnings;
use OpenSLX::Basics;
+use Storable qw(dclone);
my %plugins;
@@ -39,6 +40,25 @@ sub getAvailablePlugins
return \%pluginInfo;
}
+=item C<getPlugin()>
+
+Returns an instance of the plugin with the given name
+
+=cut
+
+sub getPlugin
+{
+ my $class = shift;
+ my $pluginName = shift;
+
+ $class->_init() if !%plugins;
+
+ my $plugin = $plugins{$pluginName};
+ return if !$plugin;
+
+ return dclone($plugin);
+}
+
=item C<getPluginAttrInfo()>
Returns a hash that contains info about the attributes support by the