providers: introduce charmcraft base configuration (CRAFT-261)
Metadata
Current evaluation
Merged in charmcraft#402 via 481525e5, adding craft-providers and a Charmcraft buildd configuration that installs pip, setuptools, and injects the host Charmcraft snap.
Resolution: closed resolved
Reason: PR #402 was approved and merged into main as 16461f12, with implementation commit 481525e5. It introduced the requested Charmcraft buildd base configuration and dependency.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- Add craft-providers dependency (version will be updated in
future work) to project & snap.
- Add CharmcraftBuilddBaseConfiguration which extends the buildd
image configuration with the setup code to:
- install python3-pip
- install python3-setuptools (required explicitly for 18.04)
- install the Charmcraft snap by injecting the host's, which
should be OK as the snap is currently required. Future work
could extend this to add a fallback to install from store using
snap_installer.install_from_store(). Note that this injection
is unconditional, future work will add a check to see if the
injection is necessary prior to doing it (that is, don't inject
if reusing an instance that has the correct version already).
Signed-off-by: Chris Patterson <chris.patterson@canonical.com>
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged in charmcraft#402 via 481525e5, adding craft-providers and a Charmcraft buildd configuration that installs pip, setuptools, and injects the host Charmcraft snap. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged as commit 481525e5 (merge 16461f12) into master: added craft-providers dep and CharmcraftBuilddBaseConfiguration, extending buildd with python3-pip/setuptools install and host Charmcraft snap injection (CRAFT-261). | |
| stealth/space-bunny-alpha | — | closed resolved | Merged as canonical/charmcraft#402 (481525e5), adding craft-providers and buildd setup for python3-pip, python3-setuptools, and injection of the host Charmcraft snap. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged after approval and passing CI. Adds CharmcraftBuilddBaseConfiguration to extend buildd image setup with python3-pip, python3-setuptools, and Charmcraft snap injection for provider environments. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged by cjp256. Introduces CharmcraftBuilddBaseConfiguration to extend build environments with Python dependencies and Charmcraft snap injection. Adds craft-providers dependency to project and snap. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #522 providers: add support to install Charmcraft snap from store (CRAFT-502) | charmcraft | merged | Merged PR #522 added Snap Store installation for non-Linux targets and Linux opt-in via CHARMCRAFT_INSTALL_SNAP_CHANNEL, with channel selection and Windows test support. | |
| #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. | |
| #891 (internal) Install snap via craft-providers API (CRAFT-1277) | charmcraft | merged | Merged PR #891 as commit 456601ff, switching Charmcraft snap installation to the craft-providers API and completing CRAFT-1277. | |
| #2069 build(deps): update craft-application and craft-providers | charmcraft | merged | Merged in charmcraft#2069 (f65ecc0e), updating craft-application and craft-providers to isolate build environments per platform, fixing #2058 and speeding multi-base builds. | |
| #411 build: pack charm in provided environment when using bases (CRAFT-313) | charmcraft | merged | Merged PR #411 (CRAFT-313) to pack each viable bases configuration in its provided build environment; merge commit 523c6fb0. | |
| #438 commands/build: output charms to cwd when using provider (CRAFT-359) | charmcraft | merged | Merged in canonical/charmcraft#438 via f73def1c, fixing provider builds to output charms in the current project directory and retrieve builds targeted outside it. |