deeper pass on xmlrpclib vs xmlrpc.client as well as configparser
[sfa.git] / sfa / managers / aggregate_manager_eucalyptus.py
index 444ceb4..2356f33 100644 (file)
@@ -17,20 +17,19 @@ from sqlobject import *
 
 from sfa.util.faults import InvalidRSpec 
 from sfa.util.xrn import urn_to_hrn, Xrn
-from sfa.util.plxrn import hrn_to_pl_slicename, slicename_to_hrn
 from sfa.util.callids import Callids
 #comes with its own logging
 #from sfa.util.sfalogging import logger
 from sfa.util.version import version_core
+
 from sfa.trust.credential import Credential
-from sfa.plc.aggregate import Aggregate
-from sfa.plc.slices import Slice, Slices
+
 from sfa.rspecs.version_manager import VersionManager
 from sfa.rspecs.rspec import RSpec
-# not sure what this used to be nor where it is now defined
-#from sfa.rspecs.sfa_rspec import sfa_rspec_version
-# most likely this should now be
-#from sfa.rspecs.version_manager import VersionManager
+
+from sfa.planetlab.plaggregate import PlAggregate
+from sfa.planetlab.plslices import PlSlices
+from sfa.planetlab.plxrn import slicename_to_hrn
 
 ##
 # Meta data of an instance.
@@ -80,7 +79,7 @@ class EucaInstance(SQLObject):
                 self.instance_id = instance.id
 
         # If there is an error, destroy itself.
-        except EC2ResponseError, ec2RespErr:
+        except EC2ResponseError as ec2RespErr:
             errTree = ET.fromstring(ec2RespErr.body)
             msg = errTree.find('.//Message')
             logger.error(msg.text)
@@ -284,7 +283,7 @@ class AggregateManagerEucalyptus:
     _inited=False
 
     # the init_server mechanism has vanished
-    def __init__ (self):
+    def __init__ (self, config):
         if AggregateManagerEucalyptus._inited: return
         AggregateManagerEucalyptus.init_server()
 
@@ -445,7 +444,7 @@ class AggregateManagerEucalyptus:
                                 port=eucaPort,
                                 path=srvPath)
     
-    def ListResources(api, creds, options={}):
+    def ListResources(api, creds, options):
         call_id = options.get('call_id') 
         if Callids().already_handled(call_id): return ""
         # get slice's hrn from options
@@ -525,7 +524,7 @@ class AggregateManagerEucalyptus:
                     instList.append(instInfoDict)
                 AggregateManagerEucalyptus.cloud['instances'] = instancesDict
     
-        except EC2ResponseError, ec2RespErr:
+        except EC2ResponseError as ec2RespErr:
             errTree = ET.fromstring(ec2RespErr.body)
             errMsgE = errTree.find('.//Message')
             logger.error(errMsgE.text)
@@ -542,15 +541,15 @@ class AggregateManagerEucalyptus:
     """
     Hook called via 'sfi.py create'
     """
-    def CreateSliver(api, slice_xrn, creds, xml, users, options={}):
+    def CreateSliver(api, slice_xrn, creds, xml, users, options):
         call_id = options.get('call_id') 
         if Callids().already_handled(call_id): return ""
     
         logger = logging.getLogger('EucaAggregate')
         logger.debug("In CreateSliver")
     
-        aggregate = Aggregate(self.driver)
-        slices = Slices(api)
+        aggregate = PlAggregate(self.driver)
+        slices = PlSlices(self.driver)
         (hrn, type) = urn_to_hrn(slice_xrn)
         peer = slices.get_peer(hrn)
         sfa_peer = slices.get_sfa_peer(hrn)
@@ -645,7 +644,7 @@ class AggregateManagerEucalyptus:
                                         ramdisk_id = instRamDisk,
                                         key_pair   = instKey,
                                         inst_type  = instType,
-                                        meta       = Meta(start_time=datetime.datetime.now()))
+                                        meta       = Meta(start_time=datetime.datetime.utcnow()))
                 eucaInst.reserveInstance(conn, pubKeys)
     
         # xxx - should return altered rspec 
@@ -662,7 +661,7 @@ class AggregateManagerEucalyptus:
     
         try:
             os.makedirs(outdir)
-        except OSError, e:
+        except OSError as e:
             if e.errno != errno.EEXIST:
                 raise
     
@@ -680,7 +679,7 @@ class AggregateManagerEucalyptus:
             f.write("%s %s %s\n" % (instId, ipaddr, hrn))
         f.close()
     
-    def GetVersion(api, options={}):
+    def GetVersion(api, options):
 
         version_manager = VersionManager()
         ad_rspec_versions = []
@@ -693,7 +692,7 @@ class AggregateManagerEucalyptus:
         xrn=Xrn(api.hrn)
         version_more = {'interface':'aggregate',
                         'sfa': 1,
-                        'geni_api': api.config.SFA_AGGREGATE_API_VERSION,
+                        'geni_api': '2',
                         'testbed':'myplc',
                         'hrn':xrn.get_hrn(),
                         'geni_request_rspec_versions': request_rspec_versions,