From: Tony Mack Date: Mon, 3 Oct 2011 19:47:22 +0000 (-0400) Subject: use sfa.rspec.rspec.RSpec to parse rspecs instead sfa.rspecs.rspec_parser X-Git-Tag: sfa-1.1-1~161 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=6ff284dd5e2f6201b2348132c3abb4ad1ef37228;p=sfa.git use sfa.rspec.rspec.RSpec to parse rspecs instead sfa.rspecs.rspec_parser --- diff --git a/sfa/client/sfiAddSliver.py b/sfa/client/sfiAddSliver.py index a96c678c..0bdbaddc 100755 --- a/sfa/client/sfiAddSliver.py +++ b/sfa/client/sfiAddSliver.py @@ -2,7 +2,8 @@ import sys from sfa.client.sfi_commands import Commands -from sfa.rspecs.rspec_parser import parse_rspec +from sfa.rspecs.rspec import RSpec +from sfa.rspecs.version_manager import VersionManager command = Commands(usage="%prog [options] node1 node2...", description="Add slivers to the RSpec. " + @@ -25,16 +26,19 @@ if command.opts.outfile: else: outfile=sys.stdout -rspec = parse_rspec(infile) -rspec.type = 'request' +request_rspec = RSpec(infile) nodes = file(command.opts.nodefile).read().split() +version_manager = VersionManager() try: - if rspec.version['type'].lower() == 'protogeni': - rspec.xml.set('type', 'request') + type = request_rspec.version.type + version_num = request_rspec.version.version + manifest_version = version_manager._get_version(type, version_num, 'manifest') + manifest_rspec = RSpec(version=manifest_version) slivers = [{'hostname': node} for node in nodes] - rspec.add_slivers(slivers) + manifest_rspec.version.merge(request_rspec) + manifest_rspec.version.add_slivers(slivers) except: print >> sys.stderr, "FAILED: %s" % nodes sys.exit(1) -print >>outfile, rspec.toxml(cleanup=True) +print >>outfile, manifest_rspec.toxml(cleanup=True) sys.exit(0) diff --git a/sfa/client/sfiDeleteSliver.py b/sfa/client/sfiDeleteSliver.py index 5b4f70b2..be10f0b6 100755 --- a/sfa/client/sfiDeleteSliver.py +++ b/sfa/client/sfiDeleteSliver.py @@ -2,7 +2,7 @@ import sys from sfa.client.sfi_commands import Commands -from sfa.rspecs.rspec_parser import parse_rspec +from sfa.rspecs.rspec import RSpec command = Commands(usage="%prog [options] node1 node2...", description="Delete slivers from the RSpec. " + @@ -12,7 +12,7 @@ command.add_nodefile_option() command.prep() if command.opts.infile: - rspec = parse_rspec(command.opts.infile) + rspec = RSpec(command.opts.infile) nodes = [] if command.opts.nodefile: f = open(command.opts.nodefile, "r") @@ -21,11 +21,11 @@ if command.opts.infile: try: slivers = [{'hostname': node} for node in nodes] - rspec.remove_slivers(slivers) + rspec.version.remove_slivers(slivers) + print rspec.toxml() except: print >> sys.stderr, "FAILED: %s" % nodes - print rspec.toxml() diff --git a/sfa/client/sfiListNodes.py b/sfa/client/sfiListNodes.py index 305bf250..f9e794b8 100755 --- a/sfa/client/sfiListNodes.py +++ b/sfa/client/sfiListNodes.py @@ -2,7 +2,7 @@ import sys from sfa.client.sfi_commands import Commands -from sfa.rspecs.rspec_parser import parse_rspec +from sfa.rspecs.rspec import RSpec command = Commands(usage="%prog [options]", description="List all nodes in the RSpec. " + @@ -11,8 +11,8 @@ command = Commands(usage="%prog [options]", command.prep() if command.opts.infile: - rspec = parse_rspec(command.opts.infile) - nodes = rspec.get_nodes() + rspec = RSpec(command.opts.infile) + nodes = rspec.version.get_nodes() if command.opts.outfile: sys.stdout = open(command.opts.outfile, 'w') diff --git a/sfa/client/sfiListSlivers.py b/sfa/client/sfiListSlivers.py index 08173ec8..cf76823f 100755 --- a/sfa/client/sfiListSlivers.py +++ b/sfa/client/sfiListSlivers.py @@ -2,7 +2,7 @@ import sys from sfa.client.sfi_commands import Commands -from sfa.rspecs.rspec_parser import parse_rspec +from sfa.rspecs.rspec import RSpec command = Commands(usage="%prog [options]", description="List all slivers in the RSpec. " + @@ -12,11 +12,11 @@ command.add_show_attributes_option() command.prep() if command.opts.infile: - rspec = parse_rspec(command.opts.infile) - nodes = rspec.get_nodes_with_slivers() + rspec = RSpec(command.opts.infile) + nodes = rspec.version.get_nodes_with_slivers() if command.opts.showatt: - defaults = rspec.get_default_sliver_attributes() + defaults = rspec.version.get_default_sliver_attributes() if defaults: print "ALL NODES" for (name, value) in defaults: @@ -25,7 +25,7 @@ if command.opts.infile: for node in nodes: print node if command.opts.showatt: - atts = rspec.get_sliver_attributes(node) + atts = rspec.version.get_sliver_attributes(node) for (name, value) in atts: print " %s: %s" % (name, value)