The shares client in tempest currently catches if a share is in 'error_deleting'
state and throws a ResourceReleaseFailed exception so the tests don't have
to wait for the timeout.
However, more resources than just shares can go into error_deleting state,
snapshots for example. This patch changes the check for error_deleting to
work with all resource types.
closes-bug: 1477703
Change-Id: Idc530db6593769df8f503878ce7432270ddae086
For admin-only API add negative functional tests that try to execute them
as a non-admin user and verify that permission is denied.
Change-Id: I43d8f2f4f9a1574ea11f6b9ba8aac03d9ac3ace2
For the moment we install Manila database using only 'upgrade' migrations.
In that case we do not test Manila after using 'downgrade' migrations.
So, allow enabling of both types of migrations to verify that our downgrade
migrations do not break the world of data having functional tests running
after it.
Change-Id: If55a38692abca5e008095eb99b55adb465cad2b6
Two tests in SchedulerStatsAdminTest can fail when
a pool capabilities timestamp changes. The tests
really only need to test the key values to be
more reliable.
The 2 tests are:
* test_pool_list_with_filters and
* test_pool_list_detail_with_filters
Change-Id: I1bd8307da6c98764b12a948eed20a9f522173144
Closes-Bug: #1470928
Using approach without handling of share servers we have bigger load for
volume creation in Cinder using Generic driver. So, reduce amount of threads
to avoid errors for Cinder volume creations that appear because of lack of
free space.
Change-Id: I738dd9837eb6f951899aef091a6aafe8a4a0945b
Fix handling of return value from create_share
in resource_setup.
These test classes (part of 'test_rules') are
not currently used in CI and are not runnable
because the resource_setup is still expecting a
tuple to be returned from create_share, but that
method no longer returns a tuple.
This fix makes the following tests runnable:
- test_create_delete_user_rule
- test_create_delete_ro_access_rule
Change-Id: Ia4324e2bc9ea4cf80ed61e7c23110e9f4068a59b
We have several entities in Manila that do have statuses:
- Shares
- Snapshots
- Share Servers
- Share Access Rules
But some share and all share server statuses use uppercase for it.
Make all of them consistent and transform them to lowercase.
Add migrations for it.
Also, remove two unused statuses and reuse all statuses from common place.
Change-Id: I53e6a768c98977d3d94e761349b7446a9dfb4936
Closes-Bug: #1459598
Models "security_services" and "network_allocations" have attr "status" that is
not used indeed. So, remove it from models and add appropriate migrations.
Closes-Bug: #1459660
Change-Id: Idb3a69916e8052b16c9daebb9bb67b09d1714c46
In order to transform the Manila tempest test into a consumable
plugin all dependency to tempest must be limited. Remove the usage
of tempest.utils.test_utils due it is optional for the scenario
test.
Change-Id: I7d1df234834e30d452803acfb6d93c4ed32f0599
Partly-implements: bp tempest-plugin-interface
ServiceClient will be removed soon and there is no reason to use
it. A client can directly be inherited from RestClient instead.
Change-Id: Ia400bcf08a271f1e596f33f72ee94e33d1f682ad
Partly-implements: bp tempest-plugin-interface
Tests read/write action across two launched vms. Adapt basic_ops
test to support multiple vm instances.
Change-Id: I3e14fab3c70f3c109d22f172ba2ad49db5914d33
Partially-implements: blueprint scenario-tests
To make the script more flexible to include more or less tests,
Allow the test regex to be defined prior to calling to post_test_hook.sh.
This will also allow the various jenkins jobs to define the regex directly
instead of relying on their name.
Change-Id: Id64d761e7ad035a2e6d6351b04b9f224aa3b8e86
ICMP ping was a workaround to proof that a connection between
storage server and VM was working. Since it's now supporting actual
mount operations this is just optional. By default this check is
deactivated.
Change-Id: I0eba48abc4583b2d1a4d690c92137941463730c1
Partially-implements: blueprint scenario-tests
This adds mounting and unmounting of a created share. In order
to be sure that the nfs/cfis tools are available in the used image
it's using the default Ubuntu nfs/cifs image. Since cloudinit
is not supported for this image it's using username/password
authentication as workaround.
Change-Id: I77720ba5beb836614728081bbf74b44991d6e284
Partially-implements: blueprint scenario-tests
Currently, Tempest tests for Manila do verify response codes for API calls.
Move such verifications to client module to have verifications in one place.
Remove response part from returning data to tests as unnecessary.
Fix all tests that have such verifications.
Change-Id: If9f32c616700afb4f3aa1acd6d5ed96a3ce6783b
Remove the broken XML support presently available in Manila
in order to comply with the general direction among other
OpenStack projects to support JSON only.
Change-Id: Ibb542fa223f7f7d1bf95f3d1f568987ef839cd12
Closes-Bug: #1440782
In order to make the access rule more specific the allow rule
will be created using the vm ip address.
Change-Id: I6768135d5f919e20b52c7019fa1585d6c1da6529
Partially-implements: blueprint scenario-tests
Manila allows to make share type as private and set access to some projects
by its ID. This functionality is not covered at all by tempest tests.
Change-Id: I8ab83da87372b97b55dae5de6e649fbf44e068e3
Closes-Bug: #1440169
This patch allows the following Manila tempest options to be set,
rather than hardcoded, in Jenkins CI jobs:
- suppress_errors_in_cleanup
- run_manage_unmanage_tests
- multitenancy_enabled
Change-Id: If566501cd5c97be37c6e018080e604fd76b6605d
This commit ensures that when one creates a share from a snapshot
the new share has the same share-type as the share on which the
snapshot is based.
Closes-bug: 1420369
Change-Id: Icad04edd3eab6d40e56352a9a7d298b6efd80e93
We have three tempest tests that are skipped due to bugs that won't be fixed.
Delete them as useless.
Change-Id: I5faa841887de24f483fdb3a0b5a413ecbb3717f7
Closes-Bug: #1431939
Adapt manager and add first initial test for Manila. A ping check will
be performed to check the connectivity from the VM to the share
server/service. The test can be triggered using the experimental test
job introduced by [1].
Open todo's that can be addressed later:
- Support of flat network
- More flexible configuration options
[1]: https://review.openstack.org/#/c/164102/
Change-Id: Ie72e877a88c337866e9cb591f8099218d84ee5dd
Partially-implements: blueprint scenario-tests
API 'manage' allows us to set name and description for newly managed share.
But it always sets empty strings for both. Root cause for it lays in different
naming of mentioned attrs in API and DB layers.
So, make API 'manage' understand both names (API-like and DB-like) for each of
mentioned things.
Change-Id: I5a752c7960492070c3f5ad5974156c4dea324ac1
Closes-Bug: #1434056
Share types have one required extra spec - "driver_handles_share_servers".
And API disallows us to set some additional extra specs if we do not provide
required one too. It should not be so, because if we do not want to update
already existing spec then we should not be obligated to provide it.
Change-Id: Id2b2c9dfae3da551ae79e66199a84773f333b883
Closes-Bug: #1435819
Wikipedia's list of common misspellings [1] has a machine-readable
version. This patch fixes those misspellings mentioned in the list
which don't have multiple right variants (as e.g. "accension", which can
be both "accession" and "ascension"), such misspellings are left
untouched. The list of changes was manually re-checked for false
positives.
[1] https://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
Change-Id: I2446995aa8b7c89c7f78c056f9ddb6d8e7899e4e
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
We are forced to sync our tempest plugin to latest tempest due to changes
done to CI system, that are based on recent tempest project changes.
Such as reusage oslo libs instead of built-in incubator code, that leads to
changes of config opts that are set/read within tempest config used in CI.
Change-Id: I3e64dc373f5d81034afc4c5d8dfd5d7f4abaa603
Closes-Bug: #1434958
Add implementation of manage_existing() to Generic driver.
Generic driver accepts only one driver_option 'volume_id'.
If an administrator provides this option, then this Cinder
volume will be managed by Manila as well.
Partially implements bp manage-shares
Change-Id: I8767a7af75d575c57e8708563fa4a6bf2f4aa8ad
bashate checks shell script syntax (similar to pep8 for python). Fix
currently available scripts and enable the check for the scripts.
Change-Id: I33dc8c44a58f40e8bca9e29cd717caf46e5cd586
The scheduler API 'get_pools' was copied from Cinder and has several
problems. The REST endpoint, /scheduler-stats/get_pools, is not a
REST-appropriate name. The API allows filtering but filters are not
currently supported by the Manila scheduler. The API was added as an
extension, not part of the v1 API as it should be. After restarting
the scheduler service, the API doesn't return any data until a share
has been created (Cinder was used as a model for fixing this one).
This patch fixes all of these issues.
Closes-Bug: #1422042
Change-Id: I7e32efb5390fd4b0a62f644ca5a12dcad14d8a9b
One of tests creates share network and then share based on it. Both have
default values for cleanup order - either in after test method or after whole
test suite. Default value for share is deletion afer test suite, but for
share network is after test method. That caused errors for clean up.
Change-Id: I5a33bc5adc3a9aa84f9ce0dd6a5df204c5bb7452