summaryrefslogtreecommitdiff
path: root/cloudinit
diff options
context:
space:
mode:
Diffstat (limited to 'cloudinit')
-rwxr-xr-xcloudinit/sources/DataSourceAzure.py42
1 files changed, 17 insertions, 25 deletions
diff --git a/cloudinit/sources/DataSourceAzure.py b/cloudinit/sources/DataSourceAzure.py
index a8b403e8..f5630840 100755
--- a/cloudinit/sources/DataSourceAzure.py
+++ b/cloudinit/sources/DataSourceAzure.py
@@ -297,13 +297,10 @@ class DataSourceAzure(sources.DataSource):
self.dhclient_lease_file = self.ds_cfg.get("dhclient_lease_file")
self._network_config = None
self._ephemeral_dhcp_ctx = None
- self.failed_desired_api_version = False
self.iso_dev = None
def _unpickle(self, ci_pkl_version: int) -> None:
super()._unpickle(ci_pkl_version)
- if not hasattr(self, "failed_desired_api_version"):
- self.failed_desired_api_version = False
if not hasattr(self, "iso_dev"):
self.iso_dev = None
@@ -647,29 +644,24 @@ class DataSourceAzure(sources.DataSource):
this fault tolerant and fall back to a good known minimum api
version.
"""
-
- if not self.failed_desired_api_version:
- for _ in range(retries):
- try:
- LOG.info("Attempting IMDS api-version: %s", IMDS_VER_WANT)
- return get_metadata_from_imds(
- fallback_nic=fallback_nic,
- retries=0,
- md_type=md_type,
- api_version=IMDS_VER_WANT,
- exc_cb=exc_cb,
- )
- except UrlError as err:
- LOG.info(
- "UrlError with IMDS api-version: %s", IMDS_VER_WANT
+ for _ in range(retries):
+ try:
+ LOG.info("Attempting IMDS api-version: %s", IMDS_VER_WANT)
+ return get_metadata_from_imds(
+ fallback_nic=fallback_nic,
+ retries=0,
+ md_type=md_type,
+ api_version=IMDS_VER_WANT,
+ exc_cb=exc_cb,
+ )
+ except UrlError as err:
+ LOG.info("UrlError with IMDS api-version: %s", IMDS_VER_WANT)
+ if err.code == 400:
+ log_msg = "Fall back to IMDS api-version: {}".format(
+ IMDS_VER_MIN
)
- if err.code == 400:
- log_msg = "Fall back to IMDS api-version: {}".format(
- IMDS_VER_MIN
- )
- report_diagnostic_event(log_msg, logger_func=LOG.info)
- self.failed_desired_api_version = True
- break
+ report_diagnostic_event(log_msg, logger_func=LOG.info)
+ break
LOG.info("Using IMDS api-version: %s", IMDS_VER_MIN)
return get_metadata_from_imds(