--- cloudinit/sources/DataSourceConfigDrive.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) --- a/cloudinit/sources/DataSourceConfigDrive.py +++ b/cloudinit/sources/DataSourceConfigDrive.py @@ -52,12 +52,13 @@ class ConfigDriveHelper(object): def __init__(self, distro): self.distro = distro - def on_first_boot(self, data): + def on_first_boot(self, data, dsmode="local"): if not data: data = {} - if 'network_config' in data: - LOG.debug("Updating network interfaces from config drive") - self.distro.apply_network(data['network_config']) + if dsmode == "local": + if 'network_config' in data: + LOG.debug("Updating network interfaces from config drive") + self.distro.apply_network(data['network_config']) files = data.get('files') if files: LOG.debug("Writing %s injected files", len(files)) @@ -214,8 +215,8 @@ class DataSourceConfigDrive(sources.Data # instance-id prev_iid = get_previous_iid(self.paths) cur_iid = md['instance-id'] - if prev_iid != cur_iid and self.dsmode == "local": - self.helper.on_first_boot(results) + if prev_iid != cur_iid: + self.helper.on_first_boot(results, dsmode=self.dsmode) # dsmode != self.dsmode here if: # * dsmode = "pass", pass means it should only copy files and then