Public bug reported: cloud-init has two interactions with network backplanes
1. to write (or render) network configuration to the approapriate config files for the network system: systemd, netplan, network-manager, ENI, freebsd, netbsd, openbsd. This is done via cloudinit.net.renderers discovery[1] 2. optionally to bring up the network configuration via "network activation" for datasources discovered only in init boot stage after network is already up[2] /etc/cloud/cloud.cfg allows system_info:network:renderers to configure overrides for default renderers, but not for activators. The two discovery/mechanisms don't know about each other and have separate logic to determine which is applicable on the given system. Cloud-init should either: - Expose system_info: network: activators discovery priorty/order configuration in /etc/cloud/cloud.cfg* -- OR -- - make activators aware of customized/overridden renderers priority from cloud.cfg and honor that priority order when discovering activators to use. Without this feature, overridden network: renderer priority order to set network-manager as default renderer will result in cloud-init writing /etc/NetworkManager/system-connections/cloud- init-<NIC_NAME>.nmconnection but then trying to run `netplan apply` for a non-existent configuration on ubuntu Desktop installs. References: [1] network renderers discovery: https://github.com/canonical/cloud-init/blob/main/cloudinit/net/renderers.py#L67 [2] network activators discovery: https://github.com/canonical/cloud-init/blob/main/cloudinit/net/activators.py#L279 [3] renderer overrides honored: https://github.com/canonical/cloud-init/blob/main/cloudinit/distros/__init__.py#L122-L126 [4] No activator overrides: https://github.com/canonical/cloud-init/blob/main/cloudinit/distros/__init__.py#L246 ** Affects: cloud-init Importance: Undecided Status: Triaged ** Affects: subiquity Importance: Undecided Status: New ** Tags: bitesize ** Description changed: cloud-init has two interactions with network backplanes 1. to write (or render) network configuration to the approapriate config files for the network system: systemd, netplan, network-manager, ENI, freebsd, netbsd, openbsd. This is done via cloudinit.net.renderers discovery[1] 2. optionally to bring up the network configuration via "network activation" for datasources discovered only in init boot stage after network is already up[2] - /etc/cloud/cloud.cfg allows system_info:network:renderers to configure overrides for default renderers, but not for activators. The two discovery/mechanisms don't know about each other and have separate logic to determine which is applicable on the given system. + Cloud-init should either: + - Expose system_info: network: activators discovery priorty/order configuration in /etc/cloud/cloud.cfg* - Cloud-init should either: - - Expose system_info: network: activators discovery priorty/order configuration in /etc/cloud/cloud.cfg* + -- OR -- - -- OR -- - - - make activators aware of customized/overridden renderers priority + - make activators aware of customized/overridden renderers priority from cloud.cfg and honor that priority order when discovering activators to use. - - Without this feature, overridden network: renderer priority order to set network-manager as default renderer will result in cloud-init writing /etc/NetworkManager/system-connections/cloud-init-<NIC_NAME>.nmconnection but then trying to run `netplan apply` for a non-existent configuration on ubuntu Desktop installs. - + Without this feature, overridden network: renderer priority order to set + network-manager as default renderer will result in cloud-init writing + /etc/NetworkManager/system-connections/cloud- + init-<NIC_NAME>.nmconnection but then trying to run `netplan apply` for + a non-existent configuration on ubuntu Desktop installs. References: [1] network renderers discovery: https://github.com/canonical/cloud-init/blob/main/cloudinit/net/renderers.py#L67 - [2] network activators discovery: + [2] network activators discovery: https://github.com/canonical/cloud-init/blob/main/cloudinit/net/activators.py#L279 ** Tags added: bitesize ** Description changed: cloud-init has two interactions with network backplanes 1. to write (or render) network configuration to the approapriate config files for the network system: systemd, netplan, network-manager, ENI, freebsd, netbsd, openbsd. This is done via cloudinit.net.renderers discovery[1] 2. optionally to bring up the network configuration via "network activation" for datasources discovered only in init boot stage after network is already up[2] /etc/cloud/cloud.cfg allows system_info:network:renderers to configure overrides for default renderers, but not for activators. The two discovery/mechanisms don't know about each other and have separate logic to determine which is applicable on the given system. Cloud-init should either: - Expose system_info: network: activators discovery priorty/order configuration in /etc/cloud/cloud.cfg* -- OR -- - make activators aware of customized/overridden renderers priority from cloud.cfg and honor that priority order when discovering activators to use. Without this feature, overridden network: renderer priority order to set network-manager as default renderer will result in cloud-init writing /etc/NetworkManager/system-connections/cloud- init-<NIC_NAME>.nmconnection but then trying to run `netplan apply` for a non-existent configuration on ubuntu Desktop installs. References: [1] network renderers discovery: https://github.com/canonical/cloud-init/blob/main/cloudinit/net/renderers.py#L67 [2] network activators discovery: https://github.com/canonical/cloud-init/blob/main/cloudinit/net/activators.py#L279 + [3] renderer overrides honored: https://github.com/canonical/cloud-init/blob/main/cloudinit/distros/__init__.py#L122-L126 + [4] No activator overrides: https://github.com/canonical/cloud-init/blob/main/cloudinit/distros/__init__.py#L246 ** Also affects: subiquity Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to cloud-init. https://bugs.launchpad.net/bugs/1982857 Title: cloud-init does not provide configurable network activator priority overrides Status in cloud-init: Triaged Status in subiquity: New Bug description: cloud-init has two interactions with network backplanes 1. to write (or render) network configuration to the approapriate config files for the network system: systemd, netplan, network- manager, ENI, freebsd, netbsd, openbsd. This is done via cloudinit.net.renderers discovery[1] 2. optionally to bring up the network configuration via "network activation" for datasources discovered only in init boot stage after network is already up[2] /etc/cloud/cloud.cfg allows system_info:network:renderers to configure overrides for default renderers, but not for activators. The two discovery/mechanisms don't know about each other and have separate logic to determine which is applicable on the given system. Cloud-init should either: - Expose system_info: network: activators discovery priorty/order configuration in /etc/cloud/cloud.cfg* -- OR -- - make activators aware of customized/overridden renderers priority from cloud.cfg and honor that priority order when discovering activators to use. Without this feature, overridden network: renderer priority order to set network-manager as default renderer will result in cloud-init writing /etc/NetworkManager/system-connections/cloud- init-<NIC_NAME>.nmconnection but then trying to run `netplan apply` for a non-existent configuration on ubuntu Desktop installs. References: [1] network renderers discovery: https://github.com/canonical/cloud-init/blob/main/cloudinit/net/renderers.py#L67 [2] network activators discovery: https://github.com/canonical/cloud-init/blob/main/cloudinit/net/activators.py#L279 [3] renderer overrides honored: https://github.com/canonical/cloud-init/blob/main/cloudinit/distros/__init__.py#L122-L126 [4] No activator overrides: https://github.com/canonical/cloud-init/blob/main/cloudinit/distros/__init__.py#L246 To manage notifications about this bug go to: https://bugs.launchpad.net/cloud-init/+bug/1982857/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

