Open theoctober19th opened 2 months ago
Currently, unified charmcraft.yaml is not supported
This is partially by design—in order to make CI more reusable across data platform repositories, data-platform-workflows sometimes enforces/recommends a particular approach & does not support all possible approaches
However, some workflows (e.g. build_charm.yaml and release_charm.yaml) are aimed to be somewhat unopinionated & reusable across other charming teams at Canonical
For now, my recommendation would be to use a separate metadata.yaml, actions.yaml, and config.yaml for data platform charms
And we'll add this request to the backlog as non-urgent (feature request instead of bug report)
Do you have a particular need for unified charmcraft.yaml? If so, we can prioritize this higher
@theoctober19th does that sound good to you?
I faced this while releasing the Apache Kyuubi charm. I believe the enchancement can be done in a backward-compatible way such that charmcraft.yaml is looked only when metadata.yaml file is not found. However, this is not something that is urgent to me and I am happy to refactor charmcraft.yaml
into multiple files and move forward :)
In the newer charm SDK versions, it is possible to merge yaml files like
metadata.yaml
,actions.yaml
, etc. to a singlecharmcraft.yaml
file. However, if a charm uses singlecharmcraft.yaml
pattern, the release is blocked because the release workflow logic tries to look formetadata.yaml
file which does not exist in the first place.Here is the line which contains that logic: https://github.com/canonical/data-platform-workflows/blob/main/python/cli/data_platform_workflows_cli/craft_tools/release.py#L160C37-L160C46
Expected behavior: The release should work fine even on using a single charmcraft.yaml file for all metadata (maybe it can use charmcraft.yaml first and then metadata.yaml as a fallback or the other way around).
Logs from Actions: