Commit Graph

1463 Commits

Author SHA1 Message Date
Martin Kalcok b5ac43aceb ovn: Change metric that verifies OVN exporter
It is possible for OVN exporter to run even if it
can't connect to OVN sockets. In that case it will
report only reduced number of metrics. We need to
use metric that confirms that the exporter is successfully
connected to the OVN.

Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
2025-05-20 12:36:14 +02:00
Martin Kalcok 9ec95cd6ba ovn: Wait for correct status in downscale test
When adding/removing units during the downscale test,
the test should take into consideration 'target_deploy_status'.

Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
2025-05-06 12:11:44 +02:00
Martin Kalcok ddb6d4d432 ovn: ovn-central COS Integration tests
Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
2025-05-06 09:24:39 +02:00
Frode Nordahl 09b71f6824 Merge pull request #1311 from mkalcok/ovn-cos-tests
ovn: COS integration tests.
2025-05-05 11:09:26 +02:00
Martin Kalcok e4e1d18624 test_utils: Error recovery on huge page enablement
Rebooting units can cause the to go into an error state[0]
and it seems to pop up in our CI from time to time when we
enable huge pages on a machine.
We can try to recover from this at least once before
giving up on the test run.

[0] https://bugs.launchpad.net/juju/+bug/2077936

Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
2025-05-01 19:45:38 +02:00
Martin Kalcok 2f20669ceb ovn: COS integration tests.
These tests ensure that OVN Chassis can relate to the COS
via grafana-agent.

Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
2025-05-01 19:45:38 +02:00
Guillaume Boutry 412abce3ca Add tempest target with new RBAC
With Epoxy, new rbacs becomes the default under oslo.policy. Add a new
test target TempestTestWithKeystoneMinimalNewRBAC to ensure proper
configuration for tempest under new RBAC environments.

Signed-off-by: Guillaume Boutry <guillaume.boutry@canonical.com>
2025-04-29 22:39:02 +02:00
Martin Kalcok 42ff2e6ace ovn: Add test for prometheus exporter.
This ensures that prometheus exporter on ovn-chassis and
ovn-central units is reachable and responds to requests
after the unit is deployed.

Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
2025-04-16 15:26:48 +02:00
Martin Kalcok f4f9854631 ovn: Temporarily skip disabling of huge pages.
Due to bug in juju [0], we need to avoid machine reboots
triggered by disabling of the huge pages. The core of the
tests remain intact.

[0] https://github.com/juju/juju/issues/19463

Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
2025-04-09 09:29:45 +02:00
Martin Kalcok 4cb7de983e ovn-chassis: Switch principal charm to 'ubuntu'.
Charm ovn-chassis used 'magpie' as a principal charm, but magpie
doesn't have 'noble' release. Switching to 'ubuntu' is an easy
way to unblock noble functional tests.

Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
2025-04-07 10:14:09 +02:00
Edward Hope-Morley f4aa1e1912 diskimage-retrofit use Focal not Bionic
If the test uses bionic source image the charm has not be able
to determine ubuntu_release which it cant always do. This
causes breakage when the image is bionic because it has to apply
ussuri uca for retrofit to work.
2025-01-30 15:18:40 +00:00
Peter Sabaini 859efeff44 Merge pull request #1295 from sabaini/fix-rbd-reg-pt2
Fix rbd test regression, pt. 2
2025-01-29 17:04:25 +01:00
Peter Sabaini 1bdff647c9 Fix rbd test regression, pt. 2
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2025-01-29 11:37:20 +01:00
Guillaume Boutry 04473b490a Don't gate on not found
Most services can return not found, add to default list.

Signed-off-by: Guillaume Boutry <guillaume.boutry@canonical.com>
2025-01-28 10:21:19 +01:00
Guillaume Boutry 7a8432451e Allow passing service_codes to wait_for_all_endpoints
Some projects will return specific failed code when up because of
templating in URL. In some other case, due to the nature of the test,
the service will never go up but be present in keystone. Allow the
caller to override which service returns a specific code.

Signed-off-by: Guillaume Boutry <guillaume.boutry@canonical.com>
2025-01-27 10:00:29 +01:00
Peter Sabaini af5bea7072 Merge pull request #1292 from sabaini/fix-vault-ipformat
Format vault util func for ipv6
2025-01-23 17:35:57 +01:00
Peter Sabaini fee64c2658 Format vault util func for ipv6
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2025-01-23 11:49:38 +01:00
Peter Sabaini 9c7e794326 Fix: ceph-rbd-mirror testing action handling
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2025-01-20 15:37:41 +01:00
Peter Sabaini dec848228b RBD tests: fix regression 2025-01-13 14:38:36 +01:00
Peter Sabaini 59b89ec7a7 Use formatter to accomodate ipv6 tests
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2025-01-09 17:47:03 +01:00
Peter Sabaini 4f3c7750f4 Merge pull request #1284 from sabaini/integration-test-tenacity
Ceph COS integration increase tenacity and logging
2024-11-20 15:33:37 +01:00
Peter Sabaini 19a08a1dda Ceph COS integration increase tenacity and logging
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2024-11-20 10:55:20 +01:00
Peter Sabaini 0804a01e1c Merge pull request #1255 from lmlg/rbd-tests-fix
Use the new-style fields in action object for RBD tests
2024-10-23 11:19:46 +02:00
Guillaume Boutry 7543dfd873 Fallback to 0 minimum compute when no nova-compute units
Tempests can be used on deployments without nova-compute, testing only
control plane APIs. Fallback to a value when no nova-compute units is
found.

Signed-off-by: Guillaume Boutry <guillaume.boutry@canonical.com>
2024-10-18 17:13:48 +02:00
James Page 891761d631 Merge pull request #1278 from fnordahl/tempest-optional-http-image
tempest: Conditionally populate http_image key.
2024-10-14 17:09:42 +01:00
James Page 6b78df0bfa Merge pull request #1277 from fnordahl/add-lxd-support
Add basic support for LXD as substrate.
2024-10-14 17:09:21 +01:00
James Page 40b5896b4a Merge pull request #1276 from fnordahl/tempest-compute-count
tempest: Deduce min_compute_nodes from Juju model.
2024-10-14 17:08:27 +01:00
Frode Nordahl a5ad00acf1 undercloud_and_charm_setup: Add support for LXD.
This adds basic LXD support that allows adding second NIC to
instances hosting networking charms as well as populating said
charms configuration with the second NIC MAC address.

Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
2024-10-14 09:00:01 +02:00
Frode Nordahl 3e33bc73b1 tempest: Conditionally populate http_image key.
The `[image]` section and `http_image` configuration key is
optional, only populate it if the caller has populated the
`TEST_SWIFT_IP` environment variable.

Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
2024-10-12 09:26:57 +02:00
Frode Nordahl efca169566 tempest: Properly render IPv6 endpoint IPs.
Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
2024-10-11 21:48:45 +02:00
Frode Nordahl 9511aae4a6 tempest: Deduce min_compute_nodes from Juju model.
At present this value is hard coded, which may cause test failures
on deployment with different number of compute nodes.

Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
2024-10-11 12:34:27 +02:00
Frode Nordahl a9f7794b15 tempest: Refactor _add_application_ips.
Perform repetitive task in loop on input data rather than
repeating the same call three times in the code.

Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
2024-10-11 12:20:58 +02:00
Peter Sabaini 774d4cc93b Skip unsupported vhost config on older releases
Quincy and older do not support virtual hosted bucket
2024-10-07 12:26:07 +02:00
Edward Hope-Morley 84adfdbae0 Try cached tempest octavia test_server.bin 2024-09-30 15:38:13 +01:00
Edward Hope-Morley b1690d40ae Skip noble image sync for octavia tests
Noble was recently added but is not needed and is tipping
glance/ceph storage usage over the limit in release tests.
2024-09-27 17:27:41 +01:00
Nicholas Njihia 3c4482b732 Add Octavia volume-based Amphora test
Enable Amphora to run instances booted from
volume by flipping the config option
`enable-volume-based-amphora` to True and
checking volumes attached to the amphora
instances.

Depends-On: https://review.opendev.org/c/openstack/charm-octavia/+/810567
Related-Bug: https://launchpad.net/bugs/1901732
2024-09-22 21:38:58 +01:00
Peter Sabaini 03ce7d54c3 COS integration: prometheus tenacity
Be more insistent in querying metrics

Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2024-09-10 10:52:55 +02:00
Peter Sabaini f87814103d COS testing fix
Don't require trusted certs for getting grafana api info

Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2024-09-04 20:38:14 +02:00
Peter Sabaini 95f8122fbb Trivial: COS test fix typo
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2024-09-04 09:27:59 +02:00
Peter Sabaini afe42c4a59 COS integration: make prom-api configurable
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2024-09-02 19:54:22 +02:00
Peter Sabaini 4a81c003d1 Merge pull request #1260 from sabaini/fix/ga-naming
Fix: grafana-agent relation
2024-08-30 14:33:02 +02:00
Peter Sabaini 7e1591c528 Fix: grafana-agent relation 2024-08-30 10:19:14 +02:00
Peter Sabaini f1b1c3a1a9 COS integration testing: improve COS model lookup
Also, raise an error instead of skipping the test if no COS model found
2024-08-28 18:55:39 +02:00
Peter Sabaini 8dec5eccf8 Fix import path
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2024-08-22 17:15:34 +02:00
Peter Sabaini 23862098cc Refactor: move the COS integration to separate module
Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2024-08-20 15:29:32 +02:00
Luciano Lo Giudice fd160e8205 Fix function calls 2024-08-14 14:41:52 -03:00
Luciano Lo Giudice fcdcc81c64 Use the new-style fields in action object for RBD tests 2024-08-14 13:22:59 -03:00
Peter Sabaini ab347e1c12 Add COS integration testing for ceph-mon
Test retrieval of metrics, alert rules and dashboards

Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
2024-08-12 18:52:30 +02:00
Felipe Reyes a0ec1cddab Fix formatting in [magnum].labels
magnum-tempest-plugin since commit[0] is using ast.literal_eval() to
parse the value set in [magnum].labels, so the formatting needs to be a
Python dict.

This is an example of how the string needs to look like to make the
parser happy:

>>> import ast
>>> ast.literal_eval('{"a": "1:1"}')
{'a': '1:1'}

[0] https://opendev.org/openstack/magnum-tempest-plugin/commit/2fe075ae789e06ec58d37dc6f41382e2b64a8343#diff-8e9d4d1beb73d502d61e14564c76d54acf855bf8
2024-07-30 12:14:38 -04:00
Felipe Reyes cb802733e6 Fix [magnum].label formatting
Fixes the formatting of the labels configuration key, error raised with
the current formatting:

    Traceback (most recent call last):
      File "/mnt/git/charmed-openstack-tester/.tox/func-target/lib/python3.8/site-packages/magnum_tempest_plugin/tests/api/base.py", line 39, in setUpClass
    config.Config.setUp()
      File "/mnt/git/charmed-openstack-tester/.tox/func-target/lib/python3.8/site-packages/magnum_tempest_plugin/common/config.py", line 187, in setUp
    cls.set_labels(config)
      File "/mnt/git/charmed-openstack-tester/.tox/func-target/lib/python3.8/site-packages/magnum_tempest_plugin/common/config.py", line 162, in set_labels
    cls.labels = ast.literal_eval(CONF.magnum.labels)
      File "/usr/lib/python3.8/ast.py", line 59, in literal_eval
    node_or_string = parse(node_or_string, mode='eval')
      File "/usr/lib/python3.8/ast.py", line 47, in parse
    return compile(source, filename, mode, flags,
      File "<unknown>", line 1
        container_infra_prefix:10.245.164.190:5000
                              ^
    SyntaxError: invalid syntax
2024-07-29 15:04:04 -04:00