Commit 43b9dc90 added the grafana lib which has cosl and
pydantic dependencies. This change adds those deps to
the requirements file.
Signed-off-by: Liam Young <firstname.lastname@example.org>
Implement ceilometer-service requires part of the relation.
Configure snap-openstack-hypervsor config parameters
telemetry.enable and telemetry.publisher-secret when the
relation is joined/changed.
Configure telemetry.enable to False when ceilometer-service
relation is removed.
Currently, setting boolean config with `Snap.set` will result in setting
the snap config to a string of `true` or `false`, and the openstack
hypervisor snap will read those configs as string as well. This makes
the condition checking in openstack-hypervisor snap behaves incorrectly
. This PR is to update the snap library will proper typing support.
- Update snap library
- Fix the data types used in `Snap.set()`
In some cases, the netifaces does not properly detect the default
gateway for the node and returns an empty dict. However, there is
a default gateway actually set. This adds a fallback path to parse
the contents of the /proc/net/route table and determine which
interface to use based on which flags are set on the routes.
The build time is very long because of PIP having to fetch and build
native components of the libraries. This change show a possible way to
bypass this issue. This has implication regarding the platform it's
running on. In this case, we know the charm is going to be run on a
operator_libs_linux/v1/snap could not handle revisions as strings, which
would make deployment fail when using local revisions of any snap (x1,
x2,...) on the target machine.
Add optimisations to only install snap if it is absent and to
only update snap settings if they have changed.