providers: move `get_provider()` to providers.py
Metadata
Current evaluation
Merged charmcraft#898, moving get_provider() into providers.py for CRAFT-1410 after prerequisite charmcraft#896 landed.
Resolution: closed resolved
Reason: charmcraft#898 was approved and merged, completing the provider-module refactor after its blocker, charmcraft#896, merged.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Move `get_provider()` to `providers.py`
Blocked by https://github.com/canonical/charmcraft/pull/896.
(CRAFT-1410)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged charmcraft#898, moving get_provider() into providers.py for CRAFT-1410 after prerequisite charmcraft#896 landed. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged charmcraft#898 moved get_provider() to providers.py for CRAFT-1410 after blocker charmcraft#896 landed. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged after approval. Moved the get_provider() function to providers.py as part of CRAFT-1410. The refactoring touched 10 files, adding 178 lines and removing 226, and was previously blocked by PR 896. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged after being unblocked by PR #896. The get_provider() function was relocated to providers.py, resolving CRAFT-1410. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/charmcraft#896
(confidence 100%)
Direct prerequisite that moved is_base_available() before #898.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #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. | |
| #92 providers: refactor get_provider() | rockcraft | merged | Merged PR #92 as commit 5bcc1c80, refactoring get_provider() and moving it from _get_provider.py to providers.py for CRAFT-1375. | |
| #896 providers: move `is_base_available()` to providers.py | charmcraft | merged | Merged PR #896 (4ab422f8), moving is_base_available() from craft-providers into Charmcraft's providers.py to keep Charmcraft-specific logic outside the shared interface. | |
| #899 providers: use new craft-providers interface | charmcraft | merged | Merged PR #899 (merge commit 538aec31, implementation 5e5acb7c): removed Charmcraft's own Provider/LXDProvider/MultipassProvider classes in favour of craft-providers', and moved charmcraft/providers/providers.py to charmcraft/providers.py. Resolves CRAFT-1279. | |
| #3926 providers: move `get_instance_name()` to providers.py | snapcraft | merged | Merged as commit c1246cbe3 (+82/-45, 6 files): moved the snapcraft-specific get_instance_name() out of craft-providers into snapcraft/providers/providers.py (CRAFT-1305 prep for the new craft-providers API). | |
| #484 providers: refactor to better support multiple providers (CRAFT-362) | charmcraft | merged | Merged PR #484 (commit 93982f90, merge 7a1f50fc) by cjp256 converted providers module into a package for CRAFT-362: added common Provider class, LXDProvider subclass and get_provider(); follow-ups moved get_provider() to providers.py and renamed _helpers to _logs. | |
| #91 providers: move `confirm_with_user()` call to providers.py | rockcraft | merged | Merged PR #91 as b189a224, moving Rockcraft-specific confirm_with_user() into providers.py and renaming is_provider_available() to is_provider_installed(). | |
| #120 providers: use new craft-providers interface | rockcraft | merged | Merged as 3f887b70: replaced Rockcraft's local provider classes with craft-providers and moved providers.py. | |
| #75 providers: move get_command_environment() to providers.py | rockcraft | merged | Merged PR #75 (d81ce59d) relocated Rockcraft-specific get_command_environment() to providers.py for CRAFT-1353. | |
| #74 providers: move get_instance_name() to providers.py | rockcraft | merged | Merged in canonical/rockcraft#74 (c5423c5a), moving Rockcraft-specific get_instance_name() into providers.py for CRAFT-1350. |