From 416ab8a37f1b07dc9f6c0fb3ff1a8ff2036510b5 Mon Sep 17 00:00:00 2001 From: Sebastian Schmelzer Date: Thu, 2 Sep 2010 17:50:49 +0200 Subject: change dir structure --- src/lib/OpenSLX/DistroUtils.pm | 90 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 src/lib/OpenSLX/DistroUtils.pm (limited to 'src/lib/OpenSLX/DistroUtils.pm') diff --git a/src/lib/OpenSLX/DistroUtils.pm b/src/lib/OpenSLX/DistroUtils.pm new file mode 100644 index 00000000..d7456d92 --- /dev/null +++ b/src/lib/OpenSLX/DistroUtils.pm @@ -0,0 +1,90 @@ +# Copyright (c) 2008, 2009 - 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/ +# ----------------------------------------------------------------------------- +# DistroUtils.pm +# - provides utility distro based functions for OpenSLX +# ----------------------------------------------------------------------------- +package OpenSLX::DistroUtils; + +use strict; +use warnings; + +use OpenSLX::Utils; +use OpenSLX::Basics; + +use Data::Dumper; + +use OpenSLX::DistroUtils::Engine; +use OpenSLX::DistroUtils::InitFile; + +use Exporter; + +use vars qw(@ISA @EXPORT $VERSION); + +use Exporter; +$VERSION = 1.01; +@ISA = qw(Exporter); + +@EXPORT = qw( + newInitFile + getInitFileForDistro + simpleInitFile + getKernelVersionForDistro +); + + + +sub newInitFile { + return OpenSLX::DistroUtils::InitFile->new(); +} + + +sub simpleInitFile { + my $config = shift; + my $initFile = OpenSLX::DistroUtils::InitFile->new(); + + return $initFile->simpleSetup($config); +} + + +sub getInitFileForDistro { + my $initFile = shift; + my $distroName = shift; + my $distro; + + my $engine = OpenSLX::DistroUtils::Engine->new(); + + if ($distroName) { + $distro = $engine->loadDistro($distroName); + } else { + $distro = $engine->loadDistro('Base'); + } + + #return $distro->dumpInit($initFile); + return $distro->generateInitFile($initFile); +} + +sub getKernelVersionForDistro { + my $kernelPath = shift; + my $distroName = shift; + my $distro; + + my $engine = OpenSLX::DistroUtils::Engine->new(); + + if ($distroName) { + $distro = $engine->loadDistro($distroName); + } else { + $distro = $engine->loadDistro('Base'); + } + + return $distro->getKernelVersion($kernelPath); +} + +1; \ No newline at end of file -- cgit v1.2.3-55-g7522