<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/openstack/tempest.git/tempest/api/volume/admin/test_backends_capabilities.py, branch master</title>
<subtitle>opendev.org: openstack/tempest
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/'/>
<entry>
<title>Fix backward compatibility of compare volume stats</title>
<updated>2022-06-30T13:57:04+00:00</updated>
<author>
<name>Gorka Eguileor</name>
<email>geguileo@redhat.com</email>
</author>
<published>2022-06-28T10:58:43+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/commit/?id=d30577d07ceb184f7cf82b2d2f000a6381fb024d'/>
<id>d30577d07ceb184f7cf82b2d2f000a6381fb024d</id>
<content type='text'>
When we fixed tempest test "test_compare_volume_stats_values" (Change-Id
I04d0eaa1f6dba16bd11052f91a3d1d0967029ea6) to make it work with the
"storage_protocol" canonical names that are returned by Cinder master on
the get-pools call (after Change-Id Change-Id:
I07d74078dbb102490dd722029e32c74cec3aa44c) we made the test non-backward
compatible, because stable releases don't return canonical names.

For example the NFS driver will return value "nfs" in stable releases,
but the test expects it to be "NFS" and thus will fail.

This patch fixes this by converting "storage_protocol" for the result of
both the get-pools and get-capabilities calls.

So we have 3 different cases:

- Current cinder master code --&gt; Should work with current test

- Stable cinder branches with some backends (eg: NFS) --&gt; Fixed by this
  patch

- Future Cinder when get-capabilities returns canonical name (Change-Id
  I8b21fbc2c8ef29689f101f6c397550604662cd8a) --&gt; Works with or without
  this patch.

Closes-Bug: #1979826
Change-Id: I56099463791bb9a0bda18cbf7d315825562042aa
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When we fixed tempest test "test_compare_volume_stats_values" (Change-Id
I04d0eaa1f6dba16bd11052f91a3d1d0967029ea6) to make it work with the
"storage_protocol" canonical names that are returned by Cinder master on
the get-pools call (after Change-Id Change-Id:
I07d74078dbb102490dd722029e32c74cec3aa44c) we made the test non-backward
compatible, because stable releases don't return canonical names.

For example the NFS driver will return value "nfs" in stable releases,
but the test expects it to be "NFS" and thus will fail.

This patch fixes this by converting "storage_protocol" for the result of
both the get-pools and get-capabilities calls.

So we have 3 different cases:

- Current cinder master code --&gt; Should work with current test

- Stable cinder branches with some backends (eg: NFS) --&gt; Fixed by this
  patch

- Future Cinder when get-capabilities returns canonical name (Change-Id
  I8b21fbc2c8ef29689f101f6c397550604662cd8a) --&gt; Works with or without
  this patch.

Closes-Bug: #1979826
Change-Id: I56099463791bb9a0bda18cbf7d315825562042aa
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix compare volume stats for storage_protocols</title>
<updated>2022-05-25T12:14:03+00:00</updated>
<author>
<name>CaiqueMello</name>
<email>caiquemellosbo@gmail.com</email>
</author>
<published>2022-05-18T20:29:10+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/commit/?id=9b4c960f3b43544a96d1725f4a382b104e6f5bf3'/>
<id>9b4c960f3b43544a96d1725f4a382b104e6f5bf3</id>
<content type='text'>
The change [1] added to scheduler a list of
storage_protocols upon reception of the stats from
volume. Scheduler can handle a list of storage
protocol variants for NFS, NVMeOF, iSCSI and FC.

The test_backends_capabilities compare volume
stats from list_pools and
show_backend_capabilities without check if the
procotols are in the list. Once change [1]
standardized some storage_protocols
with a default value, list_pools will show the
standard protocol defined by the position zero
from the list, and show_backend_capabilities
will return the protocol defined by user as
backend. Even if, the protocol returned by
show_backend_capabilities are in the list of
allowed protocols the test will fail if this
protocol is not equal the default position
zero from the list.

This patch provide a check if
show_backend_capabilities returns
valid storage_protocols using the list of allowed
variants and set the preferred protocol to it.

This fix is needed for third-party CI systems that
may not be running tempest in a greenfield
environment. So while cinder change [2] fixed
drivers to report the canonical storage protocol
name, we can't assume that the drivers being
tested contain that fix.

[1]https://review.opendev.org/c/openstack/cinder/+/836069
[2]https://review.opendev.org/c/openstack/cinder/+/839063

Change-Id: I04d0eaa1f6dba16bd11052f91a3d1d0967029ea6
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The change [1] added to scheduler a list of
storage_protocols upon reception of the stats from
volume. Scheduler can handle a list of storage
protocol variants for NFS, NVMeOF, iSCSI and FC.

The test_backends_capabilities compare volume
stats from list_pools and
show_backend_capabilities without check if the
procotols are in the list. Once change [1]
standardized some storage_protocols
with a default value, list_pools will show the
standard protocol defined by the position zero
from the list, and show_backend_capabilities
will return the protocol defined by user as
backend. Even if, the protocol returned by
show_backend_capabilities are in the list of
allowed protocols the test will fail if this
protocol is not equal the default position
zero from the list.

This patch provide a check if
show_backend_capabilities returns
valid storage_protocols using the list of allowed
variants and set the preferred protocol to it.

This fix is needed for third-party CI systems that
may not be running tempest in a greenfield
environment. So while cinder change [2] fixed
drivers to report the canonical storage protocol
name, we can't assume that the drivers being
tested contain that fix.

[1]https://review.opendev.org/c/openstack/cinder/+/836069
[2]https://review.opendev.org/c/openstack/cinder/+/839063

Change-Id: I04d0eaa1f6dba16bd11052f91a3d1d0967029ea6
</pre>
</div>
</content>
</entry>
<entry>
<title>Adding description for testcases - volume part3</title>
<updated>2020-08-14T03:16:39+00:00</updated>
<author>
<name>zhufl</name>
<email>zhu.fanglei@zte.com.cn</email>
</author>
<published>2020-08-14T03:16:39+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/commit/?id=2480d2f9194f0148293dd10ac07e554ebe80dd1f'/>
<id>2480d2f9194f0148293dd10ac07e554ebe80dd1f</id>
<content type='text'>
When Tempest is used in customer site, often we are required to
provide a testcase list including testcase names and descriptions.
Now no this kind of doc is available, so we can add descriptions
with the format of doc string for every testcase, so later we
can generata such a testcase description list.

There are hundreds of testcases missing descriptions, so we can
add them gradually, and limit the modified files in one patch
for the convenience of reviewing.

Change-Id: I0628019dc0ea7302115aa83af33091d70a3db050
partially-implements: blueprint testcase-description
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When Tempest is used in customer site, often we are required to
provide a testcase list including testcase names and descriptions.
Now no this kind of doc is available, so we can add descriptions
with the format of doc string for every testcase, so later we
can generata such a testcase description list.

There are hundreds of testcases missing descriptions, so we can
add them gradually, and limit the modified files in one patch
for the convenience of reviewing.

Change-Id: I0628019dc0ea7302115aa83af33091d70a3db050
partially-implements: blueprint testcase-description
</pre>
</div>
</content>
</entry>
<entry>
<title>Add response schema validation for volume capabilities</title>
<updated>2018-09-29T02:26:29+00:00</updated>
<author>
<name>zhufl</name>
<email>zhu.fanglei@zte.com.cn</email>
</author>
<published>2018-09-27T03:12:33+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/commit/?id=d4f40a418ebec5e996c026d8ffa8de4c2aa67a06'/>
<id>d4f40a418ebec5e996c026d8ffa8de4c2aa67a06</id>
<content type='text'>
This is to add response schema validation for volume
capabilities, also to remove the fields check in testcases.

Change-Id: I37ac55fac80c6c237d17dad0192250774bd95d4b
partially-implements: blueprint volume-response-schema-validation
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is to add response schema validation for volume
capabilities, also to remove the fields check in testcases.

Change-Id: I37ac55fac80c6c237d17dad0192250774bd95d4b
partially-implements: blueprint volume-response-schema-validation
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed test_compare_volume_stats_values false failures</title>
<updated>2018-09-19T15:03:53+00:00</updated>
<author>
<name>Dmitriy Rabotjagov</name>
<email>dmitriy.r@sitevalley.com</email>
</author>
<published>2018-09-19T08:58:29+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/commit/?id=6a6fe591278838c6cab4ff1b3e0e4e38a42b4904'/>
<id>6a6fe591278838c6cab4ff1b3e0e4e38a42b4904</id>
<content type='text'>
In case of several cinder_volumes, and multiple backends, we may get
results in unpredictable order, which makes test to fail.
Now we order list before comparison to get rid of such errors.
Another way is transforamtion to sets, but it will drop same tuples.

Example of the problem:
testtools.matchers._impl.MismatchError: !=:
reference = [(u'Open Source', u'ceph-hdd', u'ceph'),
    (u'Open Source', u'ceph-ssd', 'ceph'),
    (u'Open Source', u'ceph-ssd', 'ceph'),
    (u'Open Source', u'ceph-hdd', 'ceph')]
actual    = [(u'Open Source', u'ceph-hdd', u'ceph'),
    (u'Open Source', u'ceph-ssd', 'ceph'),
    (u'Open Source', u'ceph-hdd', 'ceph'),
    (u'Open Source', u'ceph-ssd', 'ceph')]

Change-Id: Ibd8a56368ec0091c106f31a3395c9dd313fda650
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In case of several cinder_volumes, and multiple backends, we may get
results in unpredictable order, which makes test to fail.
Now we order list before comparison to get rid of such errors.
Another way is transforamtion to sets, but it will drop same tuples.

Example of the problem:
testtools.matchers._impl.MismatchError: !=:
reference = [(u'Open Source', u'ceph-hdd', u'ceph'),
    (u'Open Source', u'ceph-ssd', 'ceph'),
    (u'Open Source', u'ceph-ssd', 'ceph'),
    (u'Open Source', u'ceph-hdd', 'ceph')]
actual    = [(u'Open Source', u'ceph-hdd', u'ceph'),
    (u'Open Source', u'ceph-ssd', 'ceph'),
    (u'Open Source', u'ceph-hdd', 'ceph'),
    (u'Open Source', u'ceph-ssd', 'ceph')]

Change-Id: Ibd8a56368ec0091c106f31a3395c9dd313fda650
</pre>
</div>
</content>
</entry>
<entry>
<title>Move Cinder admin tests into unversioned path</title>
<updated>2017-03-30T19:26:01+00:00</updated>
<author>
<name>Ken'ichi Ohmichi</name>
<email>ken-oomichi@wx.jp.nec.com</email>
</author>
<published>2017-03-27T18:36:31+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/commit/?id=7fd5d4bbdb368c863eab7c8f14620e9918569421'/>
<id>7fd5d4bbdb368c863eab7c8f14620e9918569421</id>
<content type='text'>
As http://lists.openstack.org/pipermail/openstack-dev/2017-March/114507.html
we will use the existing Cinder V2 API tests for testing the base
microversion of Cinder V3 API also.
So it is not necessary to contain versioned path in test module pathes.
This patch just moves Cinder admin tests to unversioned pathes.

Change-Id: I2acfe5a28a2533b16565e6ebad5c820e7c3a3967
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As http://lists.openstack.org/pipermail/openstack-dev/2017-March/114507.html
we will use the existing Cinder V2 API tests for testing the base
microversion of Cinder V3 API also.
So it is not necessary to contain versioned path in test module pathes.
This patch just moves Cinder admin tests to unversioned pathes.

Change-Id: I2acfe5a28a2533b16565e6ebad5c820e7c3a3967
</pre>
</div>
</content>
</entry>
<entry>
<title>Create two new clients under tempest.lib libary</title>
<updated>2016-11-26T19:51:32+00:00</updated>
<author>
<name>lkuchlan</name>
<email>lkuchlan@redhat.com</email>
</author>
<published>2016-09-04T09:36:04+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/commit/?id=7bba16c4c3b26e4f96fa17fd2c5597a32a284588'/>
<id>7bba16c4c3b26e4f96fa17fd2c5597a32a284588</id>
<content type='text'>
There are two API v2 actions that only admin has the permission to excute,
according to:
http://developer.openstack.org/api-ref-blockstorage-v2.html#listPools
http://developer.openstack.org/api-ref-blockstorage-v2.html#showBackendCapabilities

Currently, those actions reside on BaseVolumesClient class and I think we
should separate them to new files: tempest/lib/services/volume/v2/capabilities_client.py
                                   tempest/lib/services/volume/v2/scheduler_stats_client.py

Partially implements blueprint consistent-service-method-names

Change-Id: I48e5e19331dd636a093e1817e5c2ea31534ae2c3
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There are two API v2 actions that only admin has the permission to excute,
according to:
http://developer.openstack.org/api-ref-blockstorage-v2.html#listPools
http://developer.openstack.org/api-ref-blockstorage-v2.html#showBackendCapabilities

Currently, those actions reside on BaseVolumesClient class and I think we
should separate them to new files: tempest/lib/services/volume/v2/capabilities_client.py
                                   tempest/lib/services/volume/v2/scheduler_stats_client.py

Partially implements blueprint consistent-service-method-names

Change-Id: I48e5e19331dd636a093e1817e5c2ea31534ae2c3
</pre>
</div>
</content>
</entry>
<entry>
<title>Cinder get-capabilities tests</title>
<updated>2016-07-06T09:16:55+00:00</updated>
<author>
<name>lkuchlan</name>
<email>lkuchlan@redhat.com</email>
</author>
<published>2016-06-01T08:55:47+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/openstack/tempest.git/commit/?id=b6baff8c07352df544136eb81ea2569151836581'/>
<id>b6baff8c07352df544136eb81ea2569151836581</id>
<content type='text'>
Cinder allows getting capabilities for a storage back end

Added:
- Api for get-capabilities
- Documentation reference for cinder show_pools

Tests:
- Test get capabilities for a given back end
- Test get volume stats
Note: Only admin has the privileges to perform get-capabilities action,
by default.

Change-Id: I1329a1339e1d8526f94ee57fb0ab43a78d881174
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Cinder allows getting capabilities for a storage back end

Added:
- Api for get-capabilities
- Documentation reference for cinder show_pools

Tests:
- Test get capabilities for a given back end
- Test get volume stats
Note: Only admin has the privileges to perform get-capabilities action,
by default.

Change-Id: I1329a1339e1d8526f94ee57fb0ab43a78d881174
</pre>
</div>
</content>
</entry>
</feed>
