X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=juju%2Funit.py;h=3dbc1e963577c8882ada5457aa0396073ca21493;hb=b89f2fff0ca59f55a5caed03d15e34884721c88b;hp=d0bbd32a1122240b1511827aaad89ed5f4e67d67;hpb=bccd5c73a2f02a768612c7aec318c910fceda299;p=osm%2FN2VC.git diff --git a/juju/unit.py b/juju/unit.py index d0bbd32..3dbc1e9 100644 --- a/juju/unit.py +++ b/juju/unit.py @@ -1,3 +1,4 @@ +import asyncio import logging from datetime import datetime @@ -108,6 +109,9 @@ class Unit(model.ModelEntity): :param str command: The command to run :param int timeout: Time to wait before command is considered failed + Returns a tuple containing the stdout, stderr, and return code + from the command. + """ action = client.ActionFacade() action.connect(self.connection) @@ -115,14 +119,14 @@ class Unit(model.ModelEntity): log.debug( 'Running `%s` on %s', command, self.name) - # TODO this should return an Action - return await action.Run( + res = await action.Run( [], command, [], timeout, [self.name], ) + return await self.model.wait_for_action(res.results[0].action.tag) def run_action(self, action_name, **params): """Run action on this unit.