Skip to content

chore: release 2.1.1 — provision.files for extra helper scripts#27

Merged
mobileoverlord merged 4 commits into
mainfrom
rel/2.1.1
May 6, 2026
Merged

chore: release 2.1.1 — provision.files for extra helper scripts#27
mobileoverlord merged 4 commits into
mainfrom
rel/2.1.1

Conversation

@mobileoverlord
Copy link
Copy Markdown
Contributor

Summary

  • Patch release adding provision.files to the manifest schema for extra helper scripts copied alongside provision profile scripts (cherry-pick of e0182e9 from jschneck/rpi-tryboot).
  • Pre-existing rustfmt + clippy drift fixed so CI's check steps pass.
  • Cargo bump 2.1.0 → 2.1.1.

provision.files lets BSPs whose provision scripts source shared bash helpers — build-disk-image.sh on stm32mp25-dk / rzv2n-sr-som / orangepi-5-plus, stone-{device,tryboot,mbr,rpiboot}-common.sh on RPi — declare those helpers so stone create and stone bundle copy them into the runtime stone dir alongside the named profile script. Without this, the helpers landed in DEPLOY_DIR_IMAGE but never reached the runtime dir, and provisioning failed with ${SCRIPT_DIR}/build-disk-image.sh: No such file or directory.

Branch shape

7c46ad4 chore: bump version to 2.1.1
2bdd20b style: rustfmt + clippy cleanup
e846212 feat: add provision.files for extra scripts alongside profile scripts
495f3fa feat: add --overlay flag for manifest config overlays  ← already on main
a46f79d chore: bump version to 2.1.0                            ← rel/2.1.0 base

The middle commit is the cherry-pick. The style: commit is decoupled — it cleans up rustfmt + clippy drift introduced by the --overlay work that snuck past CI somewhere. Worth backporting to main independently of this release.

Test plan

  • cargo check --locked
  • cargo fmt --check
  • cargo build --locked
  • cargo test --locked (138 tests, all green)
  • cargo clippy --all-targets --all-features --locked -- -D warnings
  • Bump meta-avocado-distro/recipes-devtools/stone/stone_2.1.0.bbstone_2.1.1.bb in avocado-os and rebuild SDK; confirm build-disk-image.sh lands in the runtime stone dir for stm32mp25-dk / rzv2n-sr-som / orangepi-5-plus and avocado provision succeeds.

Allow users to specify partial JSON overlay files that get deep-merged
onto the base manifest, enabling per-platform or per-customer
customization without duplicating entire manifests. Overlays are applied
left-to-right (last wins) and support name-based merging for arrays of
named objects (e.g. partitions), so a single partition can be modified
without respecifying the entire layout.
Add an optional `files` array to the provision section that lists extra
files to copy alongside provision profile scripts. This allows shared
helper libraries (e.g., stone-tryboot-common.sh, stone-rpiboot-common.sh)
to be included in the stone output without being referenced as profile
scripts themselves.

Both `stone create` and `stone bundle` now copy these files from input
directories to the output alongside the profile scripts.
Pre-existing formatting + lint drift in `--overlay` plumbing
(commit 495f3fa) that slipped past `cargo fmt --check` and
`cargo clippy -- -D warnings` somewhere in the merge train. Brings
the tree back to clean rustfmt + clippy so CI's check steps pass on
rel/2.1.1.

- src/manifest.rs / src/commands/stone/bundle.rs: rustfmt fixups.
- src/manifest.rs: replace `&[overlay_path.clone()]` with
  `std::slice::from_ref(&overlay_path)` for clippy's
  cloned_ref_to_slice_refs lint.
Patch release adding `provision.files` to the manifest schema for
extra helper scripts copied alongside provision profile scripts.

Picks up:
  e0182e9 feat: add provision.files for extra scripts alongside profile scripts

on top of rel/2.1.0 (a46f79d) plus the previously merged:
  495f3fa feat: add --overlay flag for manifest config overlays

Used by avocado-os BSPs whose provision scripts source shared bash
helpers (build-disk-image.sh on stm32mp25-dk / rzv2n-sr-som /
orangepi-5-plus, stone-{device,tryboot,mbr,rpiboot}-common.sh on RPi)
that previously had no path into the runtime stone dir.
mobileoverlord added a commit to avocado-linux/meta-avocado that referenced this pull request May 6, 2026
Pull in stone v2.1.1 which adds the `provision.files` manifest field
that copies extra helper scripts into the runtime stone dir alongside
provision profile scripts. Required by BSPs whose provision scripts
source shared bash helpers (build-disk-image.sh on stm32mp25-dk /
rzv2n-sr-som / orangepi-5-plus).

Without this, the helpers landed in DEPLOY_DIR_IMAGE but never reached
the runtime dir, so \${SCRIPT_DIR}/build-disk-image.sh in the profile
scripts resolved to a missing file.

Upstream: avocado-linux/stone#27
@mobileoverlord mobileoverlord merged commit 7c46ad4 into main May 6, 2026
4 checks passed
@mobileoverlord mobileoverlord deleted the rel/2.1.1 branch May 6, 2026 14:35
mobileoverlord added a commit to avocado-linux/meta-avocado that referenced this pull request May 21, 2026
Pull in stone v2.1.1 which adds the `provision.files` manifest field
that copies extra helper scripts into the runtime stone dir alongside
provision profile scripts. Required by BSPs whose provision scripts
source shared bash helpers (build-disk-image.sh on stm32mp25-dk /
rzv2n-sr-som / orangepi-5-plus).

Without this, the helpers landed in DEPLOY_DIR_IMAGE but never reached
the runtime dir, so \${SCRIPT_DIR}/build-disk-image.sh in the profile
scripts resolved to a missing file.

Upstream: avocado-linux/stone#27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant