Full charm support
[osm/N2VC.git] / n2vc / vnf.py
index a1fcfe3..9f04405 100644 (file)
@@ -335,14 +335,23 @@ class N2VC:
         ########################################################
         to = ""
         if machine_spec.keys():
-            if all(k in machine_spec for k in ['host', 'user']):
-                # Enlist an existing machine as a Juju unit
-                machine = await model.add_machine(spec='ssh:{}@{}:{}'.format(
-                    machine_spec['user'],
-                    machine_spec['host'],
-                    self.GetPrivateKeyPath(),
-                ))
+            if all(k in machine_spec for k in ['hostname', 'username']):
+                # Get the path to the previously generated ssh private key.
+                # Machines we're manually provisioned must have N2VC's public
+                # key injected, so if we don't have a keypair, raise an error.
+                private_key_path = ""
+
+                # Enlist the existing machine in Juju
+                machine = await self.model.add_machine(
+                    spec='ssh:{}@{}:{}'.format(
+                        specs['host'],
+                        specs['user'],
+                        private_key_path,
+                    )
+                )
+                # Set the machine id that the deploy below will use.
                 to = machine.id
+            pass
 
         #######################################
         # Get the initial charm configuration #