magnum-cluster-api-image-builder pulls the latest daily build of the ubuntu service live-cd installer iso, and passes this to image-builder as "iso_url".
The daily build ubuntu ISO has the subiquity installer run from a snap, revision 5741 corresponding to subiquity 24.04.1.
The result is a file is left in /etc/cloud/cloud.cfg.d/90-installer-network.cfg
ubuntu@capi-image-build:~$ sudo cat /mnt/etc/cloud/cloud.cfg.d/90-installer-network.cfg
# This is the network config written by 'subiquity'
network:
ethernets:
ens4:
dhcp4: true
version: 2
End result is the configuration for (the non-existent) ens4 interface is read by cloud-init when the magnum instance boots, and the IP previously acquired by DHCP from neutron is removed from the interface by cloud-init
dang, I was bit by this for a while, I was hoping that we can speed up the deploy by reducing the apt upgrade time... but it seems that this has somehow rolled out another issue.
magnum-cluster-api-image-builder pulls the latest daily build of the ubuntu service live-cd installer iso, and passes this to image-builder as "iso_url".
The daily build ubuntu ISO has the subiquity installer run from a snap, revision 5741 corresponding to subiquity 24.04.1.
curl -H 'Snap-Device-Series: 16' http://api.snapcraft.io/v2/snaps/info/subiquity | jq .
The release-day ISO for ubuntu 22.04.4 contains revision 5495 of the subiquity snap.
Subiquity has changed the name of the files it drops during installation for network configuration https://github.com/canonical/subiquity/commit/2af582984c47ebe0a8d3bbc2733e0767d04cda0f
image-builder only accounts for the previous behaviour of subiquity https://github.com/kubernetes-sigs/image-builder/blob/main/images/capi/ansible/roles/sysprep/tasks/debian.yml
The result is a file is left in
/etc/cloud/cloud.cfg.d/90-installer-network.cfg
End result is the configuration for (the non-existent) ens4 interface is read by cloud-init when the magnum instance boots, and the IP previously acquired by DHCP from neutron is removed from the interface by cloud-init
The magnum instance networking is now broken.