-
-
Notifications
You must be signed in to change notification settings - Fork 42
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
Replace FAI with our own implementation #281
Open
zeha
wants to merge
8
commits into
grml:master
Choose a base branch
from
zeha:zeha/minifai
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
zeha
force-pushed
the
zeha/minifai
branch
7 times, most recently
from
January 6, 2025 18:26
8baf0be
to
6998ae4
Compare
zeha
changed the title
WIP: replace FAI with minimal reimplementation of requires FAI API surface
WIP: Replace FAI with our own implementation
Jan 6, 2025
zeha
force-pushed
the
zeha/minifai
branch
4 times, most recently
from
January 6, 2025 18:42
49db4b1
to
2e9860d
Compare
zeha
force-pushed
the
zeha/minifai
branch
2 times, most recently
from
January 7, 2025 11:30
937fbdc
to
cbdbcb1
Compare
zeha
changed the title
WIP: Replace FAI with our own implementation
Replace FAI with our own implementation
Jan 7, 2025
cb pointed out minifai doesn't get installed into the deb. @zeha need to fix this |
done! |
Just short of 700 new lines of Python, but covers running mmdebstrap and lots of workarounds go away. I've titled it "minifai". grml-policyrcd gets removed, as minifai handles installing its own policy-rc.d. This is necessary regardless if we want grml-policyrcd or not, and then grml-policyrcd provides no value anymore. The variables FAI_ARGS, FAI_DEBOOTSTRAP_OPTS and ZERO_FAI_LOGFILE are no longer supported. The grml-live parameter -V is now always enabled and the option is deprecated. minifai logs to stdout/stderr, and aborts on the first error it encounters. All log messages now end up in grml-live.log. These log/data files are no longer written: debconf.data, fai-monitor.log, fai.conf, fcopy.log, nfsroot.conf, scripts.log, software.log, status.log, task_error, task_local_error, variables.log. Notably missing: packages can only be "install"-ed, which works like "install-norec" in FAI. "hold", etc are not implemented at all.
Somewhat easier to deal with, as grml-live ensures this will not exist in the packed chroot.
minifai should never write logs as another user.
Also set zfs-dkms/stop-build-for-unknown-kernel to avoid zfs-dkms.postinst failing when it cannot identify the running kernel.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Replace FAI with our own implementation
Just short of 700 new lines of Python, but covers running
mmdebstrap and lots of workarounds go away. I've titled it
"minifai".
grml-policyrcd
gets removed, as minifai handles installing its own policy-rc.d.This is necessary regardless if we want grml-policyrcd or not, and then grml-policyrcd provides no value anymore.
The variables
FAI_ARGS
,FAI_DEBOOTSTRAP_OPTS
andZERO_FAI_LOGFILE
are no longer supported.The grml-live parameter
-V
is now always enabled and the option is deprecated.minifai logs to stdout/stderr, and aborts on the first error it encounters. All log messages now end up in grml-live.log.
These log/data files are no longer written:
Notably missing: packages can only be "install"-ed, which works like "install-norec" in FAI. "hold", etc are not implemented at all.
Followup work: move script execution into the chroot where possible.