Dropped in fixes for juju ssh.
[osm/N2VC.git] / juju / controller.py
index cf7c2ce..e3234f8 100644 (file)
@@ -2,6 +2,7 @@ import asyncio
 import logging
 
 from . import tag
+from . import utils
 from .client import client
 from .client import connection
 from .client import watcher
@@ -98,6 +99,19 @@ class Controller(object):
             region,
         )
 
+        # Add our ssh key to the model, to work around
+        # https://bugs.launchpad.net/juju/+bug/1643076
+        try:
+            ssh_key = utils.read_ssh_key()
+            await utils.execute_process(
+                'juju', 'add-ssh-key', '-m', model_name, ssh_key, log=log)
+        except Exception as e:
+            log.warning(
+                "Could not add ssh key to model. You will not be able "
+                "to ssh into machines in this model. "
+                "Manually running `juju add-ssh-key <key>` in the cli "
+                "may fix this problem.")
+
         model = Model()
         await model.connect(
             self.connection.endpoint,