Added a waiter that compares the current status
of the port to a target value and returns the port
when that is achieved.
Closes-Bug: 1845486
Change-Id: Ibc5434244f3758c60ddefa96d78476948a47ed13
Location returned till microversion 2.44
image_id returned from microversion 2.45
Added support in manager for both
Change-Id: I5ef9233d9ba2437198bac1357782a9639024dc79
If you want to restore a backup, specifying only the backup ID, you will
get a new volume. However, if you pass the volume_id argument, you are
targeting the restore of an existing volume.
The problem I am having is that restore_backup() adds a second call to
addCleanup to an existing volume and this results in a 400 HTTP error.
To fix this problem, I add a simple check when we want to use an
existing volume without calling cleanup.
Change-Id: I521f69091cdad60edfe4ed85368df5decc0a7f55
Current code does not support skipping wait for
volume, tempest plugins require test without waiting
and still use all existing flow code.
Examples:
Create multiple volume in a batch without waiting
Create multiple volumes and expecting for error state
Instead of duplicating code its better to set a flag,
wait_until default value is available, when its None we
skip waiting inside create volume
Change-Id: I7fe90e26f773b3a128e3d1bff1b89a3ef665eebb
Current test used as a basic check for multiple services
- Changed the nova reboot to HARD in order to refresh connection for
attahced devices
- Created a volume snapshot and delete it before reboot instance
- Write data to the attached volume and read post instance reboot.
Related-Bug: #1860913
Change-Id: I4151715954b3a12e6c790836d4b7bd50c0407720
API microversion fixture is used to set the API
microversion on service client and reset it back
after test execution. That is done in setUp()
method and due to that API microversion is not
set on service client during resource_setup()
method and any API call will be requested on base
version.
To sync the complete test execution of test class
with requested API microversion, this commit moves
the API microversion setting in resource_setup()
method.
Closes-Bug: #1881863
Change-Id: Ia4b884a79cc0e50057dd57090737332bd76da37e
flavor client is compute service client so moving
this to other compute clients.
Implements: blueprint tempest-scenario-manager-stable
Change-Id: Icdbdbd388858c6accbd4f241c9ee404797c2f0e3
create_networks() method create network, subnet, router and connect
it to router but its name is sounds like it will create more than one
network. This also confusing with existing create_network() method
(without 's').
Renaming this to setup_network_subnet_with_router() which is what
this function does.
Implements: blueprint tempest-scenario-manager-stable
Change-Id: I63b3991210fd86bcc830af5beed28324797c3209
nova-network is no more available in nova and all
network request needs to move to neutron. Scenario
tests are something we should be testing with the latest
interface not the deprecated one so we can remove the
nova netowrk specific service clients and methods.
This commit moves the floating ip operation from nova-network
to neutron.
nova network create_floating_ip used to associate the FIP to
server also so with neutron create floating ip we need to
associate the FIP to server in separate method.
Implements: blueprint tempest-scenario-manager-stable
Change-Id: I6ad260731eedc2e1f56fe67b3a9e19fed8d4a38e
nova-network is no more available in nova and all
network request needs to move to neutron. Scenario
tests are something we should be testing with the latest
interface not the deprecated one so we can remove the
nova netowrk specific service clients and methods.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Co-Authored-By: Ghanshyam Mann <gmann@ghanshyammann.com>
Change-Id: I3cc88cf0a8728448fa9bd05c68784553660e07f8
_get_router() is made public by this commit as
the tempest.scenario.manager interface is meant to be
consumed by tempest plugins.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: I53e894edb6b44c25923f6075e5c6f6d4268a63f4
_create_empty_security_group() is made public by this
commit as the tempest.scenario.manager interface is
meant to be consumed by tempest plugins.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: I413ec47416d3d5133e5023360156615b8ce27b13
_get_server_port_id_and_ip4() is made public by this commit as
the tempest.scenario.manager interface is meant to be
consumed by tempest plugins.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: I25bf66fff0892a87face97660127e92479ef8100
There is need of stable implementation of create_subnet().
For the stable implementation of create_subnet() following parameters have
been added:
1. Condition to check empty str_cidr
2. More attributes in case of ipv6
3. Usage of default_subnet_pool
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: I855d07272293d209145598e27e82c7837bf0aecb
_create_security_group() is made public by this commit as
the tempest.scenario.manager interface is meant to be
consumed by tempest plugins.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: I6d862b4dd41ea86a659e6431bcb215e9e12cf35d
_get_network_by_name() is made public by this commit as
the tempest.scenario.manager interface is meant to be
consumed by tempest plugins.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: Ia102acea773bd80d933a7e0a19b447f91134f81f
_create_network() is made public by this commit as
the tempest.scenario.manager interface is meant to be
consumed by tempest plugins.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: I3f6b8e274f9b57ae8d1389a188636660854971e3
_cleanup_volume_type is made public by this commit as
the tempest.scenario.manager interface is meant to be
consumed by tempest plugins.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: Ia2116e9d1738276ae1edf566e6f5b9760d416ab9
As a part of the scenario/manager.py stabilization tracked by
the below BP the patch adds kwargs argument for create_volume_snapshot
method so that the consumers are able to pass additional parameters
if needed.
Implements: blueprint tempest-scenario-manager-stable
Change-Id: Ib58a6125b34adb932e1f282ebab6a79a6906dd73
_create_security_group_rule() is currently private
which is not necessarily required to be private
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: I0e8800d20e3cbb0d8290e4a1372a2ba543288d17
_create_loginable_secgroup_rule() is currently private
which is not necessarily required to be private
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: Ice42441874bdbc8f58eb2a07320eb484b8780502
_log_console_output is made public by this commit as
the tempest.scenario.manager interface is meant to be
consumed by tempest plugins.
Implements: blueprint tempest-scenario-manager-stable
Signed-off by: Soniya Vyas<svyas@redhat.com>
Change-Id: I78076ebb0fc955662b5ee3f67938f9fc939882d3
It's time to remove deprecated CONF.scenario.img_dir which got
deprecated in the 25.0.0 tag.
Change-Id: I86ad219265a67a1c016e8efe04677993a0437ede
Closes-Bug: #1393881
Allow consumers of create_server to pass custom arguments to
create_port method which is called from create_server one.
Fix namestart var usage in create_port - as the name of the var
suggests, it should be used to generate a name from. Therefore
the patch also adds rand_name call which we accidentaly removed
recently.
Implements: blueprint tempest-scenario-manager-stable
Change-Id: I724e0f37d4381a493217a077492046f7a4b0a2a2
Detaching a volume from an instance in Nova is an asynchronous
operation. While the request can be accepted the underlying act of
detaching the device from the instance, disconnecting the volume from
the host, updating cinder and deleting records in Nova can take some
considerable time.
As such when detaching a volume callers should continue to poll the
os-volume_attachments Nova API to determine when the underlying volume
attachment, also known as a Block Device Mapping or BDM, is removed.
Bug #1908399 outlines an issue where the scenario helper method
nova_volume_detach was being called multiple times during tests and
cleanup while only waiting for the volume status to change to available.
This allowed for a race to occur where additional requests could be made
to detach the volume while the volume attachment still remained in Nova
resulting in a 400 error being returned by n-api.
This change addresses this by switching between the volume resource
status and the volume attachment removal waiters.
Closes-Bug: #1908399
Change-Id: Ib6ae2c30be65eb444976b0330fd23d9457146284
Use proper kwargs arg instead of the named arg in rebuild_server.
The method is not used anywhere with the rebuild_kwargs set so this
change should affect anybody.
Implements: blueprint tempest-scenario-manager-stable
Change-Id: Id445d3f1daee4dec1f771580667a35baffa18e62
The external network be shared by all tenant. When it associated
to a tenant router the cidr of it's subnets cannot overlap with
tenant subnets', otherwise it will lead to bug #1903433. The related
fix patch: https://review.opendev.org/761829
So, in tempest, the external subnets need was considered when check
cidr whether in use.
Related-Bug: #1903433
Change-Id: Ief84251adb0368533570d9e9f6630de92e27c5c3
As a part of the scenario/manager.py stabilization tracked by
the below BP the patch adds kwargs argument for create_backup
and restore_backup methods so that the consumers are ableto pass
additional parameters if needed.
Implements: blueprint tempest-scenario-manager-stable
Change-Id: I2ed6eb44bccfdd92ee52d8d1f046ee44308e024d