Skip to content

sysext: Add fast path dev flow#2127

Merged
cgwalters merged 1 commit intobootc-dev:mainfrom
cgwalters:sysext
Apr 7, 2026
Merged

sysext: Add fast path dev flow#2127
cgwalters merged 1 commit intobootc-dev:mainfrom
cgwalters:sysext

Conversation

@cgwalters
Copy link
Copy Markdown
Collaborator

For most work on bootc upgrade or bootc switch, rebuilding the full container image is unnecessary. This adds a fast-path workflow that builds just the bootc binary into a systemd-sysext and overlays it onto /usr in a persistent bcvk VM via virtiofs.

For more info see the updated Justfile.

There's still some TODOs here - e.g. we need to support running the TMT tests this way, etc.

Assisted-by: OpenCode (claude-opus-4-6)

@github-actions github-actions bot added the area/documentation Updates to the documentation label Apr 6, 2026
@bootc-bot bootc-bot bot requested a review from jmarrero April 6, 2026 14:02
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces a high-speed development workflow using systemd-sysext and the bcvk tool, allowing for rapid binary updates within a persistent VM without full RPM rebuilds. The changes include a new Dockerfile stage, just recipes, and a Rust-based management module in xtask. Feedback focuses on removing a leftover dbg! macro, improving the robustness of shell script loops, replacing fragile hardcoded sleeps with retry logic, and correcting the detection logic for secure boot variants. Additionally, it is recommended to return errors from helper functions rather than calling std::process::exit directly.

For most work on `bootc upgrade` or `bootc switch`, rebuilding the
full container image is unnecessary. This adds a fast-path workflow
that builds just the bootc binary into a systemd-sysext and overlays
it onto /usr in a persistent bcvk VM via virtiofs.

For more info see the updated Justfile.

There's still some TODOs here - e.g. we need to support running
the TMT tests this way, etc.

Assisted-by: OpenCode (claude-opus-4-6)
Signed-off-by: Colin Walters <walters@verbum.org>
Copy link
Copy Markdown
Contributor

@jmarrero jmarrero left a comment

Choose a reason for hiding this comment

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

lgtm

@cgwalters cgwalters enabled auto-merge (rebase) April 7, 2026 00:18
@cgwalters cgwalters merged commit f3d2d4e into bootc-dev:main Apr 7, 2026
61 of 65 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/documentation Updates to the documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants