Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow devel in multi-base builds #85

Open
mr-cal opened this issue Dec 19, 2024 · 1 comment
Open

Allow devel in multi-base builds #85

mr-cal opened this issue Dec 19, 2024 · 1 comment

Comments

@mr-cal
Copy link
Contributor

mr-cal commented Dec 19, 2024

The charm build planner can't use devel build bases for multi-base builds.

One option would be to allow definitions like:

platforms:
  plucky:
    build-on: [devel:amd64]
    build-for: [[email protected]:amd64]
lengau pushed a commit to canonical/charmcraft that referenced this issue Dec 19, 2024
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:
  [email protected]:amd64:
  [email protected]:amd64:
```

Or they can be defined in standard form:
```yaml
platforms:
  jammy:
    build-on: [[email protected]:amd64]
    build-for: [[email protected]:amd64]
  noble:
    build-on: [[email protected]:amd64]
    build-for: [[email protected]:amd64]
```


Fixes #1789 
Fixes #2008 
Creates canonical/craft-platforms#85
Found during implementation canonical/craft-platforms#80
(CRAFT-3718)
@lengau
Copy link
Contributor

lengau commented Jan 22, 2025

I think it makes sense to only allow devel in the build-on. However, for most build planners we should also support ubuntu@devel (making devel a synonym for that), as we may also want to allow, for example, opensuse@devel.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants