2926 Commits

Author SHA1 Message Date
Zuul
38d3c3d4a2 Merge "Add neutron-radvd to sidecar_container_list" 2023-11-22 17:37:16 +00:00
Eduardo Olivares
d50f39b1e7 Manila share_protocol value can be configured
The tobiko infrared plugin allows to configure a value for manila
share_protocol within tobiko.conf

Change-Id: I5dc4923ede35958be80c1a3c1e25d30aa6325060
2023-11-21 18:18:43 +01:00
Eduardo Olivares
11a625d215 Move network_undisrupt_controller_main_vip to tearDown
The faults test test_network_disruptor_main_vip runs a method to undo
the disruptive action that it executes.
That method is called at the end of the test. If something fails before,
the "undisruption" is not called.
This patch moves network_undisrupt_controller_main_vip to the tearDown
method, which guarantees it would be executed, regardless of passing or
failing.

Change-Id: I05183de74d12a00bc57efd8a3bce10525a3efd0b
2023-11-20 18:42:33 +01:00
Zuul
87cd444254 Merge "find_ovn_db_ctl_files only fails when file is not found" 2023-11-16 09:28:41 +00:00
Zuul
35b59a826d Merge "Improve DisruptTripleoNodesTest tearDown" 2023-11-15 15:32:37 +00:00
Eduardo Olivares
a91c0d49c8 Add neutron-radvd to sidecar_container_list
This patch affects only ML2/OVS setups.
Some faults tests fail after reboots or disruptive actions because
the neutron-radvd sidecar containers move from one controller to
another one, which is not really wrong.

Change-Id: I3fa53563e6ed92eadb7e53789df04297684c312c
2023-11-15 11:46:58 +01:00
Eduardo Olivares
d8dad718eb find_ovn_db_ctl_files only fails when file is not found
Before this patch, the find command could fail due to other reasons
(some directory was not accessible) that are irrelevant to the aim of
this function, which is to find the path of the ovn db ctl files

Change-Id: If8ddee01fbc0c9500131360aa3db499f04528e5d
2023-11-15 11:34:08 +01:00
Eduardo Olivares
bb712907d4 Make ubuntu VM interface name configurable
Depending on the hypervisor/compute were the Ubuntu VM instances are
spawned, their interface names are created following differnt
conventions. Tobiko decides which is the expected name depending on the
OSP version, but that is not a valid method to decide it in some cases.
This patch allows to configure the expected Ubuntu interface name.

Change-Id: I6d876c73d883dc588360d6f6bc54f952d0fa9e84
2023-10-27 12:22:48 +02:00
Eduardo Olivares
2e5a23e95c Make keystone endpoint interface configurable
By default, admin interface is used. In case of podified setups, this is
not valid.
With this patch, a value can be configured.

Change-Id: I97582a76fdaf2d60682ab27b6668c19db3ef53c1
2023-10-27 12:11:18 +02:00
Zuul
096ed1fbde Merge "Ensure default manila share type exists" 2023-10-24 15:58:15 +00:00
Zuul
26de8973b2 Merge "Add cacert to manilaclient" 2023-10-24 13:20:38 +00:00
Eduardo Olivares
1cab5fbf5d Ensure default manila share type exists
Before the manila scenario tests create shares, they should ensure the
default share type exists.

Change-Id: I26a76baf9e6b62a4f85104e548ce3235155799a3
2023-10-23 12:42:38 +02:00
Eduardo Olivares
3d1bace079 Add cacert to manilaclient
On TLS-e environments, manila requests were rejected due to
SSLCertVerificationError.
With this patch, the path to the cerificate is passed to manilaclient
and the requests are answered successfully.

Change-Id: Id5437488d4ec1101c0b75ed04677ed4bf28f52e1
2023-10-23 12:35:07 +02:00
Eduardo Olivares
2ea22c58bb Set timeout to 40 secs for pcs status command
Change-Id: I50792aea599ab53b07a62dbed486ab3836b46674
2023-10-18 11:33:40 +02:00
Eduardo Olivares
5aafb1e068 Apply process timeout to process.send_all method from sh.execute
It makes sense that the command execution timeout is applied to the
process.send_all method, which otherwise retries forever to send the
command.

Change-Id: I1f9e496d0efe6e7ff1e6b347253032c408d9e8d4
2023-10-18 11:33:31 +02:00
Eduardo Olivares
89f94d21cd Add some logs with info about process retry loop
Tobiko does not print any information about the status of this loop
because the sleep_interval is None.
After one hour, the retry loop is broken because the timeout expires,
but there is no information about the reason why it expired.
With this patch, information about the timeout and the retry loop is
printed within the Tobiko logs.

Change-Id: I74e97bf251bbb0180b26d7111bde52663cee2406
2023-10-18 11:33:21 +02:00
Eduardo Olivares
cc3c91acd7 Keystone password could be a number
Change-Id: I5af3b88754b3aaad90be015ca641764af9c33882
2023-10-18 08:40:58 +02:00
Fiorella Yanac
17c0262329 Add note in L3 agent test
Note: Sleep(30 sec) to make sure the L3 agent has time
to fully provision all the resources.

test: test_metadata_haproxy_during_stop_L3_agent
Change-Id: Icc0f0401e9d0f2be1d61fb80a82c28c586261aae
2023-10-16 11:41:10 +02:00
lkuchlan
5d04e37ab0 [Manila] pre-upgrade resource creation and post-procedure validation
There's a need to create a Manila share resource before the upgrade
process and then validate the share after the process is complete.
To achieve this objective, it is essential to incorporate support for
the Manila client, a task that is accomplished through this commit.

Change-Id: I0d520e40a1a491ee864e707d63413d10035b99ca
2023-10-09 12:45:10 +00:00
Zuul
1449078813 Merge "[Faults] Verify that 'network_disruption' method takes place." 2023-10-06 11:59:30 +00:00
Eduardo Olivares
262a754620 Update latest stable tag to 0.7.0
This version drops support for python3.6 and python3.7

Change-Id: I8060618eb8483d16256e860212a2dc5f31dbd2ea
2023-10-04 11:37:41 +02:00
Julia Marciano
5a67d307a6 [Faults] Verify that 'network_disruption' method takes place.
We expect that after traffic to the dedicated controller node(s) is dropped, the controller(s) will be fenced and restarted. Using "check_overcloud_node_uptime" method to check it happens.

Change-Id: Id26e3b4200643fa7ab4f42e6a5ddfe019c41266c
2023-10-04 09:14:17 +00:00
Eduardo Olivares
f5796f650f Fix is_dvr_enabled method when OVN is configured
The configuration parameter that provides the information about DVR when
ML2/OVN is used is different from the parameter used by ML2/OVS.
1) In case of OVS:
/etc/neutron/neutron.conf
[DEFAULT]
enable_dvr
2) In case of OVN:
/etc/neutron/plugins/ml2/ml2_conf.ini
[ovn]
enable_distributed_floating_ip

Change-Id: Id5e099a3fea21261339e049b53063613ea4667c2
0.7.0
2023-10-02 12:18:47 +02:00
Zuul
6009ff1e79 Merge "Skip background ping checks during controllers reboot with nonDVR" 2023-09-29 14:53:34 +00:00
Zuul
d47aefd7e7 Merge "Make ResourceFixtures configurable" 2023-09-29 12:13:31 +00:00
Zuul
6d89125d3e Merge "Create ResourceFixture: common class to manage OSP resources" 2023-09-29 12:04:52 +00:00
Eduardo Olivares
7cbf30b983 Skip background ping checks during controllers reboot with nonDVR
When DVR is disabled, rebooting or applying network disruptions on the
controllers nodes can affect dataplane traffic because the packets are
not directly routed to the compute nodes.
Due to this, some faults tests fail during the background ping checks.
This patch skips the background ping checks on those tests.

Change-Id: If51016ce7c3562d1f18ac1f2124db72ef29c90d7
2023-09-28 10:31:47 +02:00
Eduardo Olivares
c2f03aff50 Skip SharedFixture.cleanUp during check-resources steps
The SharedFixture.cleanUp method is called when setup_fixture fails. The
aim of this is to delete the resources that were not successfully
created and allow next tests to create them properly.
This is not valid with check-resources steps because resources are not
created again.
So, in this case, it makes more sense to skip deletion of resources and
run the rest of tests with the existing ones, even if they fail.

Change-Id: I11b4eb5178c9891a692836ef720ca0487f407e60
2023-09-27 12:04:35 +02:00
Eduardo Olivares
6845550e0f Make ResourceFixtures configurable
With this patch, ResourceFixtures can be declared with
tobiko.required_fixture using kwargs.
Those kwargs can be used to modify default values from attributes used
within the ResourceFixtures subclass constructors

Change-Id: Ib3dbff002cec51336ed56aaa2a86e8dc207d9807
2023-09-26 08:53:49 +02:00
Eduardo Olivares
798ccdad50 Create ResourceFixture: common class to manage OSP resources
The new ResourceFixture is the base class used to manage the creation of
OSP resources that are not based on Heat Stacks.
The child classes only need to provide some mandatory attributes and
implement methods to create, find and delete resources.

Change-Id: I684e9561289e02578ee967aa4b6de02ac757fb14
2023-09-25 16:25:29 +02:00
Fiorella Yanac
715d6c9361 Add conditional trunk port
When vm is created, the trunk port may not have been created first.
By adding this conditional, vm depends on the existing trunk port.

Change-Id: I069698b869633007f49110463658c858236c9f32
2023-09-22 14:51:35 +01:00
Zuul
cd0b58190c Merge "Skip wait_for_guest_os_ready during check-resources" 2023-09-20 10:13:28 +00:00
Eduardo Olivares
1c1fb2d8e3 Skip wait_for_guest_os_ready during check-resources
Some tests from some CI jobs fail during check-resources test steps
because the console output is empty and the wait_for_guest_os_ready
method fails due to that.

Change-Id: Id0150f10cdf008fd7501bbedeff3209b3aa90cd0
2023-09-20 08:55:01 +02:00
Eduardo Olivares
6ca96d033a Fix cleanup Loadbalancers task from tobiko-cleanup role
Deleting Loadbalancer should be done one by one. The command fails if
more than one LB is used

Change-Id: Icd316cd410f8f94ab99136817c1fe45b68aa77e9
2023-09-19 08:37:23 +00:00
Zuul
2fc1b3b171 Merge "Fix Octavia HA test_stop_haproxy" 2023-09-18 15:07:38 +00:00
Slawek Kaplonski
c24dd0c244 Move sphinx_rtd_theme to the readthedocs requirements
This package was removed from the OpenStack requirements with [1] so
keeping it in the doc/requirements.txt file is causing failure in the
requirements-check job.
As we want to use this theme to build our docs, lets keep it in the
readthedocs_requirements.txt file which isn't checked by the
requirements-check job at all.

This patch also changes docs and releasenotes configs in the way that it
will fallback to one of the default themes provided by sphinx.

Finally it makes some additional changes to the releasenotes conf.py
file to make build of the releasenotes working fine.

[1] https://review.opendev.org/c/openstack/requirements/+/893665

Change-Id: Iff03b8596a9e772940fd959efa7cbf80a68e9eab
2023-09-18 15:45:23 +02:00
Zuul
54c29d5bfa Merge "Wait for guest OS ready after starting a VM" 2023-09-16 10:24:36 +00:00
Eduardo Olivares
25e38d1114 Wait for guest OS ready after starting a VM
test_3_activate_server shuts off and on a VM. With this patch, the test
will wait until the guest OS is ready after starting it.

Change-Id: I0350aec46c937d18e1188d2103c2059237005f92
2023-09-15 11:41:37 +02:00
Slawek Kaplonski
dc7e3b87b9 Stop using "system_packages" in readthedocs builds
It was removed on Aug 29th. See [1] for details.

[1] https://blog.readthedocs.com/drop-support-system-packages/

Change-Id: I0a97d33236f198670351dab7da61dc8f82981ac5
2023-09-15 06:36:51 +00:00
Eduardo Olivares
417a8ab14b Lock VM creation until guest OS is ready and cloud-init done
Avoid concurrency issues by locking VM creation until it is
completed.
Add step that verifies that the VM instance boot is completed before
releasing the lock and before the tests try to ping, ssh, etc that VM.
Add another step that checks the VM FIP is pingable.
Add a third step that checks the VM has completed the cloud-init
procedure.

Some tests (SameHostNetworkTest and DifferentHostNetworkTest) try to
migrate VMs immediately after creating them in order to move them to the
expected compute node. Sometimes, those VMs fail to contact the metadata
service because their migration happens exactly when the guest OS was
trying to obtain the metadata.
With this patch, those VMs are not migrated until the guest OS is ready.

Change-Id: Ia32b8c774e1c94277fa7243b7943a8b19763a501
2023-09-14 17:18:21 +02:00
Zuul
372cb72ce7 Merge "Delegate tasks from the tobiko-cleanup role to undercloud" 2023-09-13 15:04:47 +00:00
Zuul
787a4b73b3 Merge "Fix test_ipvX_subnet_nameservers when trunk ports are used" 2023-09-13 14:24:23 +00:00
Eduardo Olivares
9e99159c07 [IR plugin] Copy cert file to tester_node
When tobiko is run on a tripleo setup but it is not executed from the
undercloud node, some files such as the certificate file need to be
copied from the undercloud node to the tester node

Change-Id: Id78005d21e5e225666155fdbcb5e2385b5aa43ee
2023-09-13 12:43:04 +02:00
Eduardo Olivares
e926d82ea1 Fix test_ipvX_subnet_nameservers when trunk ports are used
When a VM is created with trunk ports, the DNS nameservers are added
to both the parent port and the subport.
This patch checks whether the VM has a VLAN interface (i.e. it uses
trunk ports) and, in that case, tests test_ipv4_subnet_nameservers and
test_ipv6_subnet_nameservers check nameservers from both parent port
and subport subnets.

Depends-On: I6fa5b70558e886b17c63dab61fad3c7a2728d148

Change-Id: I453be8aa13a5c27d425435160756d58b672d69d6
2023-09-12 18:09:41 +00:00
Eduardo Olivares
4089ef6afe Delegate tasks from the tobiko-cleanup role to undercloud
In case of tripleo setups, Tobiko can be executed from the undercloud or
from a different node (test_host).
In case it is not run from the undercloud, the tobiko-cleanup role has
to be delegated to the undercloud node.

Change-Id: Ic81196dee9735acbd1841baeb25003f96f69d5a2
2023-09-12 10:38:38 +02:00
Omer
171016d467 Fix Octavia HA test_stop_haproxy
So far, test_stop_haproxy failed randomly because amp_haproxy_unit was
not returned, randomly. When that happened, the test failed, as it tried
to stop the '' service/unit.

This patch wraps the amp_haproxy_unit retrieval in a tobiko.retry
mechanism.

Change-Id: Ifa987a32c22ac8050adb7ba2ac76b4e90bac9597
2023-08-30 15:48:17 +02:00
Eduardo Olivares
b32c3a5f6e Dropping python3.6 and python3.7 support
Depends-On: I4a5ac77948ddb65944b0852b03122190a659269b

Change-Id: If126f32a301c5bd0a2c50b6b9c6b0d8ef2cdf7ca
2023-08-25 15:39:07 +02:00
Eduardo Olivares
c6cf19e4c0 Update latest stable tag to 0.6.14 - latest supporting python3.6
A new tag is needed after 0.6.13 because the tag and the value
configured at infrared_plugin/roles/tobiko-ir-init/tasks/main.yaml
should be aligned in order to use it as the latest python3.6 supported
Tobiko version.

Change-Id: Ibd573d7b75e492259883ea1a6e455ee917a43f89
0.6.14
2023-08-25 10:37:13 +02:00
Eduardo Olivares
5409dbc33b Update latest stable tag to 0.6.13 - latest supporting python3.6
Tobiko is dropping python3.6 support after 0.6.13 (next release will be
0.7.0)

Change-Id: Ifb078ddd3a9d3d0000f84d546c425a8ddb20688c
2023-08-23 16:50:30 +02:00
Zuul
3b8cb8bb6b Merge "Use uptime instead to verify controllers reboot has been completed" 0.6.13 2023-08-22 14:34:06 +00:00