def update_node_states(self): """ Updating node states PegasusGUI only """ if not self.juju_state: return deployed_services = sorted(self.juju_state.services, key=attrgetter('service_name')) deployed_service_names = [s.service_name for s in deployed_services] charm_classes = sorted( [m.__charm_class__ for m in utils.load_charms(self.config.getopt('charm_plugin_dir')) if m.__charm_class__.charm_name in deployed_service_names], key=attrgetter('charm_name')) self.nodes = list(zip(charm_classes, deployed_services)) for n in deployed_services: for u in n.units: if u.is_horizon and u.agent_state == "started": self.ui.set_dashboard_url( u.public_address, 'ubuntu', self.config.getopt('openstack_password')) if u.is_jujugui and u.agent_state == "started": self.ui.set_jujugui_url(u.public_address) if len(self.nodes) == 0: return else: self.ui.render_services_view(self.nodes, self.juju_state, self.maas_state, self.config)
def update_node_states(self): """ Updating node states """ if not self.juju_state: return deployed_services = sorted(self.juju_state.services, key=attrgetter('service_name')) deployed_service_names = [s.service_name for s in deployed_services] charm_classes = sorted([m.__charm_class__ for m in utils.load_charms() if m.__charm_class__.charm_name in deployed_service_names], key=attrgetter('charm_name')) self.nodes = list(zip(charm_classes, deployed_services)) for n in deployed_services: for u in n.units: if u.is_horizon and u.agent_state == "started": self.set_dashboard_url(u.public_address) if u.is_jujugui and u.agent_state == "started": self.set_jujugui_url(u.public_address) if len(self.nodes) == 0: return else: self.stop_rendering(self.node_install_wait_alarm) self.render_nodes(self.nodes, self.juju_state, self.maas_state)
def update_node_states(self): """ Updating node states PegasusGUI only """ if not self.juju_state: return deployed_services = sorted(self.juju_state.services, key=attrgetter('service_name')) deployed_service_names = [s.service_name for s in deployed_services] charm_classes = sorted( [m.__charm_class__ for m in utils.load_charms(self.config.getopt('charm_plugin_dir')) if m.__charm_class__.charm_name in deployed_service_names], key=attrgetter('charm_name')) self.nodes = list(zip(charm_classes, deployed_services)) if len(self.nodes) == 0: return else: if not self.ui.services_view: self.ui.render_services_view( self.nodes, self.juju_state, self.maas_state, self.config) else: self.ui.refresh_services_view(self.nodes, self.config)
def update_node_states(self): """ Updating node states """ if not self.juju_state: return deployed_services = sorted(self.juju_state.services, key=attrgetter('service_name')) deployed_service_names = [s.service_name for s in deployed_services] charm_classes = sorted([ m.__charm_class__ for m in utils.load_charms() if m.__charm_class__.charm_name in deployed_service_names ], key=attrgetter('charm_name')) self.nodes = list(zip(charm_classes, deployed_services)) for n in deployed_services: for u in n.units: if u.is_horizon and u.agent_state == "started": self.set_dashboard_url(u.public_address) if u.is_jujugui and u.agent_state == "started": self.set_jujugui_url(u.public_address) if len(self.nodes) == 0: return else: self.stop_rendering(self.node_install_wait_alarm) self.render_nodes(self.nodes, self.juju_state, self.maas_state)
def charm_classes(self): cl = [ m.__charm_class__ for m in load_charms(self.config.getopt("charm_plugin_dir")) if not m.__charm_class__.disabled ] return cl
def charm_classes(self): cl = [ m.__charm_class__ for m in load_charms(self.config.getopt('charm_plugin_dir')) if not m.__charm_class__.disabled ] return cl
def get_charm(charm_name, juju, juju_state, ui): """ returns single charm class :param str charm_name: name of charm to query :param juju_state: status of juju :rtype: Charm :returns: charm class """ for charm in utils.load_charms(): c = charm.__charm_class__(juju=juju, juju_state=juju_state, ui=ui) if charm_name == c.name(): return c
def header_hotkeys(self, key): if key in ['j', 'down']: self.ui.focus_next() if key in ['k', 'up']: self.ui.focus_previous() if key == 'esc': self.ui.hide_widget_on_top() if key in ['h', 'H', '?']: self.ui.show_help_info() if key in ['a', 'A', 'f6']: charm_modules = utils.load_charms() charm_classes = [m.__charm_class__ for m in charm_modules if m.__charm_class__.allow_multi_units and not m.__charm_class__.disabled] self.ui.show_add_charm_info(charm_classes, self.add_charm) if key in ['q', 'Q']: self.exit() if key in ['r', 'R', 'f5']: self.info_message("View was refreshed.") self.render_nodes(self.nodes, self.juju_state, self.maas_state)
def header_hotkeys(self, key): if key in ['j', 'down']: self.ui.focus_next() if key in ['k', 'up']: self.ui.focus_previous() if key == 'esc': self.ui.hide_widget_on_top() if key in ['h', 'H', '?']: self.ui.show_help_info() if key in ['a', 'A', 'f6']: if self.current_state != ControllerState.SERVICES: return charm_modules = utils.load_charms() charm_classes = [m.__charm_class__ for m in charm_modules if m.__charm_class__.allow_multi_units and not m.__charm_class__.disabled] self.ui.show_add_charm_info(charm_classes, self.add_charm) if key in ['q', 'Q']: self.exit() if key in ['r', 'R', 'f5']: self.info_message("View was refreshed") self.update()
def header_hotkeys(self, key): if key in ['j', 'down']: self.ui.focus_next() if key in ['k', 'up']: self.ui.focus_previous() if key == 'esc': self.ui.hide_widget_on_top() if key in ['h', 'H', '?']: self.ui.show_help_info() if key in ['a', 'A', 'f6']: charm_modules = utils.load_charms() charm_classes = [ m.__charm_class__ for m in charm_modules if m.__charm_class__.allow_multi_units and not m.__charm_class__.disabled ] self.ui.show_add_charm_info(charm_classes, self.add_charm) if key in ['q', 'Q']: self.exit() if key in ['r', 'R', 'f5']: self.info_message("View was refreshed.") self.render_nodes(self.nodes, self.juju_state, self.maas_state)
def __init__(self, **kwds): self.charm_modules = utils.load_charms() self.deployed_charm_classes = [] self.single_net_configured = False self.lxc_root_tarball_configured = False super().__init__(**kwds)
def charm_classes(self): cl = [m.__charm_class__ for m in load_charms() if not m.__charm_class__.disabled] return cl
def __init__(self, **kwds): self.charm_modules = utils.load_charms() self.juju_m_idmap = None # for single, {instance_id: machine id} self.deployed_charm_classes = [] super().__init__(**kwds)