`charmcraft` should allow setting versions for `juju status`
Metadata
Current evaluation
Closed as multiple topics were addressed separately. Version file generation is tracked in issue #37, while file inclusion uses parts.charm.prime in charmcraft.yaml. The development workflow documentation update was opened as issue #695. No direct fix implemented here.
Suggested action: —
No scores available.
Issue body
I went diving into the source again, and `charmcraft` is carefully whitelisting files in `charmcraft/commands/build.py`. This makes creating a `version` file from git during build time (but before `.jujuignore` is processed) impractical, since it would not be present at build time.
`charmcraft pack` should result in a meaningful version in `juju status`. It would be great if `juju` did this on its own, or Operator Framework handled `set_workload_version` automagically, but we can cross that bridge...
We'd also love to have a way to keep a manifest generated from `pip freeze` assuming there's requirements, but pretty much the same scenario
------------------------
As an aside, it would be great to have `CONTRIBUTING.md` updated again. The default doesn't appear to have any effect, and it required me to set `CHARMCRAFT_MANAGED_MODE=1`, then run with sudo, since otherwise the lxd container didn't run from the checked-out source.
If this is expected behavior, please document it. If there's a good way to inject this into the LXD/multipass providers, please document it.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed as multiple topics were addressed separately. Version file generation is tracked in issue #37, while file inclusion uses parts.charm.prime in charmcraft.yaml. The development workflow documentation update was opened as issue #695. No direct fix implemented here. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as it covered multiple unrelated topics. The version file request was deferred to issue #37, the pip freeze manifest request was marked out of scope, and the development workflow documentation gap was tracked in issue #695. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed and superseded by other issues. Version auto-generation is tracked in #37, custom file inclusion uses charmcraft.yaml, and development workflow docs were updated in PR #695. The manifest request was deemed unrelated. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed as multiple topics. Version generation is tracked in issue #37, file inclusion uses charmcraft.yaml, and documentation updates were addressed in issue #695. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1790 Set a charm version from `charmcraft.yaml` | charmcraft | open | Feature request to accept a version field in charmcraft.yaml and store it in the output charm. Open 755 days with no comments or labels; blocked on design decisions about where Juju should read the version from. | |
| #1263 `charmcraft upload` should be able to take several `*.charm` files at once | charmcraft | closed | Closed as working as designed. Clarification confirmed that uploading separate charm files for different bases and releasing them to the same channel is the intended workflow. Juju automatically selects the correct revision, making a multi-file upload feature unnecessary. |