Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion systemd/bootc-fetch-apply-updates.service
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
[Unit]
Description=Apply bootc updates
Documentation=man:bootc(8)
ConditionPathExists=/run/ostree-booted
ConditionPathExists=|/run/ostree-booted
ConditionKernelCommandLine=|composefs

[Service]
Type=oneshot
Expand Down
3 changes: 2 additions & 1 deletion systemd/bootc-fetch-apply-updates.timer
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
[Unit]
Description=Apply bootc updates
Documentation=man:bootc(8)
ConditionPathExists=/run/ostree-booted
ConditionPathExists=|/run/ostree-booted
ConditionKernelCommandLine=|composefs

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

So this is a severe oversight on our part, and part of this is that we were just incrementally getting the tests passing for composefs and didn't have a conformance suite for this.

However I now have a serious worry that fixing this could seriously break people who were using the composefs backend and basically relying on us not doing this (i.e. they have their own update systems).

Also of note, this change will also break after #2248 lands in the general case.

If we have to I would argue that we add /run/composefs-booted, I think that's been discussed elsewhere.

(Though strictly speaking a better check is for the source of /'s mount containing composefs perhaps, that's what we do in bootc's generator itself)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Also, I now kind of regret shipping the builtin timer. It wasn't...wrong exactly but it's too simplistic and basically everyone needs to replace it, and if they need to do that then we shouldn't have had it on at all...

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Maybe we can disable this timer by default and people who want it can enable it?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

It'd be a very breaking change to disable the timer for the ostree backend too.

I am not seeing an easy path out of this situation without VERY LOUD warnings on either side.

OK, one technical thing we could do: look at the systemd journal and see whether any previous boots had something else do an update but...so heuristic and messy, I am not sure it'd be worth it.


[Timer]
OnBootSec=1h
Expand Down
Loading