-
Notifications
You must be signed in to change notification settings - Fork 26
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
Split snap-bootstrap #142
base: main
Are you sure you want to change the base?
Split snap-bootstrap #142
Conversation
7b3556f
to
dcdefe1
Compare
dcdefe1
to
945d1dc
Compare
945d1dc
to
d40e0d9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this will break cloudimg-rootfs
mode.
Also this backtracks on using snapd-bootstrap for everything. And goes back to a shell script the tool
.
I would rather there be snapd-bootstrap as a generator, or some snapd-bootstrap-snap-mounts-generator binary.
Can you make snapd-bootstrap be able to run in a generator mode, when called under a different name, and symlink it into system-generators path? such that we have just one go binary and it is used in a generators mode?
See for example that netplan does that.
Modes that are not handled by the split snap-bootstrap are still handled through the monolitic snap-bootstrap. Though I would like to split them all at some point.
Here there is only one script. A generator called
This is what this PR does. This is what generates the mount units of the snaps from the modeenv. And the script However, we cannot (or at least should not) put everything in the generator. The generator should only read configuration or kernel parameters and generate units, or eventually other configuration files for systemd. (And looking quickly at what netplan does, this is the same). There are things, like opening the cryptsetup disk, that cannot be done in the generator. And we cannot use systemd's cryptsetup integration, at least not yet. So for that reason, I have split Maybe this branch is not very clear, because it is still experimental. But let me sum up what happens in the boot (this is topologically sorted, things might happen in a slightly different order or in parallel).
|
d40e0d9
to
804e0b6
Compare
Do we still want this? |
Todo:
To be used with snapcore/snapd#12570