summaryrefslogtreecommitdiff
path: root/cloudinit/sources/DataSourceAzure.py
diff options
context:
space:
mode:
Diffstat (limited to 'cloudinit/sources/DataSourceAzure.py')
-rw-r--r--cloudinit/sources/DataSourceAzure.py13
1 files changed, 6 insertions, 7 deletions
diff --git a/cloudinit/sources/DataSourceAzure.py b/cloudinit/sources/DataSourceAzure.py
index dfcb891f..9233384b 100644
--- a/cloudinit/sources/DataSourceAzure.py
+++ b/cloudinit/sources/DataSourceAzure.py
@@ -579,6 +579,12 @@ class DataSourceAzure(sources.DataSource):
report_diagnostic_event(msg, logger_func=LOG.error)
raise sources.InvalidMetaDataException(msg)
+ # Networking is a hard requirement for source PPS, fail without it.
+ if not self._is_ephemeral_networking_up():
+ msg = "DHCP failed while in source PPS"
+ report_diagnostic_event(msg, logger_func=LOG.error)
+ raise sources.InvalidMetaDataException(msg)
+
if pps_type == PPSType.SAVABLE:
self._wait_for_all_nics_ready()
elif pps_type == PPSType.OS_DISK:
@@ -1096,13 +1102,6 @@ class DataSourceAzure(sources.DataSource):
dhcp_attempts = 0
if report_ready:
- # Networking must be up for netlink to detect
- # media disconnect/connect. It may be down to due
- # initial DHCP failure, if so check for it and retry,
- # ensuring we flag it as required.
- if not self._is_ephemeral_networking_up():
- self._setup_ephemeral_networking(timeout_minutes=20)
-
try:
if (
self._ephemeral_dhcp_ctx is None