Closed rgildein closed 16 hours ago
Thank you for reporting us your feedback!
The internal ticket has been created: https://warthogs.atlassian.net/browse/KF-5961.
This message was autogenerated
One of the options is to get metadata from deployed charm.
async def _get_charm_name(app: Application) -> str:
"""Get charm name for application from metadata.
We are getting from metdata, since locally builded charmas will return
`<charm_name>-<revision>` from `app.charm_name`.
"""
unit = app.units[0]
result = await _run_on_unit(unit, "cat metadata.yaml")
meta = yaml.safe_load(result.results["stdout"])
return meta["name"]
Bug Description
Locally build charms will return
charm_name
as<charm_name>-<revision>
, e.g.seldon-controller-manager-0
. Because of this, theassert_grafana_dashboards
will always fail on this line. e.g.assert "seldon-controller-manager" == "seldon-controller-manager-0"
This issue is due grafana_dashboard lib using name from metadata (as can be seen here) and libjuju getting it from charm url (as can be seen here).
We need to find better way how we will check that template was defined for proper charm.
To Reproduce
Adding this to any charm integrations tests for charm already using grafana_dashboard relation.
Environment
$ juju show-controller | grep version agent-version: 3.4.2 controller-model-version: 3.4.2 $ microk8s version
MicroK8s v1.28.10 revision 6829
Relevant Log Output
Additional Context
No response