renamed get_rspec into ListResources on the managers side
[sfa.git] / sfa / managers / aggregate_manager_eucalyptus.py
index 721ba6a..8dc604b 100644 (file)
@@ -18,6 +18,7 @@ from sfa.server.registry import Registries
 from sfa.trust.credential import Credential
 from sfa.plc.api import SfaAPI
 from sfa.util.plxrn import hrn_to_pl_slicename, slicename_to_hrn
+from sfa.util.callids import Callids
 
 ##
 # The data structure used to represent a cloud.
@@ -299,8 +300,6 @@ class EucaRSpecBuilder(object):
         xml = self.eucaRSpec
         with xml.bundles:
             for bundle in bundles.keys():
-                print >>sys.stderr, 'bundle: %r' % bundle
-                sys.stderr.flush()
                 with xml.bundle(id=bundle):
                     xml << ''
 
@@ -395,7 +394,8 @@ class ZoneResultParser(object):
 
         return clusterList
 
-def get_rspec(api, creds, options): 
+def ListResources(api, creds, options, call_id): 
+    if Callids().already_handled(call_id): return ""
     global cloud
     # get slice's hrn from options
     xrn = options.get('geni_slice_urn', '')
@@ -490,7 +490,9 @@ def get_rspec(api, creds, options):
 """
 Hook called via 'sfi.py create'
 """
-def create_slice(api, xrn, creds, xml, users):
+def create_slice(api, xrn, creds, xml, users, call_id):
+    if Callids().already_handled(call_id): return False
+
     global cloud
     hrn = urn_to_hrn(xrn)[0]
 
@@ -536,6 +538,7 @@ def create_slice(api, xrn, creds, xml, users):
         # Get all the public keys associate with slice.
         pubKeys = getKeysForSlice(s.slice_hrn)
         print >>sys.stderr, "Passing the following keys to the instance:\n%s" % pubKeys
+        sys.stderr.flush()
     for req in requests:
         vmTypeElement = req.getparent()
         instType = vmTypeElement.get('name')
@@ -568,9 +571,9 @@ def main():
     #theRSpec = None
     #with open(sys.argv[1]) as xml:
     #    theRSpec = xml.read()
-    #create_slice(None, 'planetcloud.pc.test', theRSpec)
+    #create_slice(None, 'planetcloud.pc.test', theRSpec, 'call-id-cloudtest')
 
-    #rspec = get_rspec('euca', 'planetcloud.pc.test', 'planetcloud.pc.marcoy')
+    #rspec = ListResources('euca', 'planetcloud.pc.test', 'planetcloud.pc.marcoy', 'test_euca')
     #print rspec
     print getKeysForSlice('gc.gc.test1')