many: add overlay step (CRAFT-84)
Metadata
Current evaluation
Merged craft-parts#137 as commit 1a813210, adding the overlay lifecycle step and subsystem support for package installation and filesystem mutations.
Resolution: closed resolved
Reason: The approved PR was merged into the project as commit 1a813210, completing the CRAFT-84 overlay-step integration across steps, state, sequencing, execution, and part handling.
Evaluated by: mr-cal-bot
No scores available.
Issue body
The overlay step is used to process filesystem mutations defined for
each part. It can include package installation, modification of existing
file data or metadata, file renaming or removal, etc.
**Note to reviewers:** this change is rather large because many subsystems
need to be updated to handle the new step, and tests need to be updated to
account for the actions corresponding to step changes. Additional integration
tests will be added after the outdated overlay verification tests land, covering
the usage scenarios described in the feature specification.
Signed-off-by: Claudio Matsuoka <claudio.matsuoka@canonical.com>
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged craft-parts#137 as commit 1a813210, adding the overlay lifecycle step and subsystem support for package installation and filesystem mutations. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #137 (commit 1a813210), adding the overlay step for per-part package installation and filesystem data, metadata, rename, and removal mutations. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged. Adds an overlay step to process filesystem mutations like package installation and file modifications across parts. Updates multiple subsystems and tests, approved by a reviewer, passed CI, and maintains fast execution. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged the overlay step to process filesystem mutations like package installation, file modifications, and removals. The change updated multiple subsystems and tests, with execution performance confirmed as fast. |
Update history
No update history recorded yet.
Related work
-
Related To:
craft-parts#135
(confidence 94%)
Earlier merged PR b7527d5b added executor support for mounting the overlay stack required by this lifecycle step.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #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. | |
| #135 executor: add overlay step handling (CRAFT-86) | craft-parts | merged | Merged PR #135 via b7527d5b, adding overlay-step execution handling that mounts the overlay stack during builds. | |
| #113 overlay: add overlay support to parts (CRAFT-470) | craft-parts | merged | Merged #113 via commit 2d90e608, adding overlay work-directory definitions, overlay subdirectory properties, and detection of overlay parameters and visibility for CRAFT-470. | |
| #127 overlay: add overlay manager mount operations (CRAFT-80) | craft-parts | merged | Merged #127 via commit 95f19f73 (merge c984efb8), adding overlay-manager mount operations; package installation was deferred to a separate change. | |
| #1611 Extra part triggering stage step before overlay step | craft-parts | closed | Fixed in canonical/craft-parts#1618 (18239b07): overlay-organized parts now build and organize before dependency staging, preventing fstab content from being missed. | |
| #4948 docs: exclude overlay step, bump craft-parts to 1.34.0 | snapcraft | merged | Merged in canonical/snapcraft#4948, fixing the docs build by excluding overlay-step docs and bumping craft-parts to 1.34.0 (f57f7e0c0, de13316cb). | |
| #147 executor: update overlay package list (CRAFT-581) | craft-parts | merged | Merged #147 updates overlay package lists before lifecycle execution when overlays are enabled; implementation landed in 16fd4159 and merge 2a53bd01. | |
| #119 overlay: add overlay hash to build and stage states (CRAFT-489) | craft-parts | merged | Merged PR #119 for CRAFT-489, adding overlay hashes to build and stage states so overlay-dependent steps are correctly invalidated; merge commit af08815b. | |
| #795 docs: add labels for overlay step | craft-parts | merged | Merged in canonical/craft-parts#795 via commit 63145713, adding labels so overlay-step references remain valid when explanation pages are excluded. | |
| #111 overlay: add overlayfs helpers (CRAFT-462) | craft-parts | merged | Merged PR #111 via commit 7424a039, adding OverlayFS mount/unmount helpers and detection for special files and directories used in filesystem layering. |