Пример #1
0
    def _start_container(self):
        # hack to force queue auto delete on for int tests
        self._turn_on_queue_auto_delete()
        self._patch_out_diediedie()
        self._patch_out_fail_fast_kill()

        bootstrap.testing_fast = True

        if os.environ.get('CEI_LAUNCH_TEST', None):
            # Let's force clean again.  The static initializer is causing
            # issues
            self._force_clean()
            self._patch_out_start_rel()
            from pyon.datastore.datastore_admin import DatastoreAdmin
            da = DatastoreAdmin(config=CFG)
            da.load_datastore('res/dd')
        else:
            # We cannot live without pre-initialized datastores and resource objects
            pre_initialize_ion()

        # hack to force_clean on filesystem
        try:
            CFG['container']['filesystem']['force_clean'] = True
        except KeyError:
            CFG['container']['filesystem'] = {}
            CFG['container']['filesystem']['force_clean'] = True

        self.container = None
        self.addCleanup(self._stop_container)
        self.container = Container()
        self.container.start()

        bootstrap.testing_fast = False
Пример #2
0
    def _start_container(self):
        # hack to force queue auto delete on for int tests
        self._turn_on_queue_auto_delete()
        self._patch_out_diediedie()
        self._patch_out_fail_fast_kill()

        bootstrap.testing_fast = True

        if os.environ.get('CEI_LAUNCH_TEST', None):
            # Let's force clean again.  The static initializer is causing
            # issues
            self._force_clean()
            self._patch_out_start_rel()
            from pyon.datastore.datastore_admin import DatastoreAdmin
            da = DatastoreAdmin(config=CFG)
            da.load_datastore('res/dd')
        else:
            # We cannot live without pre-initialized datastores and resource objects
            pre_initialize_ion()

        # hack to force_clean on filesystem
        try:
            CFG['container']['filesystem']['force_clean'] = True
        except KeyError:
            CFG['container']['filesystem'] = {}
            CFG['container']['filesystem']['force_clean'] = True

        self.container = None
        self.addCleanup(self._stop_container)
        self.container = Container()
        self.container.start()

        bootstrap.testing_fast = False
Пример #3
0
def main():

    usage = \
    """
    %prog [options] prefix
    """
    description = "Use this program to clear databases that match a given prefix"
    parser = OptionParser(usage=usage, description=description)
    parser.add_option("-P", "--port", dest="db_port", default=None, help="Port number for db", action="store", type=int, metavar="PORT")
    parser.add_option("-H", "--host", dest="db_host", default='localhost', help="The host name or ip address of the db server", action="store", type=str, metavar="HOST")
    parser.add_option("-u", "--username", dest="db_uname", default=None, help="Username for the db server", action="store", type=str, metavar="UNAME")
    parser.add_option("-p", "--password", dest="db_pword", default=None, help="Password for the db server", action="store", type=str, metavar="PWORD")
    parser.add_option("-s", "--sysname", dest="sysname", default=None, help="The sysname prefix to clear databases", action="store", type=str, metavar="SYSNAME")
    parser.add_option("-t", "--store_type", dest="db_type", default="postgresql", help="Datastore type", action="store", type=str, metavar="DSTYPE")
    parser.add_option("-v", "--verbose", help="More verbose output", action="store_true")
    parser.add_option("-d", "--dump", dest="dump_path", default=None, help="Dump sysname datastores to path", action="store", type=str, metavar="DPATH")
    parser.add_option("-l", "--load", dest="load_path", default=None, help="Load dumped datastore from path", action="store", type=str, metavar="LPATH")

    (options, args) = parser.parse_args()

    from pyon.core import log as logutil
    logutil.configure_logging(logutil.DEFAULT_LOGGING_PATHS)

    if options.dump_path:
        config = create_config(options.db_host, options.db_port, options.db_uname, options.db_pword)
        sysname = options.sysname or "scion"
        log.info("dumping %s datastores to %s", sysname, options.dump_path)
        from pyon.datastore.datastore_admin import DatastoreAdmin
        datastore_admin = DatastoreAdmin(config=config, sysname=sysname)
        datastore_admin.dump_datastore(path=options.dump_path)
    elif options.load_path:
        config = create_config(options.db_host, options.db_port, options.db_uname, options.db_pword)
        sysname = options.sysname or "scion"
        log.info("loading %s datastores from dumped content in %ss", sysname, options.dump_path)
        from pyon.datastore.datastore_admin import DatastoreAdmin
        datastore_admin = DatastoreAdmin(config=config, sysname=sysname)
        datastore_admin.load_datastore(path=options.load_path)
    else:
        if len(args) == 0:
            log.error("Error: no prefix argument specified")
            parser.print_help()
            sys.exit()

        if len(args) != 1:
            log.error("Error: You can not specify multiple prefixes. Received args: %s", str(args))
            parser.print_help()
            sys.exit()

        prefix = args[0]

        if prefix == "":
            log.error("Error: You can not give the empty string as a prefix!")
            parser.print_help()
            sys.exit()

        config = create_config(options.db_host, options.db_port, options.db_uname, options.db_pword, options.db_type)
        _clear_db(config, prefix=prefix, sysname=options.sysname, verbose=bool(options.verbose))
Пример #4
0
def main():

    usage = \
    """
    %prog [options] prefix
    """
    description = \
    """Use this program to clear databases in couch that match a given prefix
    """
    parser = OptionParser(usage=usage, description=description)
    parser.add_option("-P", "--port", dest="couch_port", default=None, help="Port number for couch", action="store", type=int, metavar="PORT")
    parser.add_option("-H", "--host", dest="couch_host", default='localhost', help="The host name or ip address of the couch server", action="store", type=str, metavar="HOST")
    parser.add_option("-u", "--username", dest="couch_uname", default=None, help="Username for the couch server", action="store", type=str, metavar="UNAME")
    parser.add_option("-p", "--password", dest="couch_pword", default=None, help="Password for the couch server", action="store", type=str, metavar="PWORD")
    parser.add_option("-s", "--sysname", dest="sysname", default=None, help="The sysname prefix to clear in couch", action="store", type=str, metavar="SYSNAME")
    parser.add_option("-t", "--store_type", dest="couch_type", default="postgresql", help="Datastore type", action="store", type=str, metavar="DSTYPE")
    parser.add_option("-v", "--verbose", help="More verbose output", action="store_true")
    parser.add_option("-d", "--dump", dest="dump_path", default=None, help="Dump sysname datastores to path", action="store", type=str, metavar="DPATH")
    parser.add_option("-l", "--load", dest="load_path", default=None, help="Load dumped datastore from path", action="store", type=str, metavar="LPATH")

    (options, args) = parser.parse_args()

    if options.dump_path:
        config = create_config(options.couch_host, options.couch_port, options.couch_uname, options.couch_pword)
        sysname = options.sysname or "mine"
        print "clear_couch: dumping", sysname, "datastores to", options.dump_path
        from pyon.datastore.datastore_admin import DatastoreAdmin
        datastore_admin = DatastoreAdmin(config=config, sysname=sysname)
        datastore_admin.dump_datastore(path=options.dump_path)
    elif options.load_path:
        config = create_config(options.couch_host, options.couch_port, options.couch_uname, options.couch_pword)
        sysname = options.sysname or "mine"
        print "clear_couch: loading", sysname, "datastores from dumped content in", options.dump_path
        from pyon.datastore.datastore_admin import DatastoreAdmin
        datastore_admin = DatastoreAdmin(config=config, sysname=sysname)
        datastore_admin.load_datastore(path=options.load_path)
    else:
        if len(args) == 0:
            print 'clear_couch: Error: no prefix argument specified'
            parser.print_help()
            sys.exit()

        if len(args) != 1:
            print 'clear_couch: Error: You can not specify multiple prefixes. Received args: %s' % str(args)
            parser.print_help()
            sys.exit()

        prefix = args[0]

        if prefix is '':
            print 'clear_couch: Error: You can not give the empty string as a prefix!'
            parser.print_help()
            sys.exit()

        config = create_config(options.couch_host, options.couch_port, options.couch_uname, options.couch_pword, options.couch_type)
        _clear_db(config, prefix=prefix, sysname=options.sysname, verbose=bool(options.verbose))
Пример #5
0
def main():

    usage = \
    """
    %prog [options] prefix
    """
    description = "Use this program to clear databases that match a given prefix"
    parser = OptionParser(usage=usage, description=description)
    parser.add_option("-P",
                      "--port",
                      dest="db_port",
                      default=None,
                      help="Port number for db",
                      action="store",
                      type=int,
                      metavar="PORT")
    parser.add_option("-H",
                      "--host",
                      dest="db_host",
                      default='localhost',
                      help="The host name or ip address of the db server",
                      action="store",
                      type=str,
                      metavar="HOST")
    parser.add_option("-u",
                      "--username",
                      dest="db_uname",
                      default=None,
                      help="Username for the db server",
                      action="store",
                      type=str,
                      metavar="UNAME")
    parser.add_option("-p",
                      "--password",
                      dest="db_pword",
                      default=None,
                      help="Password for the db server",
                      action="store",
                      type=str,
                      metavar="PWORD")
    parser.add_option("-s",
                      "--sysname",
                      dest="sysname",
                      default=None,
                      help="The sysname prefix to clear databases",
                      action="store",
                      type=str,
                      metavar="SYSNAME")
    parser.add_option("-t",
                      "--store_type",
                      dest="db_type",
                      default="postgresql",
                      help="Datastore type",
                      action="store",
                      type=str,
                      metavar="DSTYPE")
    parser.add_option("-v",
                      "--verbose",
                      help="More verbose output",
                      action="store_true")
    parser.add_option("-d",
                      "--dump",
                      dest="dump_path",
                      default=None,
                      help="Dump sysname datastores to path",
                      action="store",
                      type=str,
                      metavar="DPATH")
    parser.add_option("-l",
                      "--load",
                      dest="load_path",
                      default=None,
                      help="Load dumped datastore from path",
                      action="store",
                      type=str,
                      metavar="LPATH")

    (options, args) = parser.parse_args()

    from pyon.core import log as logutil
    logutil.configure_logging(logutil.DEFAULT_LOGGING_PATHS)

    if options.dump_path:
        config = create_config(options.db_host, options.db_port,
                               options.db_uname, options.db_pword)
        sysname = options.sysname or "scion"
        log.info("dumping %s datastores to %s", sysname, options.dump_path)
        from pyon.datastore.datastore_admin import DatastoreAdmin
        datastore_admin = DatastoreAdmin(config=config, sysname=sysname)
        datastore_admin.dump_datastore(path=options.dump_path)
    elif options.load_path:
        config = create_config(options.db_host, options.db_port,
                               options.db_uname, options.db_pword)
        sysname = options.sysname or "scion"
        log.info("loading %s datastores from dumped content in %ss", sysname,
                 options.dump_path)
        from pyon.datastore.datastore_admin import DatastoreAdmin
        datastore_admin = DatastoreAdmin(config=config, sysname=sysname)
        datastore_admin.load_datastore(path=options.load_path)
    else:
        if len(args) == 0:
            log.error("Error: no prefix argument specified")
            parser.print_help()
            sys.exit()

        if len(args) != 1:
            log.error(
                "Error: You can not specify multiple prefixes. Received args: %s",
                str(args))
            parser.print_help()
            sys.exit()

        prefix = args[0]

        if prefix == "":
            log.error("Error: You can not give the empty string as a prefix!")
            parser.print_help()
            sys.exit()

        config = create_config(options.db_host, options.db_port,
                               options.db_uname, options.db_pword,
                               options.db_type)
        _clear_db(config,
                  prefix=prefix,
                  sysname=options.sysname,
                  verbose=bool(options.verbose))
Пример #6
0
def main():

    usage = \
    """
    %prog [options] prefix
    """
    description = \
    """Use this program to clear databases in couch that match a given prefix
    """
    parser = OptionParser(usage=usage, description=description)
    parser.add_option("-p",
                      "--port",
                      dest="couch_port",
                      default=5984,
                      help="Port number for couch",
                      action="store",
                      type=int,
                      metavar="PORT")
    parser.add_option("-H",
                      "--host",
                      dest="couch_host",
                      default='localhost',
                      help="The host name or ip address of the couch server",
                      action="store",
                      type=str,
                      metavar="HOST")
    parser.add_option("-u",
                      "--username",
                      dest="couch_uname",
                      default=None,
                      help="Username for the couch server",
                      action="store",
                      type=str,
                      metavar="UNAME")
    parser.add_option("-n",
                      "--password",
                      dest="couch_pword",
                      default=None,
                      help="Password for the couch server",
                      action="store",
                      type=str,
                      metavar="PWORD")
    parser.add_option("-s",
                      "--sysname",
                      dest="sysname",
                      default=None,
                      help="The sysname prefix to clear in couch",
                      action="store",
                      type=str,
                      metavar="SYSNAME")
    parser.add_option("-v",
                      "--verbose",
                      help="More verbose output",
                      action="store_true")
    parser.add_option("-d",
                      "--dump",
                      dest="dump_path",
                      default=None,
                      help="Dump sysname datastores to path",
                      action="store",
                      type=str,
                      metavar="DPATH")
    parser.add_option("-l",
                      "--load",
                      dest="load_path",
                      default=None,
                      help="Load dumped datastore from path",
                      action="store",
                      type=str,
                      metavar="LPATH")

    (options, args) = parser.parse_args()

    if options.dump_path:
        config = create_config(options.couch_host, options.couch_port,
                               options.couch_uname, options.couch_pword)
        sysname = options.sysname or "mine"
        print "clear_couch: dumping", sysname, "datastores to", options.dump_path
        from pyon.datastore.datastore_admin import DatastoreAdmin
        datastore_admin = DatastoreAdmin(config=config, sysname=sysname)
        datastore_admin.dump_datastore(path=options.dump_path, compact=True)
    elif options.load_path:
        config = create_config(options.couch_host, options.couch_port,
                               options.couch_uname, options.couch_pword)
        sysname = options.sysname or "mine"
        print "clear_couch: loading", sysname, "datastores from dumped content in", options.dump_path
        from pyon.datastore.datastore_admin import DatastoreAdmin
        datastore_admin = DatastoreAdmin(config=config, sysname=sysname)
        datastore_admin.load_datastore(path=options.load_path)
    else:
        if len(args) == 0:
            print 'clear_couch: Error: no prefix argument specified'
            parser.print_help()
            sys.exit()

        if len(args) != 1:
            print 'clear_couch: Error: You can not specify multiple prefixes. Received args: %s' % str(
                args)
            parser.print_help()
            sys.exit()

        prefix = args[0]

        if prefix is '':
            print 'clear_couch: Error: You can not give the empty string as a prefix!'
            parser.print_help()
            sys.exit()

        _clear_couch(options.couch_host,
                     options.couch_port,
                     options.couch_uname,
                     options.couch_pword,
                     prefix=prefix,
                     verbose=bool(options.verbose))