At the moment, for backwards compat with the current crc code, several things are hardcoded in the bundle which could be revisited once crc(-ng) fully supports self sufficient bundles:
- the kubelet service must be enabled explicitly through cloud-init since crc expects to be able to start the kubelet itself once the VM is configured. When crc no longer does this, we could probably enable the kubelet service by default, and use systemd dependencies to ensure it starts at the right time.
- there’s a pre-configured user with a hardcoded ssh key. If we do the configuration with cloud-init, we can create the user and sets its credential through cloud-init. Not sure if it’s doable to remove the preconfigured user after we’ve created the bundle.