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

local_overlay support for charmcraft built charms #579

Open
freyes opened this issue Oct 4, 2022 · 2 comments
Open

local_overlay support for charmcraft built charms #579

freyes opened this issue Oct 4, 2022 · 2 comments

Comments

@freyes
Copy link
Member

freyes commented Oct 4, 2022

Charms that define multiple bases can produce multiple output files with long names (e.g. octavia_ubuntu-20.04_ubuntu-22.04.charm), this makes more time consuming to have the testing bundles right, but also you have to keep them updated as bases get dropped and added to enable new ubuntu series.

It would be nice if the local_overlay flag could programmatically detect what's the right charm for a bundle, it would be necessary to read the series key in the bundle, at the top level and at the application level, e.g:

series: jammy
applications:
  keystone:
    charm: ch:keystone
    series: jammy

^ in this case the overlay generated should look something like this:

applications:
  keystone:
    charm: "../../keystone_ubuntu-22.04-amd64_ubuntu-22.10-amd64.charm
@ajkavanagh
Copy link
Collaborator

I like the general direction of this idea, and I'd like to add a suggestion.

Rather than have zaza "guess" which is the right charm, why not change the charm: keyword into something that is explicit about needing to be changed. This would allow multiple charms to be 'overlay-ed' as required.

I'm not sure what the best format would be, but maybe something like: charm: "overlay(charm=keystone, arch=$arch, base_in=22.04)" which would also the overlay bit to be matched, and then the other parts to be matched against various charms available.

I'm suggesting that $arch be 'set' by zaza to amd64 (the default) but in time grow to work against other arches, and that, say, "overlay(charm=keystone, base_in=22.04)" would default to am64.

@freyes
Copy link
Member Author

freyes commented Oct 21, 2022 via email

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

No branches or pull requests

2 participants