You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds support for multi-base recipes with the `platforms` keyword.
Internally, this moves to a new practice where the application stops modifying project data before passing the it to craft-platforms. This will ensure consistent processing by charmcraft and by launchpad.
Documentation is coming soon via canonical/craft-platforms#75 and #2009.
To summarize the usage, `base` and `build-base` are removed from the project and the base is encoded into the platform.
Platforms can be defined in a shorthand notation:
```yaml
platforms:
ubuntu@22.04:amd64:
ubuntu@24.04:amd64:
```
Or they can be defined in standard form:
```yaml
platforms:
jammy:
build-on: [ubuntu@22.04:amd64]
build-for: [ubuntu@22.04:amd64]
noble:
build-on: [ubuntu@24.04:amd64]
build-for: [ubuntu@24.04:amd64]
```
Fixes#1789Fixes#2008
Creates canonical/craft-platforms#85
Found during implementation canonical/craft-platforms#80
(CRAFT-3718)
What needs to get done
Add reference and how-to documentation for build plans, bases, platforms, and multi-base builds.
The craft-platforms reference and explanation for charm build plans from canonical/craft-platforms#75 can be imported.
Snapcraft's documentation may serve as a useful starting point (ref, exp, how-to), although it conflates reference and explanation.
Why it needs to get done
To enable charm developers to build charms using the
platforms
key.The text was updated successfully, but these errors were encountered: