def start(self, backend): log('Starting Juju GUI.') config = backend.config build_dir = utils.compute_build_dir(config['juju-gui-debug'], config['serve-tests']) # Check if a secure WebSocket client connection is required. secure = config.get('ws-secure') if secure is None: # WebSocket security is not explicitly provided: use secure # WebSocket if the GUI server is running in secure mode. secure = config['secure'] utils.write_gui_config( config['juju-gui-console-enabled'], config.get('login-help'), config['read-only'], config['charmworld-url'], config['charmstore-url'], build_dir, secure=secure, sandbox=config['sandbox'], cached_fonts=config['cached-fonts'], ga_key=config['ga-key'], hide_login_button=config['hide-login-button'], juju_core_version=config.get('juju-core-version'), password=config.get('password'), juju_env_uuid=os.getenv('JUJU_ENV_UUID', None)) # Set up TCP ports. previous_port = backend.prev_config.get('port') current_port = backend.config.get('port') utils.setup_ports(previous_port, current_port)
def start(self, backend): log("Starting Juju GUI.") config = backend.config build_dir = utils.compute_build_dir(config["juju-gui-debug"], config["serve-tests"]) # Check if a secure WebSocket client connection is required. secure = config.get("ws-secure") if secure is None: # WebSocket security is not explicitly provided: use secure # WebSocket if the GUI server is running in secure mode. secure = config["secure"] utils.write_gui_config( config["juju-gui-console-enabled"], config.get("login-help"), config["read-only"], config["charmworld-url"], config["charmstore-url"], build_dir, secure=secure, sandbox=config["sandbox"], cached_fonts=config["cached-fonts"], ga_key=config["ga-key"], hide_login_button=config["hide-login-button"], juju_core_version=config.get("juju-core-version"), password=config.get("password"), juju_env_uuid=os.getenv("JUJU_ENV_UUID", None), ) # Set up TCP ports. previous_port = backend.prev_config.get("port") current_port = backend.config.get("port") utils.setup_ports(previous_port, current_port)
def test_compute_build_dir(self): for (juju_gui_debug, serve_tests, result) in ( (False, False, 'build-prod'), (True, False, 'build-debug'), (False, True, 'build-prod'), (True, True, 'build-prod'), ): build_dir = compute_build_dir(juju_gui_debug, serve_tests) self.assertIn( result, build_dir, 'debug: {}, serve_tests: {}'.format( juju_gui_debug, serve_tests))
def start(self, backend): config = backend.config build_dir = utils.compute_build_dir(config["juju-gui-debug"], config["serve-tests"]) utils.start_builtin_server( build_dir, config["ssl-cert-path"], config["serve-tests"], config["sandbox"], config["builtin-server-logging"], not config["secure"], config["charmworld-url"], )
def start(self, backend): config = backend.config build_dir = utils.compute_build_dir(config['juju-gui-debug'], config['serve-tests']) utils.start_builtin_server(build_dir, config['ssl-cert-path'], config['serve-tests'], config['sandbox'], config['builtin-server-logging'], not config['secure'], config['charmworld-url'], port=config.get('port'))
def start(self, backend): log("Starting Juju GUI.") config = backend.config build_dir = utils.compute_build_dir(config["juju-gui-debug"], config["serve-tests"]) utils.write_gui_config( config["juju-gui-console-enabled"], config["login-help"], config["read-only"], config["staging"], config["charmworld-url"], build_dir, secure=config["secure"], sandbox=config["sandbox"], ga_key=config["ga-key"], default_viewmode=config["default-viewmode"], show_get_juju_button=config["show-get-juju-button"], password=config.get("password"), ) # Expose the service. open_port(80) open_port(443)
def start(self, backend): config = backend.config build_dir = utils.compute_build_dir(config["juju-gui-debug"], config["serve-tests"]) utils.start_haproxy_apache(build_dir, config["serve-tests"], config["ssl-cert-path"], config["secure"])