Describe the bug
If the network plugin kubeconfig rotation fails, the machine pool cannot progress in creating machines. This is due to the kubeconfig rotation being dispatched in the Init function of the network interface plugin (
|
if err := p.startWatcher(ctx); err != nil { |
) without any health or readiness check.
The contract of the network interface plugin is also not quite well-formed here: We should research how e.g. k8s with the network interface plugin does both authentication and watching to make failures more visible and to be able to react on them. Example would be Calico to look at, as it also does api server communication.
Describe the bug
If the network plugin kubeconfig rotation fails, the machine pool cannot progress in creating machines. This is due to the kubeconfig rotation being dispatched in the
Initfunction of the network interface plugin (libvirt-provider/internal/plugins/networkinterface/apinet/apinet.go
Line 88 in cc7de6f
The contract of the network interface plugin is also not quite well-formed here: We should research how e.g. k8s with the network interface plugin does both authentication and watching to make failures more visible and to be able to react on them. Example would be Calico to look at, as it also does api server communication.