providers: move mount logic to lifecycle.py
Metadata
Current evaluation
Merged. Moved project directory mount logic from craft-providers to rockcraft's lifecycle.py, as it is rockcraft-specific. Approved, passed CI, and modified six files with a net reduction of 13 lines.
Suggested action: —
No scores available.
Issue body
- [X] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
Mounting the project directory is a rockcraft-specific step, so it is moved out of the craft-providers interface.
Blocked by https://github.com/canonical/craft-providers/pull/154
(CRAFT-1381)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged. Moved project directory mount logic from craft-providers to rockcraft's lifecycle.py, as it is rockcraft-specific. Approved, passed CI, and modified six files with a net reduction of 13 lines. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Moved rockcraft-specific project directory mount logic from the craft-providers interface to lifecycle.py, fulfilling the dependency on craft-providers PR #154. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Moved project directory mount logic from the craft-providers interface to lifecycle.py, as it is rockcraft-specific. The change was previously blocked by craft-providers PR #154. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3930 providers: move mount logic to lifecycle.py | snapcraft | merged | 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. | |
| #110 providers: move lxd project name out of craft-providers interface | rockcraft | merged | Merged refactoring that moves rockcraft's project name from lxd.py to providers.py in the craft-providers interface. Approved by one reviewer, passed CI, and successfully integrated. | |
| #80 providers: move `get_instance_name()` call to lifecycle.py | rockcraft | merged | Merged. Moved the rockcraft-specific get_instance_name() call from provider classes to lifecycle.py to separate application-specific logic. Approved by reviewer, CI passed, spanning 6 files with 57 additions and 34 deletions. | |
| #91 providers: move `confirm_with_user()` call to providers.py | rockcraft | merged | Merged after approval and passing CI. Moved the rockcraft-specific confirm_with_user logic out of the craft-providers interface into providers.py. Renamed is_provider_available to is_provider_installed across ten files. | |
| #3940 providers: move `get_provider()` to providers.py | snapcraft | merged | Merged the refactoring that moves get_provider() to providers.py. Aligned with rockcraft, the change passed code review and CI checks, modified 7 files, and was successfully integrated into main. |