CreateSliver returns the allocated rspec
authorTony Mack <tmack@cs.princeton.edu>
Thu, 5 Aug 2010 12:39:30 +0000 (12:39 +0000)
committerTony Mack <tmack@cs.princeton.edu>
Thu, 5 Aug 2010 12:39:30 +0000 (12:39 +0000)
sfa/client/sfi.py
sfa/managers/slice_manager_pl.py
sfa/methods/CreateSliver.py

index 85d8c13..96bf4bf 100755 (executable)
@@ -767,7 +767,9 @@ class Sfi:
             server = self.get_server(opts.aggregate, opts.port, self.key_file, \
                                      self.cert_file, self.options.debug)
 
-        return server.create_slice(slice_cred, slice_hrn, rspec)
+        result =  server.create_slice(slice_cred, slice_hrn, rspec)
+        print result
+        return result
 
     # get a ticket for the specified slice
     def get_ticket(self, opts, args):
index e305e4d..88e2f5a 100644 (file)
@@ -69,8 +69,9 @@ def create_slice(api, xrn, creds, rspec, users):
             # Just send entire RSpec to each aggregate
             threads.run(server.CreateSliver, xrn, cred, rspec, users)
             
-    threads.get_results() 
-    return 1
+    results = threads.get_results() 
+    merged_rspec = merge_rspecs(results)
+    return merged_rspec
 
 def renew_slice(api, xrn, creds, expiration_time):
     # XX
index bcca6b3..6752c8d 100644 (file)
@@ -49,8 +49,6 @@ class CreateSliver(Method):
             chain_name = 'FORWARD-OUTGOING'
         rspec = run_sfatables(chain_name, hrn, origin_hrn, rspec)
         allocated = manager.create_slice(self.api, slice_xrn, valid_creds, rspec, users)
-        if allocated:
-            return rspec
 
-        return ''
+        return rspec