← Back to issue list

Multiple files for packing a bundle is confusing

View original Github issue

Metadata

Project
charmcraft
Number
#373
Type
issue
State
closed
Author
knkski
Labels
Created
Updated
Closed

Current evaluation

Request to merge bundle.yaml into charmcraft.yaml was rejected. bundle.yaml is legacy and being replaced by stacks. charmcraft.yaml remains strictly for build-time definitions. Users should construct bundles using the parts syntax with the bundle plugin instead.

Suggested action:

No scores available.

Issue body

Right now, if I want to upload a bundle to charmhub.io, I have to take a `bundle.yaml` file, add a `name` field (that's currently undocumented, see https://bugs.launchpad.net/juju/+bug/1931140), and then also create a separate `charmcraft.yaml` file that contains only the string `type: bundle`. It's kind of awkward and confusing to have those be two separate files. I understand that we'll want `charmcraft.yaml` going forward as an analogue to `snapcraft.yaml`, and it will contain arbitrary build steps. So we don't want to get rid of `charmcraft.yaml`. However, would it be possible to have the contents of `bundle.yaml` contained in `charmcraft.yaml`? That would eliminate the extra file.

Evaluation history

Date Model Scores Action Summary
qwen3.6-35b-a3b-mtp-q6 Request to merge bundle.yaml into charmcraft.yaml was rejected. bundle.yaml is legacy and being replaced by stacks. charmcraft.yaml remains strictly for build-time definitions. Users should construct bundles using the parts syntax with the bundle plugin instead.
qwen/qwen3.6-35b-a3b Rejected. bundle.yaml is legacy and being replaced by stacks. charmcraft.yaml handles build definitions, not metadata. Users should construct bundles using the parts syntax with the bundle plugin instead of merging files.
qwen/qwen3.6-35b-a3b Rejected. bundle.yaml is legacy and being replaced by stacks. charmcraft.yaml handles build definitions. Bundles are now constructed using the parts syntax within charmcraft.yaml, eliminating the need for a separate metadata file.
qwen/qwen3.6-35b-a3b Merging bundle.yaml into charmcraft.yaml was rejected. bundle.yaml is a legacy format being replaced by stacks. charmcraft.yaml handles build definitions separately, and bundles are now constructed using parts syntax with the bundle plugin.
qwen3.6-35b-a3b-mtp-q6 Rejected. bundle.yaml is legacy and will be replaced by stacks. charmcraft.yaml remains separate for build definitions. Bundles can instead be constructed using the parts syntax.
qwen3.6-35b-a3b-mtp-q6 Merging bundle.yaml into charmcraft.yaml was rejected. bundle.yaml is legacy and will be replaced by stacks. charmcraft.yaml remains separate for build definitions. Users can construct bundles using the parts syntax with the bundle plugin instead.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#2341 Packing a bundle produces a zip that is rejected by charmhub charmcraft open charmcraft 3.x pack produces a bundle zip with metadata.yaml instead of bundle.yaml, so charmcraft upload is rejected by charmhub. A maintainer asked for the charmcraft.yaml on 2025-06-27; no further activity since.
76%
#374 Handling multiple bundles in one repo charmcraft closed Closed without a code fix. Maintainers recommended using separate subdirectories with individual charmcraft.yaml files for each bundle as a workaround to support multiple bundles in a single repository.
71%