-
Notifications
You must be signed in to change notification settings - Fork 70
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
Add support for container-rebase
#428
Comments
I'm not immediately reproducing this problem when booting latest stable and rebasing to the tailscale example. This may relate to in-place upgrades? Or it might relate somehow to https://fedoraproject.org/wiki/Changes/Preset_All_Systemd_Units_on_First_Boot Can you try to narrow down the reproduction scenario a bit more? One thing that jumps out to me as a little odd is you're getting |
I pushed up an example here https://github.com/quickvm/fcos-layer-paperless-ngx that reproduces the problem. It layers The I did try switching to |
There's a full 4GB layer in there which makes testing things here a bit annoying 😄 Is it really necessary to reproduce? (I'm looking at it, just hoping it's not...) |
Yeah that can be annoying. You could edit the container file to not include the paperless tarballs and push that up to a registry and use that. You can still reproduce without that stuff because it won't have the units enabled via simlink. I use a local registry to speed up my development workflows. Start a local registry on your workstation:
And push the container to the local registry:
Add this to the butane:
Change the rebase exec start to use the local registry:
That will make local development pretty darn quick. |
I rebased to to the
I can think of three potential things that might be happening.
|
If you launch FCOS from that butane it will reproduce after applying the layer from the systems unit. That unit has |
I just ran into this issue after not seeing it happen for a while. Server without this issue:
Server with this issue:
Per your suggestion, I noted that
|
Thanks, I think we'll get some butane sugar for this at some point soon which should avoid that particular footgun. |
No problem Colin and thank you for your help on this issue. Do you want to close this or leave it open? |
container-rebase
I've transferred the issue to butane. |
Generally we try not to hardcode complex systemd units in Butane, but instead ship them in the OS and have Butane sugar configure them. It looks like the workflow here is to write an Ignition config that arranges a pivot during the first boot. Is this a workflow we want to support and encourage? A major design goal of Ignition is that it makes its changes before the system boots, so we're not trying to rearrange the boot while in the middle of booting. |
Right, but this is all part of moving stuff out of ignition in the end, it relates to coreos/fedora-coreos-docs#540 So we can just move forward with documenting there. |
<walters> EDIT: Transferring this issue from rpm-ostree
Basically let's add something like:
One reason we should do this is that we need systemd unit ordering which correctly orders against
ignition-firstboot-complete.target
among others (see below).Original issue follows:
Host system details
Expected vs actual behavior
When using the latest
quay.io/fedora/fedora-coreos:stable
image based off of37.20221211.3.0
the symlinks for systemd units that are enabled within the layer are no longer present so layered systemd units do not load on reboot.Using an older verison of FCOS
36.20221001.3.0
works as expected.Here is the steps in my container layer build process that show the symlinks being created
But when I reboot into this container layer
The symlink is not present. The unit file is however present on the file system from the layer:
Expected:
Working systemd units after layering an image on FCOS and rebooting.
Steps to reproduce it
Use the latest
quay.io/fedora/fedora-coreos:stable
image based off of37.20221211.3.0
. Add and enable a systemd unit in your Containerfile, layer that on to FCOS and watch the systemd unit be enabled on boot.The text was updated successfully, but these errors were encountered: