+++ /dev/null
-"""
-This example:
-
-1. Connects to current model and resets it.
-2. Deploys a git unit.
-3. Runs an action against the unit.
-4. Waits for the action results to come back, then exits.
-
-"""
-import logging
-
-from juju import loop
-from juju.model import Model
-
-
-async def run_action(unit):
- logging.debug('Running action on unit %s', unit.name)
-
- # unit.run() returns a juju.action.Action instance
- action = await unit.run_action('add-repo', repo='myrepo')
- # wait for the action to complete
- action = await action.wait()
-
- logging.debug("Action results: %s", action.results)
-
-
-async def main():
- model = Model()
- # connect to current model with current user, per Juju CLI
- await model.connect()
-
- app = await model.deploy(
- 'git',
- application_name='git',
- series='trusty',
- channel='stable',
- )
-
- for unit in app.units:
- await run_action(unit)
-
- await model.disconnect()
-
-
-if __name__ == '__main__':
- logging.basicConfig(level=logging.DEBUG)
- ws_logger = logging.getLogger('websockets.protocol')
- ws_logger.setLevel(logging.INFO)
- loop.run(main())