"""
return self.data['status']['message']
+ @property
+ def tag(self):
+ return 'application-%s' % self.name
+
async def add_relation(self, local_relation, remote_relation):
"""Add a relation to another application.
"""
pass
- def run(self, command, timeout=None):
+ async def run(self, command, timeout=None):
"""Run command on all units for this application.
:param str command: The command to run
:param int timeout: Time to wait before command is considered failed
"""
- pass
+ action = client.ActionFacade()
+ action.connect(self.connection)
+
+ log.debug(
+ 'Running `%s` on all units of %s', command, self.name)
+
+ # TODO this should return a list of Actions
+ return await action.Run(
+ [self.name],
+ command,
+ [],
+ timeout,
+ [],
+ )
async def set_annotations(self, annotations):
"""Set annotations on this application.
"""
pass
+
+ async def get_metrics(self):
+ return await self.model.get_metrics(self.tag)