projects
/
osm
/
N2VC.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Wait for cloud-init to finish before provisioning
[osm/N2VC.git]
/
n2vc
/
provisioner.py
diff --git
a/n2vc/provisioner.py
b/n2vc/provisioner.py
index
e2b51b9
..
ab25993
100644
(file)
--- a/
n2vc/provisioner.py
+++ b/
n2vc/provisioner.py
@@
-85,6
+85,11
@@
firewall-cmd --direct --permanent --add-rule ipv4 nat OUTPUT 0 -d {} -p tcp \
firewall-cmd --reload
"""
firewall-cmd --reload
"""
+CLOUD_INIT_WAIT_SCRIPT = """#!/bin/bash
+set -e
+cloud-init status --wait
+"""
+
class AsyncSSHProvisioner:
"""Provision a manually created machine via SSH."""
class AsyncSSHProvisioner:
"""Provision a manually created machine via SSH."""
@@
-299,6
+304,12
@@
class AsyncSSHProvisioner:
- 127.0.0.1:17070
- '[::1]:17070'
"""
- 127.0.0.1:17070
- '[::1]:17070'
"""
+ try:
+ # Wait until cloud-init finish
+ await self._run_configure_script(CLOUD_INIT_WAIT_SCRIPT)
+ except Exception:
+ self.log.debug("cloud-init not present in machine {}".format(machine_id))
+
if proxy:
m = re.search(
r"apiaddresses:\n- (\d+\.\d+\.\d+\.\d+):17070", results.script
if proxy:
m = re.search(
r"apiaddresses:\n- (\d+\.\d+\.\d+\.\d+):17070", results.script