providers: move mount logic to lifecycle.py
Metadata
Current evaluation
Merged PR #3930 as commit 1c3a7eb92, moving Snapcraft-specific directory-mount calls from providers into parts/lifecycle.py for CRAFT-1397.
Resolution: closed resolved
Reason: PR #3930 was merged into main as commit 1c3a7eb92. The change relocated the mount logic and reduced the provider implementation by 130 lines while adding 34 lines.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [X] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [X] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [X] Have you successfully run `make lint`?
- [X] Have you successfully run `pytest tests/unit`?
-----
Moves the snapcraft-specific calls for mounting directories to `parts/lifecycle.py`.
Similar to https://github.com/canonical/rockcraft/pull/82
(CRAFT-1397)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #3930 as commit 1c3a7eb92, moving Snapcraft-specific directory-mount calls from providers into parts/lifecycle.py for CRAFT-1397. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #3930, moving Snapcraft-specific directory-mount calls into parts/lifecycle.py and deleting the provider-specific implementation. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged refactoring that relocates snapcraft-specific mount logic to parts/lifecycle.py. Approved after review, passed CI, and achieved 100% diff coverage with a 0.03% overall coverage increase. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged relocation of snapcraft-specific directory mounting logic to parts/lifecycle.py, aligning with rockcraft. The change increased overall test coverage by 0.03% with 100% diff coverage. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/rockcraft#82
(confidence 90%)
Rockcraft PR #82 was cited as the analogous refactor.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #82 providers: move mount logic to lifecycle.py | rockcraft | merged | Merged in commit f7ca0731 via #82, moving Rockcraft-specific project-directory mounting from craft-providers to lifecycle.py (CRAFT-1381). | |
| #3940 providers: move `get_provider()` to providers.py | snapcraft | merged | Merged PR #3940 by mr-cal moved get_provider() into snapcraft/providers.py (squash commit 2acdd89b6), a CRAFT-1409 refactor mirroring canonical/rockcraft#92, part of a series of provider/lifecycle function moves. |