Skip to content

Remove VMType check from the lima-init boot script #3861

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

afbjorklund
Copy link
Member

@afbjorklund afbjorklund commented Aug 18, 2025

Do this when setting up the cidata instead, next to the decision on whether to use "cidata/" directory or "cidata.iso".

This means that this particular boot script is not depending on the driver, but can be used from all container drivers.

We probably want to add an explicit bool config for it to the driver, instead of checking for the driver name?

And there are still some features left to add to the script (from cloud-config), like the hostname and timezone.

Currently we dont use user-data, but lima.env (+ ssh key)

We execute this script through the boot.sh directly (lima-init).

Do this when setting up the cidata instead, next to the
decision on whether to use "cidata" dir or "cidata.iso".

This means that this particular boot script is not depending
on the driver, but can be used from all container drivers.

Signed-off-by: Anders F Björklund <anders.f.bjorklund@gmail.com>
@afbjorklund
Copy link
Member Author

afbjorklund commented Aug 24, 2025

This should be returned by the driver, instead of hardcoded on driver name like now:

func useCloudInit(instConfig *limayaml.LimaYAML) bool {
       // all drivers but WSL2 use cloud-init
       return *instConfig.VMType != limayaml.WSL2
}

Not so keen on the variable name, but it does follow the "default is false" convention.

@@ -116,6 +116,11 @@ func setupEnv(instConfigEnv map[string]string, propagateProxyEnv bool, slirpGate
return env, nil
}

func useCloudInit(instConfig *limayaml.LimaYAML) bool {
// all drivers but WSL2 use cloud-init
return *instConfig.VMType != limayaml.WSL2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Should be moved to the DriverFeatures struct in the driver infra)

@AkihiroSuda AkihiroSuda added this to the v2.0.0 milestone Aug 27, 2025
@AkihiroSuda AkihiroSuda linked an issue Aug 27, 2025 that may be closed by this pull request
@AkihiroSuda
Copy link
Member

Needs rebase

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

cidata: identify vmtype-specific boot scripts
2 participants