class CommandRunner(ListBox): def __init__(self): self._contents = SimpleListWalker([]) ListBox.__init__(self, self._contents) self.client = JujuClient() def add_machine(self, constraints=None): """ Add a machine with optional constraints :param dict constraints: (optional) machine specs """ log.debug("adding machine with constraints={}".format(constraints)) out = self.client.add_machine(constraints) return out def add_unit(self, service_name, machine_id=None, count=1): """ Add a unit with optional machine id :param str service_name: name of charm :param int machine_id: (optional) id of machine to deploy to :param int count: (optional) number of units to add """ out = self.client.add_unit(service_name, machine_id, count) return out