Esempio n. 1
0
    def database(self, database_name, host=None, connection=None):
        """
        Get the named database.
        """
        if host is None:
            if connection is None:
                db = Database(database_name,
                              connection=self.connection,
                              save_connection=self.save_connection)
            else:
                db = Database(database_name,
                              connection=connection,
                              save_connection=False)
        else:
            if connection is None:
                db = Database(database_name,
                              host.host_name(),
                              connection=self.connection,
                              save_connection=self.save_connection)
            else:
                db = Database(database_name,
                              host.host_name(),
                              connection=connection,
                              save_connection=False)

        if connection is None:
            return db.read(self.connection)
        else:
            return db.read(connection)
Esempio n. 2
0
    def create(self, args, config, connection):
        forest = Forest(args['name'], args['forest_host'], connection=connection)
        if forest.exists():
            self.logger.error("Forest already exists: {0}".format(args['name']))
            sys.exit(1)

        if args['json'] is not None:
            forest = self._read(args['name'], args['json'])
            if forest.host() is None:
                forest.set_host(args['forest_host'])

        self._properties(forest, args)
        dbname = forest.database()

        if dbname is not None:
            database = Database(dbname)
            database.read(connection)
        else:
            database = None

        self.logger.info("Create forest {0}...".format(args['name']))
        forest.create(connection=connection)

        if database is not None:
            database.add_forest_name(forest.forest_name())
            database.update(connection)
Esempio n. 3
0
    def create(self, args, config, connection):
        forest = Forest(args['name'],
                        args['forest_host'],
                        connection=connection)
        if forest.exists():
            self.logger.error("Forest already exists: {0}".format(
                args['name']))
            sys.exit(1)

        if args['json'] is not None:
            forest = self._read(args['name'], args['json'])
            if forest.host() is None:
                forest.set_host(args['forest_host'])

        self._properties(forest, args)
        dbname = forest.database()

        if dbname is not None:
            database = Database(dbname)
            database.read(connection)
        else:
            database = None

        self.logger.info("Create forest {0}...".format(args['name']))
        forest.create(connection=connection)

        if database is not None:
            database.add_forest_name(forest.forest_name())
            database.update(connection)
Esempio n. 4
0
    def database(self, database_name, host=None, connection=None):
        """
        Get the named database.
        """
        if host is None:
            if connection is None:
                db = Database(database_name, connection=self.connection,
                              save_connection=self.save_connection)
            else:
                db = Database(database_name, connection=connection,
                              save_connection=False)
        else:
            if connection is None:
                db = Database(database_name, host.host_name(),
                              connection=self.connection,
                              save_connection=self.save_connection)
            else:
                db = Database(database_name, host.host_name(),
                              connection=connection,
                              save_connection=False)

        if connection is None:
            return db.read(self.connection)
        else:
            return db.read(connection)
    def get(self, args, config, connection):
        database = Database(args['name'], connection=connection)
        if not database.exists():
            print("Error: Database does not exist: {0}".format(args['name']))
            sys.exit(1)

        if args['view'] == None:
            database.read(connection)
            self.jprint(database)
        else:
            results = database.view(args['view'])
            print(json.dumps(results, sort_keys=True, indent=2))
Esempio n. 6
0
    def create(self, args, config, connection):
        name = args['name']
        host = args['forest_host']

        if args['json'] is not None:
            forest = self._read(name, args['json'], connection=connection)
            name = forest.forest_name()
            host = forest.host()
        else:
            forest = Forest(name, host, connection=connection)

        if forest.exists():
            self.logger.error("Forest already exists: {0}".format(name))
            sys.exit(1)

        self._properties(forest, args)
        dbname = forest.database()

        # Strip out properties that we know the server will reject
        cluster = LocalCluster(connection)
        cluster.read()
        if cluster.security_version() is None:
            for key in ['database-replication', 'failover-enable']:
                if key in forest._config:
                    del(forest._config[key])
                    self.logger.debug("Ignoring {0}, not supported by server"
                                      .format(key))

        if dbname is not None:
            database = Database(dbname)
            database.read(connection)
        else:
            database = None

        self.logger.info("Create forest {0}...".format(name))
        forest.create(connection=connection)

        if database is not None:
            database.add_forest_name(forest.forest_name())
            database.update(connection)
Esempio n. 7
0
    def create(self, args, config, connection):
        name = args['name']
        host = args['forest_host']

        if args['json'] is not None:
            forest = self._read(name, args['json'], connection=connection)
            name = forest.forest_name()
            host = forest.host()
        else:
            forest = Forest(name, host, connection=connection)

        if forest.exists():
            self.logger.error("Forest already exists: {0}".format(name))
            sys.exit(1)

        self._properties(forest, args)
        dbname = forest.database()

        # Strip out properties that we know the server will reject
        cluster = LocalCluster(connection)
        cluster.read()
        if cluster.security_version() is None:
            for key in ['database-replication', 'failover-enable']:
                if key in forest._config:
                    del (forest._config[key])
                    self.logger.debug(
                        "Ignoring {0}, not supported by server".format(key))

        if dbname is not None:
            database = Database(dbname)
            database.read(connection)
        else:
            database = None

        self.logger.info("Create forest {0}...".format(name))
        forest.create(connection=connection)

        if database is not None:
            database.add_forest_name(forest.forest_name())
            database.update(connection)