fix(boot): break rechunker ordering cycle - #495
Conversation
Reset the common service ordering that waits for local-fs.target and anchor the migration repair at local-fs-pre.target before systemd-sysusers. Add regression coverage for the drop-in. Assisted-by: Goose
hanthor
left a comment
There was a problem hiding this comment.
Clean, well-scoped fix. This supersedes #494.
What I checked:
- Drop-in resets both After= and Wants= (unlike #494 which only resets After=)
- Adds Before=local-fs-pre.target to put the service outside the cycle
- Retains After=bootc-sysusers-shadow-sync.service and Before=systemd-sysusers.service
- Test verifies the resets, ordering, and absence of local-fs.target
- Matching fix already approved in common#921
Recommend closing #494 in favor of this PR since this is the more complete version of the same approach.
|
Diagnosed the bats failure — it's self-inflicted and one line to fix:
Recommended fix in @test "rechunker ordering: does not add local-fs.target" {
run bash -c "grep -v '^#' '${DROP_IN}' | grep -E '(^|[[:space:]])local-fs\.target([[:space:]]|\$)'"
[ "$status" -ne 0 ]
}The "Lint & syntax" failure on this PR is the repo-wide hadolint DL3063 breakage, fixed by #501 — re-running after that merges should clear it. With those two, this is green and it's the designated fix for #466 (#494 and #471 are closed as superseded). Generated by Claude Code |
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Signed-off-by: sec-check[bot] <sec-check[bot]@users.noreply.github.com>
Signed-off-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: sec-check[bot] <sec-check[bot]@users.noreply.github.com>
Signed-off-by: sec-check[bot] <sec-check[bot]@users.noreply.github.com>
Signed-off-by: sec-check[bot] <sec-check[bot]@users.noreply.github.com>
CI diagnosis: shared infrastructure failure, not PR code. Compose succeeded through Buildah, then push failed at https://github.com/projectbluefin/bluefin-lts/actions/runs/33409012764/job/99543629858 with
|
|
Thanks for this fix — I'm the reporter of #466. Heads-up from testing the same approach locally on bluefin-lts (systemd 257):
For reference: the full-unit-shadow equivalent of this fix has run on my machine since Aug 17 — verify 16 → 0 cycle lines, 4+ clean boots, 41–43 s, no regressions. Happy to test this PR branch on hardware (drop my shadow, apply the drop-in, run verify + several reboots) — just say the word. |
Signed-off-by: sec-check[bot] <sec-check[bot]@users.noreply.github.com>
Signed-off-by: sec-check[bot] <sec-check[bot]@users.noreply.github.com>
|
Closing as superseded by #527, which merged the rechunker ordering drop-in and its regression coverage. This branch now conflicts because the equivalent fix is already on |
Pull request was closed
Fixes #466. Adds an LTS systemd drop-in to remove the local-fs.target ordering cycle from rechunker-group-fix.service while retaining its ordering before systemd-sysusers. Focused assertions and git diff --check pass; bats, just, and systemd-analyze are unavailable locally. Assisted-by: Goose