""" This example: 1. Connects to the current model. 2. Prints out leadership status for all deployed units in the model. 3. Cleanly disconnects. """ import asyncio from juju.model import Model from juju import loop async def report_leadership(): model = Model() await model.connect() print("Leadership: ") for app in model.applications.values(): for unit in app.units: print("{}: {}".format( unit.name, await unit.is_leader_from_status())) await model.disconnect() if __name__ == '__main__': loop.run(report_leadership())