X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fimporter%2Fsfa-nuke-plc.py;h=a4967c3692aba28bdd6462948be5197222a9b755;hb=862dfa7f7b8cce8c17e80c42aedd8d500ea86cb6;hp=cfc7d0701856d6462e459bcc32bade99ee8c8aee;hpb=eb7d0272ff33c228dbb5d1207fbcb057f835d00b;p=sfa.git diff --git a/sfa/importer/sfa-nuke-plc.py b/sfa/importer/sfa-nuke-plc.py index cfc7d070..a4967c36 100755 --- a/sfa/importer/sfa-nuke-plc.py +++ b/sfa/importer/sfa-nuke-plc.py @@ -13,7 +13,8 @@ from optparse import OptionParser from sfa.util.sfalogging import logger -from sfa.storage.persistentobjs import init_tables,drop_tables +from sfa.storage.alchemy import engine +from sfa.storage.dbschema import DBSchema def main(): usage="%prog: trash the registry DB" @@ -23,19 +24,20 @@ def main(): parser.add_option("-c","--certs",dest='clean_certs',action='store_true',default=False, help="Remove all cached certs/gids found in /var/lib/sfa/authorities area as well") parser.add_option("-0","--no-reinit",dest='reinit',action='store_false',default=True, - help="Do not reinitialize the database schema") + help="By default a new DB schema is installed after the cleanup; this option prevents that") (options,args)=parser.parse_args() if args: parser.print_help() sys.exit(1) + dbschema=DBSchema() logger.info("Purging SFA records from database") - drop_tables() + dbschema.nuke() # for convenience we re-create the schema here, so there's no need for an explicit # service sfa restart # however in some (upgrade) scenarios this might be wrong if options.reinit: logger.info("re-creating empty schema") - init_tables() + dbschema.init_or_upgrade() if options.clean_certs: # remove the server certificate and all gids found in /var/lib/sfa/authorities