import os
import sys
+from geni.util.debug import log
+import traceback
-# If we have been checked out into a directory at the same
-# level as myplc, where plc_config.py lives. If we are in a
-# MyPLC environment, plc_config.py has already been installed
-# in site-packages.
-myplc = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) + \
- os.sep + "myplc"
+geni = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))+ os.sep + "geni"
class Config:
"""
fast but no type conversions.
"""
- def __init__(self, file = "/usr/share/geniwrapper/util/geni_config"):
+ def __init__(self, file = "/etc/geni/geni_config"):
# Load plc_config
- loaded = False
- path = os.path.dirname(os.path.abspath(__file__))
- filename = file.split(os.sep)[-1]
- alt_file = path + os.sep + filename
- myplc_file = myplc + os.sep + filename
- files = [file, alt_file, myplc_file]
+ loaded = False
+ path = os.path.dirname(os.path.abspath(__file__))
+ filename = file.split(os.sep)[-1]
+ alt_file = path + os.sep + 'util' + os.sep + filename
+ geni_file = geni + os.sep + 'util' + os.sep + filename
+ files = [file, alt_file, geni_file]
- for file in files:
- try:
- execfile(file, self.__dict__)
- loaded = True
- except:
- pass
+ for file in files:
+ try:
+ execfile(file, self.__dict__)
+ loaded = True
+ self.config_file = file
+ break
+ except:
+ pass
- if not loaded:
- raise Exception, "Could not find config in " + ", ".join(files)
+ if not loaded:
+ raise Exception, "Could not find config in " + ", ".join(files)
+ # set up some useful variables
def load(self, file):
- try:
- execfile(file, self.__dict__)
- except:
- raise Exception, "Could not find config in " + file
+ try:
+ execfile(file, self.__dict__)
+ except:
+ raise Exception, "Could not find config in " + file
plcConfig = Config("/etc/planetlab/plc_config")
def get_pl_auth():
pl_auth = {'Username': plcConfig.PLC_API_MAINTENANCE_USER,
'AuthMethod': 'capability',
- 'AuthString': plcConfig.PLC_MAINTENANCE_PASSWORD,
+ 'AuthString': plcConfig.PLC_API_MAINTENANCE_PASSWORD,
"Url": 'https://%s:%s%s' %(plcConfig.PLC_API_HOST, plcConfig.PLC_API_PORT, plcConfig.PLC_API_PATH)
}