feat(overlay): plugins can define overlay commands
Metadata
Current evaluation
Merged as commit 73d6a988, enabling plugin-defined overlay-chroot commands that users can replace or wrap via override-overlay.
Resolution: closed resolved
Reason: PR #1567 was approved and merged as commit 73d6a988. It added plugin overlay commands, override-overlay wrapping and replacement through craftctl default, and conflict validation with overlay-script.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Allow plugins to define overlay commands that run inside of the overlay
chroot. If the user adds an `override-overlay`, they can replace those
commands, or they can wrap them and let `craftctl default` signal where
the plugin's original commands would run.
Unlike other steps, only `craftctl default` is accepted in `override-overlay`.
This is not a regression because previously the `craftctl` command couldn't
be used in an override-overlay scriptlet at all.
In addition to `overlay-script` being mutually exclusive with `override-overlay`,
`overlay-script` is now also mutually exclusive with the plugin offering overlay
commands.
- [ ] Have you followed the guidelines for contributing?
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [ ] Have you successfully run `make lint && make test`?
- [ ] Have you added an entry to the changelog (`docs/reference/changelog.rst`)?
---
CRAFT-5027
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged as commit 73d6a988, enabling plugin-defined overlay-chroot commands that users can replace or wrap via override-overlay. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1567 in commit 73d6a988, enabling plugin-defined overlay commands and override-overlay handling in the overlay chroot. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged PR enabling plugins to define overlay commands that execute inside the overlay chroot. Introduces override-overlay support with craftctl default signaling, mutually exclusive with overlay-script. Resolves CRAFT-5027. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/craft-parts#1579
(confidence 90%)
Follow-up PR #1579 added dirty tracking for override-overlay scriptlet changes.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1472 feat: add override-overlay | craft-parts | merged | Merged #1472 (43dc8484), adding override-overlay scriptlets that run during the overlay step in a chroot, with validation and tests. | |
| #134 overlay: add overlay package install (CRAFT-81) | craft-parts | merged | Merged in commit 041af872, adding chrooted overlay package installation on each declaring part's upper layer so maintainer scripts run and package databases stay correct. | |
| #1415 feat: add override-overlay | craft-parts | merged | Merged override-overlay support via #1472 (43dc8484), adding chrooted scriptlets, validation, mounts, hashing, and tests; docs followed in #1473 for 2.30.0. |