def create(self, conn, hostname='localhost.localdomain'): """ Connects to the server and creates the relevant artifacts, including the database, the modules database, and the HTTP server. :param conn: The server connection :return:A map containing the content db, the modules db and the HTTP server. """ self.logger.info("Create simple application") data_database = Database(self._db_name, hostname) data_database.set_forest_names(self._forests) modules_database = Database(self._modules_db_name, hostname) server = HttpServer(self._http_server, "Default", self._app_port, self._db_name, self._modules_db_name) server.set_modules_database_name(self._modules_db_name) data_database.create(conn) modules_database.create(conn) server.create(conn) return { u'content': data_database, u'modules': modules_database, u'server': server }
def create(self, args, config, connection): database = Database(args['name'], args['forest_host'], connection=connection) if database.exists(): print("Error: Database already exists: {0}".format(args['name'])) sys.exit(1) if args['json'] is not None: database = self._read(args['name'], args['json']) self.forests = [] self._properties(database, args) if len(self.forests) > 0: database.set_forest_names(self.forests) print("Create database {0}...".format(args['name'])) database.create()
# Update forests for config in data['forests']: name = config['forest-name'] f = Forest.unmarshal(config) print("Updating forest: {0}".format(name)) f.update(conn) # Create databases for config in data['databases']: name = config['database-name'] db = Database.lookup(conn, name) if db is None: print("Need to create database: {0}".format(name)) db = Database(name) db.create(conn) # Update databases for config in data['databases']: name = config['database-name'] db = Database.unmarshal(config) print("Updating database: {0}".format(name)) db.update(conn) # Update servers for config in data['servers']: name = config['server-name'] group = config['group-name'] server = Server.lookup(conn, name, group) if server is None: