Revert "Remove vendored libjuju"
[osm/N2VC.git] / modules / libjuju / examples / leadership.py
diff --git a/modules/libjuju/examples/leadership.py b/modules/libjuju/examples/leadership.py
new file mode 100644 (file)
index 0000000..dbd1b6e
--- /dev/null
@@ -0,0 +1,28 @@
+"""
+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())