cloud-init-dev team mailing list archive
Mailing list archive
Re: [Merge] ~rjschwei/cloud-init:triggerudev into cloud-init:master
Yes, we can take a look.
> diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py
> index 0998392..5f6f2d8 100644
> --- a/cloudinit/net/sysconfig.py
> +++ b/cloudinit/net/sysconfig.py
> @@ -696,6 +696,14 @@ class Renderer(renderer.Renderer):
> if nm_conf_content:
> util.write_file(nm_conf_path, nm_conf_content, file_mode)
> if self.netrules_path:
> + # When many interfaces are present it can happen that we get here
> + # before they are all setup. Settle if that is the case.
> + for iface in network_state.iter_interfaces(
> + renderer.filter_by_physical):
> + path = net.sys_dev_path(str(iface))
> + if not os.path.exists(path):
> + util.udevadm_settle(path, 5)
> + break
Do we want to break after the first missing? I suspect that's good enough, however, it would be good to at least confirm the rest of the interfaces didn't need a settle?
> netrules_content = self._render_persistent_net(network_state)
> netrules_path = util.target_path(target, self.netrules_path)
> util.write_file(netrules_path, netrules_content, file_mode)
Your team cloud-init commiters is requested to review the proposed merge of ~rjschwei/cloud-init:triggerudev into cloud-init:master.