def __init__(self): self.args = self._parse_args() if self.args.version: print __version__ sys.exit(0) self.kwdb = KeywordTable() self.app = flask.Flask(__name__) with self.app.app_context(): current_app.kwdb = self.kwdb for lib in self.args.library: try: self.kwdb.add_library(lib) except robot.errors.DataError as e: sys.stderr.write("unable to load library '%s'\n" % lib) sys.exit(1) self._load_keyword_data(self.args.path, self.args.no_installed_keywords) self.app.add_url_rule("/", "home", self._root) self.app.add_url_rule("/ping", "ping", self._ping) self.app.add_url_rule("/favicon.ico", "favicon", self._favicon) self.app.register_blueprint(blueprints.api, url_prefix="/api") self.app.register_blueprint(blueprints.doc, url_prefix="/doc") self.app.register_blueprint(blueprints.dashboard, url_prefix="/dashboard")
def __init__(self): # N.B. this seems to take < 200ms to load up a # decent number of files. I can live with that parser = ArgumentParser() parser.add_argument("-i", "--interface", default="127.0.0.1") parser.add_argument("-p", "--port", default=7070, type=int) parser.add_argument("-D", "--debug", action="store_true", default=False) parser.add_argument("--no-installed-keywords", action="store_true", default=False) parser.add_argument("paths", nargs="*") self.args = parser.parse_args() self.kwdb = KeywordTable() self.app = flask.Flask(__name__) with self.app.app_context(): current_app.kwdb = self.kwdb self._load_keyword_data(self.args.paths, self.args.no_installed_keywords) self.app.add_url_rule("/", "home", self._root) self.app.add_url_rule("/ping", "ping", self._ping) self.app.register_blueprint(blueprints.api, url_prefix="/api") self.app.register_blueprint(blueprints.doc, url_prefix="/doc") self.app.register_blueprint(blueprints.dashboard, url_prefix="/dashboard")