From c275828b3582098a98610c326dd588ac542819b1 Mon Sep 17 00:00:00 2001 From: ebenner Date: Sat, 22 Jan 2022 06:39:35 -0500 Subject: [PATCH 1/3] Fix lo being used for DHCP, try next on cmd fail --- cloudinit/sources/helpers/vultr.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cloudinit/sources/helpers/vultr.py b/cloudinit/sources/helpers/vultr.py index 9848f8fd13c..e9b358de26e 100644 --- a/cloudinit/sources/helpers/vultr.py +++ b/cloudinit/sources/helpers/vultr.py @@ -21,8 +21,8 @@ def get_metadata(url, timeout, retries, sec_between, agent): # Seek iface with DHCP for iface in net.get_interfaces(): - # Skip dummy interfaces - if "dummy" in iface[0]: + # Skip dummy, lo interfaces + if iface[0] in ['lo', 'dummy']: continue try: with EphemeralDHCPv4( @@ -33,7 +33,7 @@ def get_metadata(url, timeout, retries, sec_between, agent): # Fetch the metadata v1 = read_metadata(url, timeout, retries, sec_between, agent) - except (NoDHCPLeaseError) as exc: + except (NoDHCPLeaseError, subp.ProcessExecutionError) as exc: LOG.error("DHCP Exception: %s", exc) exception = exc From ce08158a10c29c0264a0a5e4efe44c7c9367801d Mon Sep 17 00:00:00 2001 From: ebenner Date: Mon, 24 Jan 2022 09:46:55 -0500 Subject: [PATCH 2/3] Fix bad logic --- cloudinit/sources/helpers/vultr.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cloudinit/sources/helpers/vultr.py b/cloudinit/sources/helpers/vultr.py index e9b358de26e..45df673f106 100644 --- a/cloudinit/sources/helpers/vultr.py +++ b/cloudinit/sources/helpers/vultr.py @@ -22,7 +22,9 @@ def get_metadata(url, timeout, retries, sec_between, agent): # Seek iface with DHCP for iface in net.get_interfaces(): # Skip dummy, lo interfaces - if iface[0] in ['lo', 'dummy']: + if "dummy" in iface[0]: + continue + if 'lo' == iface[0]: continue try: with EphemeralDHCPv4( From 2772b60776b83a44ee07aba45eb1031351c1b0b0 Mon Sep 17 00:00:00 2001 From: ebenner Date: Mon, 24 Jan 2022 10:55:30 -0500 Subject: [PATCH 3/3] Fix bad formatting --- cloudinit/sources/helpers/vultr.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cloudinit/sources/helpers/vultr.py b/cloudinit/sources/helpers/vultr.py index 45df673f106..350ba4ab925 100644 --- a/cloudinit/sources/helpers/vultr.py +++ b/cloudinit/sources/helpers/vultr.py @@ -24,7 +24,7 @@ def get_metadata(url, timeout, retries, sec_between, agent): # Skip dummy, lo interfaces if "dummy" in iface[0]: continue - if 'lo' == iface[0]: + if "lo" == iface[0]: continue try: with EphemeralDHCPv4(