bt-layer leaves the build time systemctl and service wrappers in a child layer #6
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Keel-Linux/buildtasks#6
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
bin/layer-libaddsturnkey.d/tkl-bashlib turnkey.d/systemd-chrootto achild layer's build overlays (
LAYER_CHILD_OVERLAYS), with the comment thatremovelists-final/turnkeystrips them from every finished layer and that achild layer's conf scripts need them again. The adding happens; the stripping
of the finished child layer does not.
Result on the layers published on 2026-09-26:
Outside a build chroot those two wrappers call each other forever:
/usr/local/bin/systemctl stop ssh.serviceruns/usr/local/bin/service ssh stop, whose fallback runssystemctlagain. A container assembled from thenodebblayer therefore never finishes its first boot: it stops in10regen-sshkeyswith hundreds of alternatingsystemctlandserviceprocesses, which is where the appliance gate
(
appliance / build-and-bootin keel-nodebb) now fails.Expected: a finished child layer is stripped with
removelists-final/turnkeythe way a rootfs layer is, so
/usr/local/bin/systemctland/usr/local/bin/serviceare not in the tarball.Once fixed,
nodebb(and any other child layer built since) has to be rebuiltand republished to
https://mirror.keellinux.org/layersbeforeappliance / build-and-bootcan be made a required status on keel-nodebb'smain.Correcting the diagnosis: the root cause was found on the keel-nodebb side and
is narrower than what this issue says.
The overlay ships
/etc/confconsole/services.txt, a conffile of confconsole, sothe explicit upgrade of inithooks and confconsole in the recipe met a dpkg
conffile prompt. Conf scripts run with stdin closed, dpkg read end of file, and
root.patchedfailed, which is why fab never got to remove the build overlays.Fixed in keel-linux/keel-nodebb#1.
What remains here, and is the reason to keep this open:
bt-layerpacked andexported that tree anyway.
makefailed and the layer was still written,published and served, so a broken layer reached the mirror with a valid manifest
and checksum. A layer whose build did not finish should not be packed, and the
appliance gate should not be the first thing to notice.