X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fplc%2Fsfa-import-plc.py;h=160ce77cb1566bde0130afe2056bc98b0614e39d;hb=11d02cbfd5e91784119bb9377fceb4fa6adae621;hp=e0de5f4bcdd70d5cfa1bab2307c74c3ebf82137b;hpb=fc8650f6898dd30f6bc797dd682a834b0019fedd;p=sfa.git diff --git a/sfa/plc/sfa-import-plc.py b/sfa/plc/sfa-import-plc.py index e0de5f4b..160ce77c 100755 --- a/sfa/plc/sfa-import-plc.py +++ b/sfa/plc/sfa-import-plc.py @@ -4,8 +4,8 @@ ### $URL$ # ## -# Import PLC records into the Geni database. It is indended that this tool be -# run once to create Geni records that reflect the current state of the +# Import PLC records into the SFA database. It is indended that this tool be +# run once to create SFA records that reflect the current state of the # planetlab database. # # The import tool assumes that the existing PLC hierarchy should all be part @@ -20,21 +20,19 @@ import getopt import sys import tempfile - +import logging.handlers +import logging from sfa.util.record import * -from sfa.util.genitable import GeniTable -from sfa.util.misc import * +from sfa.util.table import SfaTable +from sfa.util.namespace import * from sfa.util.config import Config -from sfa.util.report import trace, error from sfa.trust.certificate import convert_public_key, Keypair from sfa.trust.trustedroot import * from sfa.trust.hierarchy import * from sfa.plc.api import * -from sfa.util.geniclient import * from sfa.trust.gid import create_uuid from sfa.plc.sfaImport import * - - +from sfa.util.report import trace, error def process_options(): global hrn @@ -62,6 +60,15 @@ def save_keys(filename, keys): f.close() def main(): + # setup the logger + LOGFILE='/var/log/sfa_import_plc.log' + logging.basicConfig(level=logging.INFO, + format='%(asctime)s - %(message)s', + filename=LOGFILE) + rotate_handler = logging.handlers.RotatingFileHandler(LOGFILE, maxBytes=1000000, backupCount=5) + logger = logging.getLogger() + logger.addHandler(rotate_handler) + process_options() config = Config() if not config.SFA_REGISTRY_ENABLED: @@ -69,19 +76,18 @@ def main(): root_auth = config.SFA_REGISTRY_ROOT_AUTH level1_auth = config.SFA_REGISTRY_LEVEL1_AUTH keys_filename = config.config_path + os.sep + 'person_keys.py' - sfaImporter = sfaImport() + sfaImporter = sfaImport(logger) shell = sfaImporter.shell plc_auth = sfaImporter.plc_auth AuthHierarchy = sfaImporter.AuthHierarchy TrustedRoots = sfaImporter.TrustedRoots - table = GeniTable() + table = SfaTable() if not table.exists(): table.create() if not level1_auth or level1_auth in ['']: level1_auth = None - print "Import: creating top level authorities" if not level1_auth: sfaImporter.create_top_level_auth_records(root_auth) import_auth = root_auth @@ -91,7 +97,7 @@ def main(): sfaImporter.create_top_level_auth_records(level1_auth) import_auth = level1_auth - print "Import: adding", import_auth, "to trusted list" + trace("Import: adding " + import_auth + " to trusted list", logger) authority = AuthHierarchy.get_auth_info(import_auth) TrustedRoots.add_gid(authority.get_gid_object()) @@ -259,12 +265,11 @@ def main(): continue if not found: - trace("Import: Removing %s %s" % (type, record_hrn)) record_object = existing_records[(record_hrn, type)] sfaImporter.delete_record(record_hrn, type) # save pub keys - trace('saving current pub keys') + trace('Import: saving current pub keys', logger) save_keys(keys_filename, person_keys) if __name__ == "__main__":