Commit Graph

31 Commits (main)

Author SHA1 Message Date
Liam Young 3324621bf8
Add 'extra' test dep
python-subunit 1.4.3+ requires 'extras' otherwise an error
occures:
"'run --slowest' is not a stestr command."

Change-Id: I999923e7a1f85aa09c80a96fd6ca3b7cc305ae40
2023-09-18 10:04:34 +00:00
Zuul c254a83caa Merge "Add prometheus alert rules" into main 2023-09-14 07:55:06 +00:00
sudeephb 812a31c9dd Add prometheus alert rules
- Add alert rules to monitor ovs service
- Add alert rules to monitor libvirtd service

Depends-On: https://review.opendev.org/c/openstack/charm-openstack-hypervisor/+/893007

Change-Id: Id568f4583d6a390d7c1fde05f7a839e98c3b99e5
2023-09-14 12:40:57 +05:45
Liam Young 81b66e351b
Support ceph-access relation
Change-Id: I05872c91bd68ef5a9836a6a4a229138a8ebaabf3
Signed-off-by: Liam Young <liam.young@canonical.com>
2023-09-11 12:02:29 +00:00
Liam Young dd03fbf47e Add missing requirements
Commit 43b9dc90 added the grafana lib which has cosl and
pydantic dependencies. This change adds those deps to
the requirements file.

Change-Id: Ia7fb555abafcc59fea44c8eb006c8231ac03d31b
Signed-off-by: Liam Young <liam.young@canonical.com>
2023-09-06 15:36:31 +00:00
Hemanth Nakkina ddaabbb0b3 Add support for ceilometer-service relation
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.

Change-Id: I168348aba340db3ec2f63b69acef439906542e63
2023-09-06 17:24:37 +05:30
Zuul d67a9cfa0c Merge "Add cos-integration" into main 2023-09-06 11:10:25 +00:00
Chi Wai Chan 43b9dc90be Add cos-integration
Allow the charm-openstack-hypervisor to be related to grafana-agent
machine charm [1] via cos-agent interface.

- Add cos-agent library.
- Add cosl and pydantic to test requirements.
- Add cos-agent interface and its basic implmentation.
  - Add libvirt exporter integration (related to PR [2])
  - Add ovs exporter integration (related to PR [3])
  - Add node exporter integration (grafana-agent built-in)

[1] https://github.com/canonical/grafana-agent-k8s-operator/tree/main
[2] https://github.com/canonical/snap-openstack-hypervisor/pull/2
[3] https://github.com/canonical/snap-openstack-hypervisor/pull/3

Change-Id: I1bc8367af2e1d2677a43cf67f15cae49c5455e7f
2023-09-06 18:02:00 +08:00
Chi Wai Chan 42ec5b1412 Fix the typing issue in snap configs.
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
[1]. This PR is to update the snap library will proper typing support.

- Update snap library
- Fix the data types used in `Snap.set()`

[1] https://github.com/openstack-snaps/snap-openstack-hypervisor/blob/main/openstack_hypervisor/hooks.py#L740

Closes-Bug: #2033272
Change-Id: I7bec4599b23500aaad9e008fce648793c104b642
2023-08-30 18:42:47 +08:00
Liam Young 92d5231579 Permit Juju 3.1
Allow juju 3.1 as CMR fixes should have been backported and 3.1 has a longer
life than 3.2

Change-Id: If682ea30f71445f1c7d7ee3699823be6d458f167
2023-08-22 10:34:53 +00:00
Hemanth Nakkina fdf7fae8d5 Use fallback for determining interface for local ip
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.

Closes-Bug: #2030497
Change-Id: I1cf358ad42f0cec4733e3afc9b60f5ddfade2bfe
2023-08-10 13:56:02 +05:30
Guillaume Boutry 6f6f7cdca6
Use identity internal endpoint
The charm configured the snap with the public endpoint while it should
be internal.

Change-Id: I428a4c275203641eaaa7cdb83c8f120503bcfd92
2023-07-11 10:45:10 +02:00
Zuul 0392aa415f Merge "Add Service Token support" into main 2023-06-16 10:20:51 +00:00
Liam Young a4fb8a5c86 Add Service Token support
As documented in [1] service tokens are useful to prevent issues
with long running services or with requests that take a long time
to finish where the user token can expire in the middle of an operation.

[1] https://docs.openstack.org/cinder/latest/configuration/block-storage/service-token.html

Depends-On: I15682c66d252d506e8f1c9b8de818bc19b1af973

Change-Id: I4d906132876a3efe4bd1154ad2c58a3bc635febe
2023-06-15 11:35:59 +00:00
Liam Young fd836db704 Enforce min juju version
Change-Id: Ic37e39c7a87d855b467b2210931464b8e4c9a521
2023-06-12 09:37:52 +00:00
Liam Young 4c231cd58f Trigger CI
Change-Id: I0975709bbfc0436796d34823213f8edfbda87a81
2023-06-01 05:22:11 +00:00
Zuul 4082784df7 Merge "Add dependencies with native components as binary packages" into main 2023-05-31 15:04:51 +00:00
Guillaume Boutry e755f97c3c
Add dependencies with native components as binary packages
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
22.04 machine.

Change-Id: I759e5436e47869d30c1f0de7ccdabed2ba6f1c49
2023-05-31 16:55:17 +02:00
Guillaume Boutry 94b8bb5ca0
Trigger CI
Change-Id: I24bbb737445b174467c828a86407be98f8622afa
2023-05-31 15:41:24 +02:00
Hemanth Nakkina 1964a31610 Add osci to publish charm
Add osci.yaml to publish charm.
Publish the charm to 2023.1/edge track.
Change snap-channel default to 2023.1/edge.

Change-Id: Ie62fecbcd033ef65d4a73e0b5ceee769f435299a
2023-05-31 10:19:41 +05:30
Guillaume Boutry 67179c2dd9
Upgrade operator_libs_linux/snap to v2
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.

Change-Id: I7cc81bee023e3eeaa6eccd0d38968f3de48b86af
2023-05-26 12:57:08 +02:00
Liam Young 34e62b669f Add action for applying local settings
Add action to apply snap setting specific to the local unit.

Change-Id: I6ab63de753046c07934a6f923206ff5179599e39
2023-04-25 17:15:19 +00:00
Liam Young 25839cb4fb Add snap optimisations
Add optimisations to only install snap if it is absent and to
only update snap settings if they have changed.

Depends-On: If8086efcf7df4dcbe02be7454578dbbfb2d7945a
Change-Id: Icf2e9834cca6330eec92239aa5a5b76503c7c0f1
2023-04-24 16:53:11 +00:00
Liam Young e52489b3eb Unit tests and CI config
Change-Id: I2dfa889913caba8f6ac96ec4e9393c23fdda6100
2023-04-21 11:27:32 +00:00
Liam Young ca373b4708 Update identity_credentials lib 2023-04-13 19:17:22 +00:00
Liam Young ba1fc7df37 Recent change to ops_sunbeam requires observability lib 2023-04-13 19:18:50 +01:00
Liam Young cad0f6d6bc Ensure systemd services are running 2023-04-13 17:20:35 +00:00
Liam Young 784039a92a Fix handling of db_ingress_sb_connection_strs 2023-04-06 18:11:10 +00:00
Liam Young e172959d9f Add CMR info to README 2023-04-04 13:05:02 +00:00
Liam Young d3a78ccb14 Remote peer relation and misc fixes 2023-04-03 15:02:56 +00:00
Liam Young f9530dadba Initial commit 2023-03-30 08:23:30 +00:00