summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryves <steve.harrison@gmx.net>2011-12-13 23:09:34 +0100
committeryves <steve.harrison@gmx.net>2011-12-13 23:09:34 +0100
commitf59666766ad13325aa79014b5c2fc4940692b0c5 (patch)
treed9e70cb34d1bc7b858fd9fa486d2c0acb0da563c
parentd5eb42d1191d344ada0ed2ee082b504b83e5c692 (diff)
downloadiscsi-helper-f59666766ad13325aa79014b5c2fc4940692b0c5.tar.gz
iscsi-helper-f59666766ad13325aa79014b5c2fc4940692b0c5.tar.bz2
iscsi-helper-f59666766ad13325aa79014b5c2fc4940692b0c5.zip
some arrangements, sorted code and stuff
-rwxr-xr-xcreateAndExportDisk.py65
1 files changed, 34 insertions, 31 deletions
diff --git a/createAndExportDisk.py b/createAndExportDisk.py
index 52638ea..535300e 100755
--- a/createAndExportDisk.py
+++ b/createAndExportDisk.py
@@ -10,32 +10,13 @@ def logInfo(msg):
def logErr(msg):
print("\033[1;31mERROR\033[0m " + str(msg))
-# vars
-volumeGroupName = 'scsiRaid'
-defaultDiskSize = '3G'
-
-diskSize = ''
-diskSizeUnit='g'
-vmName = ''
-
-# configure known options
-parser = optparse.OptionParser()
-parser.add_option("-s", "--size", dest="size", default=defaultDiskSize,
- help="SIZE of vm root disk", metavar="SIZE")
-parser.add_option("-n", "--name", dest="name",
- help="name of the vm to create NAME", metavar="NAME")
-parser.add_option("-v", "--verbose", dest="verbose",
- action="store_true", default=False,
- help="should I do output")
-(options, args) = parser.parse_args()
-
def execute(command):
- logInfo('Would execute: ' + str(command))
+ logInfo('would execute: ' + str(command))
def parseVmName(rawString):
- # valdiate vm name
+ # valdiate vm-name
if not re.match('^vm-[a-z]+[0-9]?(-[a-z])?$',rawString):
- logErr('The name ' + options.name + ' is no valid vm-name');
+ logErr('the name ' + rawString + ' is no valid vm-name');
sys.exit(2)
return rawString
@@ -48,19 +29,19 @@ def parseDiskSize(rawString):
match = re.match('^([0-9]+)([GgMm])?$',rawString)
if not match:
- logErr('The name ' + raw + ' is no a valid disk size <number>(G|M)?');
+ logErr('the name ' + raw + ' is no a valid disk size <number>(G|M)?');
sys.exit(2)
try:
diskSizeUnit = match.group(2)
diskSize = int(match.group(1))
except ValueError:
- logErr('The size ' + options.size + ' is not a valid disk size');
+ logErr('the size ' + options.size + ' is not a valid disk size');
sys.exit(2)
if not diskSizeUnit:
diskSizeUnit = 'G'
- logInfo("Interpreteing disk size in gigbyte magnitude")
+ logInfo("interpreteing disk size in gigbyte magnitude")
if diskSizeUnit == 'm' or diskSizeUnit == 'M':
if not(1024 < diskSize and diskSize < 500000):
@@ -72,19 +53,41 @@ def parseDiskSize(rawString):
sys.exit(2)
return (diskSize, diskSizeUnit)
-# check if required options are given
-if options.name == None:
- logErr("A vm name (-n) schould be given")
+# -----------------------------------------------------------------------------
+# Functionality starts here, before only libary code
+# -----------------------------------------------------------------------------
+
+# vars
+volumeGroupName = 'scsiRaid'
+defaultDiskSize = '3G'
+
+# configure known options
+usage = "usage: %prog VMNAME [options]"
+parser = optparse.OptionParser(usage=usage)
+parser.add_option("-s", "--size", dest="size", default=defaultDiskSize,
+ help="SIZE of vm root disk", metavar="SIZE")
+parser.add_option("-v", "--verbose", dest="verbose",
+ action="store_true", default=False,
+ help="should I do output")
+(options, args) = parser.parse_args()
+
+# check if required args are given
+if len(args) < 1:
+ parser.print_usage()
+ logErr("a vm-name must be given!")
+ sys.exit(2)
+elif len(args) > 1:
+ parser.print_usage()
+ logErr("to many arguments given!")
sys.exit(2)
-vmName = parseVmName(options.name)
+vmName = parseVmName(args[0])
diskSize, diskSizeUnit = parseDiskSize(options.size)
execute(["lvcreate", "-n", vmName, "-L", str(diskSize) + str(diskSizeUnit)])
execute(["mkfs", "/dev/" + volumeGroupName + "/" + vmName, "-l",vmName])
execute(["addIscsiDisk", vmName])
-logInfo("All done. Proceed to {pang,peng} an install your vm there!")
+logInfo("all done. Proceed to {pang,peng} an install your vm there!")
sys.exit(0)
-