Commit Graph

28 Commits

Author SHA1 Message Date
Marc Koderer 09798caae1 Use Tempest plugin interface
Make use of the Tempest plugin interface instead of copying Manila
files into Tempest. This will remove the burden to port Manila
tests onto Tempest master recurrently.

This ports all existing Manila Tempest test to the new structure.

It uses manila_tempest_tests as new top folder for all Tempest
tests. It follow the model of Heat (see [1]).

[1]: https://github.com/openstack/heat/tree/master/heat_integrationtests

Change-Id: Ie5ed64a6777ed1acf8dd56522c26705ae897596d
Partly-implements: bp tempest-plugin-interface
Depends-On: I26dd32b1de8cceeaa6dc674092efec683df71889
2015-09-05 00:36:33 +00:00
Jenkins e38ce9b686 Merge "Add tempest tests for "cert" based access type" 2015-09-01 08:57:49 +00:00
Igor Malinovskiy 91e438b40e Add Share instances Admin API
Add admin API which allows:
- Get share instances of given share
- Get all share instances
- Get share instance details by id
- Reset share instance state
- Force-delete share instance

Add appropriate unit and tempest tests.

APIImpact
Change-Id: Ie96dfc18b491cb4d9705da4eaca5bc4ce43225ea
Partially-Implements: blueprint share-instances
2015-08-31 13:41:17 +03:00
Valeriy Ponomaryov af6814f9ca Add possibility to filter back ends by snapshot support
On last midcycle meetup was decided to make snapshots optional feature.

Features:
 - Add new boolean capability 'snapshot_support' to base share driver
   so every existing share driver will inherit it. Make value of it be
   calculated from the fact of redefinition of three main driver
   methods for snapshots 'create_snapshot', 'delete_snapshot' and
   'create_share_from_snapshot'.
- Set extra spec 'snapshot_support' with share type creation by default
  to 'True'
- Restrict deletion of extra spec 'snapshot_support' that is expected
  to exist
- Allow to redefine new extra spec 'snapshot_support'
- Restrict API 'snapshot create' for share created with
  share type that has extra spec 'snapshot_support' equal to 'False'.
- Add migration where new extra spec 'snapshot_support' is added
  to all share types that do not have it yet.

Partially implements bp snapshots-optional
Change-Id: I069d9e911c7d7a708fa518b38ed10572a45e5f42
2015-08-26 23:05:37 +03:00
Ramana Raja 3178e70cb5 Add tempest tests for "cert" based access type
Closes Bug: #1486006

Change-Id: If774eabee53c32acd37ba1c49e7b64f4383cc1bc
2015-08-26 22:57:28 +05:30
Igor Malinovskiy 15fb464e5d Add availability zones support
Rework availability zones support which was inherited from Cinder:
- Add public API extension
- Preserve AZ if creating a share from a snapshot
- Always set AZ in Share API or Share Manager
- Update db schema and create db migration
- Update appropriate unit tests

APIImpact
Partially-Implements: blueprint availability-zones

Change-Id: Iea9fbc3fea5c0128772115c028989121f397e0c5
2015-08-26 18:48:16 +03:00
Goutham Pacha Ravi 2521b16d36 Add tempest tests for REST API microversions
This patch adds tempest tests that validate Manila's versions API. Since the
versions API is the first API to be versioned in Manila, the code in this
patch makes requests to invoke the versions API with valid and invalid
version codes and evaluates responses.

Change-Id: I4046f020f0e129dab639f99390367efda9cf4551
2015-08-25 19:48:17 +00:00
Valeriy Ponomaryov 7b244b33b7 Allow Tempest to skip snapshot tests
On last midcycle meetup was decided to make snapshots optional feature.
So, at first step, add possibility to skip all functional tests that
use snapshots.

Partially implements bp snapshots-optional

Change-Id: Ib7dd3303e3974298439b6ac543b9df628b69e6ae
2015-08-12 08:49:27 +00:00
Igor Malinovskiy cc97cfe8e0 Implement shrink_share() method in Generic driver
- Add implementation for shrink_share() method
- Add methods to generic driver helpers:
  - disable_access_for_maintenance()
  - restore_access_after_maintenance()
- Add appropriate unit tests
- Add appropriate tempest tests
- Update generic driver documentation

Partially implements bp shrink-share-in-generic-driver

Change-Id: I256db947b65f66dfe514e0c0b350c1949da7f7be
2015-07-20 18:11:08 +03:00
Igor Malinovskiy d3d5d77ab6 Use new manila-service-image with public-key auth
- Update devstack plugin
- Update tempest scenario tests

Implements bp reproducible-server-image

Change-Id: I7c71ee2f20074e04021b5c95d8c18096d21b0404
Closes-Bug: #1421104
2015-06-22 16:03:13 +03:00
Igor Malinovskiy 61d006f278 Implement tempest tests for share extend API
- Add positive and negative share extend test

Change-Id: Ibf2416dcc51a547ca384833bbc3dade6e530ca43
2015-06-04 06:41:07 +00:00
Marc Koderer 0d9c1e6489 Add mount/umount in 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
2015-04-17 19:26:54 +02:00
vponomaryov 8376ca41fc Sync tempest plugin with latest tempest
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
2015-03-22 13:23:46 +02:00
Igor Malinovskiy e1746d7137 Implement manage/unmanage support in generic driver
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
2015-03-18 20:43:51 +02:00
vponomaryov e0046d4e6c Allow tempest to skip RO access level tests
With implementation of RO access level support in API were added tempest tests
that are run if access rule tests enabled in general.

We should provide possibility to disable them, because drivers can have no
support for RO access. In case of Generic Driver it worked because it did not
raise errors and created RW access indeed instead of RO.

Define config opt 'enable_ro_access_level_for_protocols' (list type) to specify
explicitly whether RO tests should run or not for specific share protocols.

Examples:
enable_ro_access_level_for_protocols = nfs
enable_ro_access_level_for_protocols = cifs
enable_ro_access_level_for_protocols = nfs,cifs

Change-Id: I980be81399ac7449813bbffcbe3d77b7a2036c43
2015-03-05 17:48:08 +00:00
Thomas Bechtold 071d0b59c1 Switch to using oslo_* instead of oslo.*
The oslo team is recommending everyone to switch to the
non-namespaced versions of libraries. Updating the hacking
rule to include a check to prevent oslo.* import from
creeping back in.
oslo.messaging is the only exception because this package doesn't
currently support non-namespaced imports.

Change-Id: I3987e651bc880c8ffa7c0105df0298679dcd3a43
2015-01-27 09:19:50 +01:00
vponomaryov d36a343608 Sync tempest plugin with latest Tempest
Tempest has been changed and our plugin no more compatible with it.
Update files that are broken and bump Tempest commit that is used as HEAD.

Change-Id: I5b13d060b552154345ecfc5c1c6679496f3f3ea6
2015-01-10 11:44:11 +00:00
Valeriy Ponomaryov 92cfadaaf0 Add retries for share creation within Tempest plugin
Add possibility to retry share creation to be able to avoid failures
caused by unstable environment.

To enable it just update config opt "share_creation_retry_number" in config
group "share". This opt is integer and if it equals to or less than zero (0),
then no recreations will be performed.

All shares created with recreation logic will be cleaned up in the same way
as it was before.

Enable 2 retries for CI Tempest jobs.

Implements blueprint retry-for-functional-tests

Change-Id: I2b72b3908b8c87e4ce67b0aa277c19a2339681b1
2014-12-28 11:58:31 +02:00
Ponomaryov Valeriy 185f5acfe8 Add possibility to suppress errors in Tempest plugin cleanup
Now if something can not be cleaned up we get error and in case of CI job it is
'fail' of job. We should be able to suppress such errors.
Added config option 'suppress_errors_in_cleanup' that allows us to raise errors
when it is 'False' and log errors when it is 'True'.
Disable it by default.
Enable it for CI Tempest jobs.

Implements blueprint tempest-clean-up-suppress-errors

Change-Id: I03a39cc020f52d54211369c8f5cbfc2e14651a21
2014-12-23 19:46:50 +02:00
Andreas Jaeger 4a49b5e562 Flake8: Fix E128
Fix and enable E128:
E128 continuation line under-indented for visual indent

Partial-Bug: #1333290

Change-Id: I72f673d291c388fc4df19e9585fb02e23c21fec3
2014-08-27 12:46:30 +02:00
Valeriy Ponomaryov 1de1a187d5 Rename 'sid' to 'user' in access rules and sec services
Rename 'sid' (secure identifier) to 'user' for better understanding by user.
Changed parts:
- db entities
- db migration
- share access rule type
- security services
- tempest tests

Change-Id: I527064508f13bd4dc658746970c2606098199c1c
2014-08-15 13:29:40 +00:00
Christian Berendt 799319baab Enabled hacking checks H305 and H307
* H305  imports not grouped correctly
* H307  like imports should be grouped together

Change-Id: I9dc5f995ea07d7c319d944e847a9d1c126937240
2014-07-20 18:48:31 +02:00
vponomaryov 18eea270ae Add multibackend test suite for tempest plugin
Partially implements: blueprint multibackend-installation-tempest-job

Change-Id: I3069be145ca4177612340e2bcef60941dfb18d46
2014-05-24 09:37:36 +03:00
Valeriy Ponomaryov f64c26594d Added multibackendency to devstack plugin
This commit allows to configure devstack to
install one or two share backends.

Two backends will have same configuration, except
share_backend_name option and group name.

NOTE: proper usage of two generic drivers
      is blocked by b_u_g 1321340

Partially implements: blueprint multibackend-installation-tempest-job

Change-Id: I4fb6fcccbf3663940e8fbb3cc842831ed62afafa
2014-05-23 13:00:28 +03:00
vponomaryov 5f7c563699 Enabled ip rules tests for cifs in tempest
Change-Id: I9eb3c51c2609794801024c883a25aa4508b5a400
2014-05-13 17:48:43 +03:00
vponomaryov f7c812a33e Update tempest plugin, make it more stable
Change-Id: I07a159e95c0c1a01f150b648af23d6acf2fe8306
2014-03-14 22:58:37 +02:00
vponomaryov 3e290e7051 Add handling of share-networks to tempest plugin
After making multitenant generic driver default driver
for devstack, tempest should be able to create share-networks
depending on networks of tenant to be able to create shares.

Change-Id: I43a744eb42442c8d6367d894773adc05a5f3f600
2014-03-10 00:12:52 +02:00
vponomaryov 0760c35223 Update plugin for tempest
Partially implements bp: tempest-job

Change-Id: I7119d4682434b54c2804d4bb2101712fbaafd616
2014-02-27 19:43:10 +02:00