providers: add `create_environment` method
Metadata
Current evaluation
Merged PR #95 as commit 00b557bf, adding Provider.create_environment() for project-environment cleanup.
Resolution: closed resolved
Reason: The approved pull request was merged into Rockcraft as commit 00b557bf, introducing the new provider create_environment() method and corresponding implementations and tests.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [X] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
Add the `create_environment()` method, which will be used by `clean_project_environment()`.
A duplicate of [snapcraft](https://github.com/snapcore/snapcraft/blob/c3d4c8999f2091592d4ebbca8e35198880bb89c6/snapcraft/providers/_provider.py#L168) and [charmcraft](https://github.com/canonical/charmcraft/blob/b22fcdba3b894004468abfbf45caa54d93fbf7d0/charmcraft/providers/_provider.py#L169).
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #95 as commit 00b557bf, adding Provider.create_environment() for project-environment cleanup. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged Rockcraft PR #95 (commit 00b557bf), adding providers' create_environment() method for use by clean_project_environment(). | |
| qwen/qwen3.6-35b-a3b | — | — | Merged the addition of a create_environment method to the providers module. The method supports clean_project_environment and aligns with snapcraft and charmcraft implementations. Approved by one reviewer and passed CI checks. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged the addition of the create_environment method to the providers module, aligning with snapcraft and charmcraft implementations. The method supports clean_project_environment and was authored by maintainer mr-cal. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/rockcraft#108
(confidence 96%)
Follow-up PR implemented rockcraft clean support using the provider environment functionality.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3929 providers: refactor clean_project_environments | snapcraft | merged | Merged PR #3929 as commit 19343788, removing get_instance_name() from clean_project_environments() and renaming is_provider_available() to is_provider_installed(). | |
| #410 providers: introduce clean_project_environments() (CRAFT-314) | charmcraft | merged | Merged #410 via 91207ad4, adding clean_project_environments() in 4aa71880 to remove all project environments and support the upcoming clean command. |