feat: Add bootc support (#448)

Adds support for using `bootc` as the preferred method for booting from
a locally created image. This new method gets rid of the need to create
a tarball and move it to the correct place and instead it will make use
of `podman scp` which copies the image to the root `containers-storage`
and then has `rpm-ostree` and `bootc` boot from that store.

Closes #418 
Closes #200
This commit is contained in:
Gerald Pinder 2025-08-09 14:05:59 -04:00 committed by GitHub
parent 2c525854c9
commit 3a0be4099a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
65 changed files with 2991 additions and 1857 deletions

View file

@ -18,10 +18,13 @@ colored = "2"
comlexr = "1"
indexmap = { version = "2", features = ["serde"] }
indicatif = { version = "0.18", features = ["improved_unicode", "rayon"] }
lazy-regex = "3"
log = "0.4"
miette = "7"
nix = { version = "0.29" }
oci-distribution = { version = "0.11", default-features = false }
pretty_assertions = "1"
regex = "1"
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls"] }
rstest = "0.18"
semver = "1"
@ -78,7 +81,6 @@ jsonschema = "0.30"
open = "5"
os_info = "3"
rayon = "1"
regex = "1"
requestty = { version = "0.5", features = ["macros", "termion"] }
shadow-rs = { version = "1", default-features = false }
thiserror = "2"
@ -94,6 +96,7 @@ indicatif.workspace = true
log.workspace = true
miette = { workspace = true, features = ["fancy"] }
oci-distribution.workspace = true
regex.workspace = true
reqwest.workspace = true
semver.workspace = true
serde.workspace = true
@ -109,6 +112,11 @@ users.workspace = true
# Top level features
default = []
v0_10_0 = [
"bootc"
]
bootc = ["blue-build-process-management/bootc"]
[dev-dependencies]
rusty-hook = "0.11"