Multi-base platform support
Metadata
Current evaluation
Multi-base support shipped in charmcraft#2054 (commit 1ad02d82) via platforms-based recipes; the prototype was not separately polished, but the requested capability was implemented.
Resolution: closed resolved
Reason: Resolved by merged charmcraft#2054, commit 1ad02d82, which added multi-base recipe support through the platforms keyword and platform data handling. The same change addressed the underlying Ubuntu 24.04 multi-base build problem in charmcraft#1789.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
Polish the prototype in [work/CRAFT-3668/multibase-prototype](https://github.com/canonical/charmcraft/tree/work/CRAFT-3668/multibase-prototype) to support multi-base builds as defined in [ST124](https://docs.google.com/document/d/1QVHxZumruKVZ3yJ2C74qWhvs-ye5I9S6avMBDHs2YcQ/edit?tab=t.0).
### Missing work
1. Validate that the newest base is >= `ubuntu@24.04`.
2. Unit tests
3. Spread tests
### Why it needs to get done
To resolve https://github.com/canonical/charmcraft/issues/1789
### Upstream work
- https://github.com/canonical/craft-platforms/issues/73
- https://github.com/canonical/craft-application/issues/569
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Multi-base support shipped in charmcraft#2054 (commit 1ad02d82) via platforms-based recipes; the prototype was not separately polished, but the requested capability was implemented. | |
| stealth/space-bunny-alpha | — | closed superseded | Multi-base support shipped in charmcraft#2054 (commit 1ad02d82); the proposed prototype follow-up was closed without implementation. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without implementation. The multi-base platform support prototype was abandoned due to unmet validation and testing requirements. No resolution or merge occurred. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation. The multi-base prototype remains unpolished, leaving validation, unit tests, and spread tests unaddressed. No resolution occurred; the task was abandoned or deferred to upstream work. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation. The multi-base platform support request was synced to internal Jira tracking (CRAFT-3718) and abandoned without a fix or merge. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without resolution. Development stalled after Jira sync, leaving required tests and validation unimplemented. The work was abandoned. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
canonical/charmcraft#2054
(confidence 100%)
Merged commit 1ad02d82 added multi-base platform recipe support.
-
Related To:
canonical/charmcraft#1789
(confidence 100%)
The underlying Ubuntu 24.04 multi-base build issue was addressed by the same implementation.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2054 feat: support multi-base recipes | charmcraft | merged | PR #2054 by mr-cal merged (commit 1ad02d82), adding multi-base recipe support via the `platforms` keyword, dropping base/build-base from project data and passing it unmodified to craft-platforms (CRAFT-3718). | |
| #81 feat: multi-base support for charm build plans | craft-platforms | merged | Merged PR #81 as commit 519b705, adding multi-base charm build-plan support and fixing #73, with stricter shorthand validation and CraftPlatformsError. | |
| #1789 Unable to build multi-base subordinate charms on 24.04 | charmcraft | closed | Multi-base builds were implemented with platforms-based recipes in merged PR #2054 (commit 1ad02d82), enabling one recipe to build charms for multiple Ubuntu bases. | |
| #861 No support for paralell builds for multi-base charms | charmcraft | open | Enhancement request (triaged) to let `charmcraft pack` build the bases/platforms of a multi-base charm in parallel; still unimplemented, scoped upstream to the whole craft ecosystem (CHARMCRAFT-655). | |
| #1535 Implement platforms for charmcraft | charmcraft | closed | Implemented ST105-style platforms for charm builds in merged PR #1554, commit e3de0a46, completing the requested platform support. | |
| #73 Add multi-bases support for charm build plans | craft-platforms | closed | Multi-base charm build-plan support was merged in PR #81 (commit 519b705), with validation tightening and error-handling updates; it resolved #73. | |
| #2620 Multi-base shorthand notation fail on v4.2.0 | charmcraft | closed | Multi-base shorthand validation in Charmcraft 4.2.0 was fixed by merged PR #2646 (commit 9dbd59a6), which updated craft-platforms and added regression coverage. | |
| #2080 docs: add platforms reference and how-to | charmcraft | merged | Merged in canonical/charmcraft#2080 (142fa827), adding platforms reference/how-to docs for bases, architectures and multi-base support; fixes #2009. | |
| #598 feat: allow for multi-base builds | craft-application | merged | Merged as d81c39a7; allowed bases in platform entries so applications can implement multi-base build plans, fixing #569 (CRAFT-3719). | |
| #453 Spec a multi-base strategy | craft-application | closed | Multi-base support was specified in ST124; PR #598 (d81c39a7) added multi-base build plans and shipped in craft-application 4.7.0. |