Commit Graph

1372 Commits

Author SHA1 Message Date
jneo8 f39ea121a4 style(zaza/openstack/charm_tests/mysql/test_prometheus_mysql_exporter.py): Update docstring style 2022-10-26 22:13:12 +08:00
jneo8 788fd77137 test(zaza/openstack/charm_tests/mysql/test_prometheus_mysql_exporter.py): Add tests for mysql prometheus exporter 2022-10-26 22:13:12 +08:00
Liam Young 827d81fc12 Allow tempest to run in minimal mode (#956)
Add test class that runs tempest in miminal mode. This is useful
for testing that the OpenStack apis are responding but there are
components not configured like an external network. In addtion
some missing doc strings were added and support for neutron
tempest configuration pre ussuri removed as there is a branch
for that.
2022-10-20 11:18:04 +01:00
Corey Bryant 9eac7470a7 Update masakari test to launch jammy instance 2022-10-18 19:25:36 +00:00
Liam Young 89fd74c5db Add method to check OpenStack endpoints (#953)
* Add method to check OpenStack endpoints

Add method to check OpenStack endpoints are returning acceptable
http codes. This should be used with caution as a charm whould
indicate if its payload is not ready via workload status and
workload status messages

* Fix dox string
2022-10-14 12:59:26 +01:00
Chris MacNaughton 98a1c8948a [ceph] remove white-box testing migrated from amulet (#951) 2022-10-12 15:34:14 +01:00
James Page bab65e8c2e k8s: use action to retrieve admin password
The Keystone K8S operator now uses generated passwords; make use
of the helper action to retrieve the admin password.
2022-10-11 11:43:01 +01:00
Guilherme Maluf Balzana 98faf67846 Add glance-simplestreams-sync set_latest_property config functest (#853)
When creating Openstack VMs the user has to specify the image it wants
to use. sstream-mirror-glance adds a date to the image name, so they
always have to recheck which is the current latest image.

This commit tests the usage of the `set_latest_property` configuration.

When --set-latest-property is given sstream-mirror-glance will set the
recently synced image with the `latest=true` property and then remove
the `latest` property from all the os_version/architecture matching
images.

Closes-bug: LP #1933130
2022-10-07 18:35:36 +00:00
Billy Olsen 6fdccd680c Merge pull request #929 from hernandanielg/test-cloudkitty
Add test for cloudkitty charm
2022-10-05 15:14:41 -07:00
Felipe Reyes a55f320c2a Add test for keystone-openidc (#925)
* Add keystone-openidc setup code.

The keystone-openidc charm requires 2 configuration steps:

1) Configure the oidc-client-id, oidc-client-secret and
   oidc-provider-metadata-url, this information is tightly related to
   the Identity Provider configured, which for testing purposes this is
   the openidc-test-fixture charm, the setup function
   zaza.openstack.charm_tests.openidc.setup.configure_keystone_openidc
   takes care of setting these values once the fixture charm is ready
   for service.
2) Create the OpenStack objects to correctly configure the federation,
   this is made by the setup function
   zaza.openstack.charm_tests.openidc.setup.keystone_federation_setup_site1
   which will create and configure the following resources:
   - Create a domain named 'federated_domain'.
   - Create a group named 'federated_users'.
   - Grant the 'Member' role to users in the 'federated_users' group.
   - Create an identity provider named 'openid'.
   - Create a mapping named 'openid_mapping'.
   - Create a federation protocol named 'openid' that relates the mapping
     and the identity provider.

* Add support for v3oidcpassword auth plugin.

get_keystone_session() uses the v3.OidcPassword class when the
OS_AUTH_TYPE is set to v3oidcpassword, this class expects the following
extra configuration options:

- OS_IDENTITY_PROVIDER
- OS_PROTOCOL
- OS_CLIENT_ID
- OS_CLIENT_SECRET
- OS_ACCESS_TOKEN_ENDPOINT (optional)
- OS_DISCOVERY_ENDPOINT (optional)

* Add test for keystone-openidc

This patch introduces a new testing class named CharmKeystoneOpenIDCTest
which interacts with keystone using users provided by
openidc-test-fixture via OpenID Connect.

* Add keystone_session argument to launch instances.

Adding the option to pass a keystone session allows callers to use
credentials different from the ones provided by
get_overcloud_keystone_session(), this is helpful when testing non
default keystone configurations (e.g. Federation).

* Add zaza.openstack.charm_tests.openidc.tests.TestLaunchInstance

This testing class configures a private network in the user's project defined by the mapping
rules during the setUpClass stage. Specifically this test performs the following steps:

- Create keypair named 'zaza' in the user's project
- Create a router for the project
- Attach the router to the external network
- Create a network
- Create a subnet attached to the previously create network
- Connect the subnet to the project's router

The testing method launches an instance using a keystone session
associated with a user backed by OpenID Connect.
2022-10-05 13:34:18 +01:00
Liam Young 99186a6651 Add k8s compatible method for keystone auth (#945)
* Add k8s compatible method for keystone auth

* Mock out is_k8s_deployment
2022-10-03 18:27:56 +01:00
Liam Young 65cc55a5db Remove liberty special case (#944)
* Remove liberty special case

* Update unit test
2022-10-03 12:52:30 +01:00
hernandanielg ace6e6d70b added group create and delete test 2022-10-01 00:17:22 +00:00
Corey Bryant 8919e508c0 Add jammy image to octavia ensure_lts_images() 2022-09-30 17:08:48 +00:00
hernandanielg 84c58b44a4 added services field and mapping tests 2022-09-30 06:05:37 +00:00
hernandanielg 627e2d82b1 added module_enable test 2022-09-30 01:10:29 +00:00
hernandanielg ecf5f1e108 initial commit 2022-09-29 22:55:41 +00:00
Utkarsh Bhatt 6a222d1210 replaced deprecated relation (#926)
Co-authored-by: utkarshbhatthere <utkarsh.bhatt@canonical.com>
2022-09-24 15:01:49 +02:00
Frode Nordahl bf3cecfcd4 ovn: Remove workaround for EOL release (#927)
The workaround was specifically targeting Groovy which is now EOL.

Also remove the `current_release` class variable as it is no
longer needed.

Related-Bug: #1852221
2022-09-23 19:51:52 +01:00
Dmitrii Shcherbakov 787415ae94 Move DPDK-related functions to DPDKTest
The previous change

268b4297b4

did not move the rest of the functions required to actually run the
test case.
2022-09-20 23:34:55 +03:00
Dmitrii Shcherbakov 268b4297b4 Separate DPDK tests from other chassis tests
We do not yet support DPDK for ovn-dedicated-chassis, therefore, we need
to avoid running DPDK func tests for it.
2022-09-20 16:20:13 +03:00
coreycb 383726b15e Remove workaround for Octavia Bug #1964117 (#922)
Remove the work around for Bug #1964117 now that it is fixed
in the latest ovs package versions in ubuntu and the cloud
archive. This is fixed in the following versions of ovs:
xena (2.16.4), jammy/yoga (2.17.2), and kinetic (3.0.0).
2022-09-19 15:58:05 +01:00
Liam Young a65ef82ef5 Fix code for non-ha keystone saml mellon deploys (#912)
When deployed in a non-ha setup the keystone ip can fail to be
found due to problems with getting ips of subordinates. Also,
there is duplicate code for finding the keystone ip so put this
in the setup class.
2022-09-15 14:42:13 +01:00
Liam Young cc1ecce0ad Merge pull request #909 from fnordahl/skip-nrpe-when-not-present
ovn: Skip NRPE tests when NRPE is not related to charm under test
2022-09-14 08:06:34 +01:00
Frode Nordahl 9d40566786 ovn: Skip NRPE tests when NRPE is not related to charm under test
To unblock the OVN charm gates we need to remove NRPE from the
gate bundles.
2022-09-14 08:40:12 +02:00
Frode Nordahl d64795209d Merge pull request #899 from gnuoy/fix-dashboard-url
Fix dashboard policy tests.
2022-09-13 09:03:02 +02:00
Utkarsh Bhatt 91748b598c Adds scaledown check and verification for stoppage of synchronisation. (#863) 2022-09-12 18:37:06 +00:00
Liam Young 6246326729 Fix dashboard policy tests.
The dashboard policyd  override tests assume the deloyment is http
and non-ha. This is not a safe assumption so use the existing code
to generate the correct domain listing url.
2022-09-12 14:20:41 +00:00
Luciano Lo Giudice acf30b3a8a Add functional tests for ceph-mon actions. (#866)
* Add functional tests for ceph-mon actions.

This PR adds functional validation for 2 actions of the ceph-mon
charm that are currently being rewritten.

Cleanup after the tests run.

Co-authored-by: Luciano Lo Giudice <luciano.logiudice@canonical.com>
2022-09-09 11:24:10 +00:00
Samuel Walladge 8fe6f9078f Reload all vault units in reload test
`get_unit_name_from_ip_address` along with the ip from vault client
has proven flaky in this situation.
Not sure why.
But better to reload all vault units anyway,
so we can take a simpler route here.
2022-09-09 15:07:18 +09:30
Liam Young 33a6408c83 Set and log model name 2022-09-08 12:55:04 +00:00
Liam Young f3724b2281 Add additional logging 2022-09-08 08:21:21 +00:00
Liam Young 778d36e1fa Fix Ganesha _restart_share_instance for non-ha
Manila Ganesha is not always deployed in an ha configuration in
functional tests. This means there is no automated restart of the
manila services but the _restart_share_instance method shuts down
manila services via systemctl and expects them to be automatically
started. This change detects if the hacluster charm is present, if
it is it defaults it used the old behaviour otherwise systemctl
is used to restart the services.
2022-09-08 05:54:05 +00:00
Liam Young 3e4df7d52e Switch manila tests to use jammy guest 2022-09-07 21:45:45 +00:00
Dmitrii Shcherbakov 87d347d02a Add a codename and release pair for Zed 2022-09-07 00:57:26 +03:00
Frode Nordahl a53ad38e75 Merge pull request #868 from gnuoy/fix-swift-replica-tests
Respect model in get_swift_storage_topology
2022-09-06 10:34:30 +02:00
Liam Young c57ac56951 Merge pull request #865 from esunar/openstack-dashboard-caching-headers
Added tests for charm-openstack-dashboard
2022-09-05 08:15:13 +01:00
Nobuto Murata b07fd0b2dc Support LTS_IMAGE_NAME(jammy) in guest.launch_instance
Follow-up of #860 and #791 to fix:

 File "./zaza/openstack/charm_tests/test_utils.py", line 798, in launch_guest
   return configure_guest.launch_instance(
 File "./zaza/openstack/configure/guest.py", line 128, in launch_instance
   image_name = image_name or boot_tests[instance_key]['image_name']
KeyError: 'jammy'
2022-09-04 10:00:40 +09:00
Liam Young 17234c9e15 Respect model in get_swift_storage_topology
Change 0af4c93d causes the target model to be ignored when a
model_name was specified. This in turn is causing the swift
cmr tests to fail as an ip of None is being recorded for
units in a different model.
2022-09-02 14:17:07 +00:00
Liam Young b4b645ab9a Add fallback ubuntu image location 2022-09-02 14:09:57 +00:00
Felipe Reyes c88894d52a Update LTS image from Bionic (18.04) to Jammy (22.04) (#860)
Ubuntu 22.04.1 was released and it should be used as the new baseline
for testing in the gate.
2022-09-02 11:55:20 +01:00
Frode Nordahl 909513917e Merge pull request #867 from swalladge/fix-vault-auto-init
Fix race conditions in VaultFacade
2022-09-02 08:15:29 +02:00
Samuel Walladge bb3d93b00a Add test for online extending lvm volume in cinder (#854) 2022-09-01 09:23:57 +01:00
Samuel Walladge d282fe264d Fix race conditions in VaultFacade
This ensures initialising and unsealing works nicely
with vault using the raft backend
(which makes race conditions evident because of the time
it takes for the raft cluster to settle).
2022-09-01 10:43:04 +09:30
Erhan Sunar ba6cb0d1b7 Added tests for charm-openstack-dashboard
Added tests for checking positive and negative matches for the
Cache-Control and Pragma http headers.

If the requested resource is static check if these headers are
not set
Cache-Control: no-store
Pragma: no-cache

If the resource is dynamic ensure these headers are set
Cache-Control: no-store
Pragma: no-cache
2022-09-01 00:18:36 +03:00
Chris MacNaughton 36b267ba50 Update the CephFS tests with newer requirements
This change removes a repeated call to ceph daemon config
show and replaces it with a single call that we then
parse in Python.

It also removes a deprecated usage of handling async
code in Zaza that causes an infinite block in the test
code.
2022-08-30 18:38:37 -04:00
Chris MacNaughton 54dd97dfeb Migrate CephFS tests to not use OpenStack 2022-08-30 13:12:33 -04:00
Samuel Walladge a2d8e96d8e Fix test to work with vault with raft backend (#827)
The tests here run a series of commands on the vault client,
without waiting in between.
This is usually fine, but with the raft backend,
there can be delays between initialising, unsealing,
and the raft cluster settling.
During this time, most vault commands will return errors.
2022-08-24 14:04:47 +01:00
Liam Young 9fe96db10a Merge pull request #856 from gnuoy/add-trilio-horizon-test
Add test for Trilio Horizon encryption settings
2022-08-19 16:14:10 +01:00
Liam Young 87211cd2be Fix test for queens package name 2022-08-19 06:58:29 +00:00