I understand it to:
1) boot NoCloud (fallback networking is utilized)
2) at cloud-init init stage, NoCloud-Net is loaded, which now supports reading URLs
including network-config files from URL.
3) during init stage the .network_config property on NoCloudNet is provided via loading the seed and reading the URLs
4) cloud-init init stage will render an updated network-config to the system.
This leaves a system with a fallback network config up (including dhclient) but the on-disk network-config is from the URL. On subsequent boots, it will utilize the network-config from the seed URL.
This appears to resolve the request; though it's not completely clear without more feedback from the submitter w.r.t the use-case "boot an image in a new environment without running cloud-init a second time".
A more complete fix would be to modify NoCloud to use EphemeralDHCP to bring up networking if a seed prefix included URLs (as Scott suggests in (b)).
The second bug suggests exactly (b).
I don't think it would be too much more effort to pull in the EphemeralDHCP bits.
Looking at the first bug:
https:/ /bugs.launchpad .net/cloud- init/+bug/ 1809180
I understand it to:
1) boot NoCloud (fallback networking is utilized)
2) at cloud-init init stage, NoCloud-Net is loaded, which now supports reading URLs
including network-config files from URL.
3) during init stage the .network_config property on NoCloudNet is provided via loading the seed and reading the URLs
4) cloud-init init stage will render an updated network-config to the system.
This leaves a system with a fallback network config up (including dhclient) but the on-disk network-config is from the URL. On subsequent boots, it will utilize the network-config from the seed URL.
This appears to resolve the request; though it's not completely clear without more feedback from the submitter w.r.t the use-case "boot an image in a new environment without running cloud-init a second time".
A more complete fix would be to modify NoCloud to use EphemeralDHCP to bring up networking if a seed prefix included URLs (as Scott suggests in (b)).
The second bug suggests exactly (b).
I don't think it would be too much more effort to pull in the EphemeralDHCP bits.