3044 Commits

Author SHA1 Message Date
zengyingzhe
832712f2dc Fix dedup/compression description in doc
In the capabilities section of capabilities_and_extra_specs.rst,
the description of dedupe and compression all say that drivers
cannot report to the scheduler both support and non-support,
like [True, False].

But since Mitaka, this kind of specifying is allowed.
So change the doc contents to fit the actual logic.

Change-Id: Ie871abc49bd1bc58566111f85d89228046865b5c
Closes-Bug: #1621707
2016-09-12 15:31:20 +08:00
Jenkins
29c05e72f5 Merge "[ZFSonLinux] Fix share migration support" 2016-09-10 15:47:07 +00:00
Valeriy Ponomaryov
a5c2297ded [ZFSonLinux] Fix share migration support
Current implementation of share migration works only if we use
local shell executor. So, refactor approach for it to make work
with both shell executors - local and remote (SSH).

Change-Id: Ibe31bf52006040ea26badfa7236ed67559f7aded
Closes-Bug: #1620502
2016-09-07 18:36:55 +03:00
Jenkins
7a16eb685b Merge "Correct reraising of exception" 2016-09-03 13:12:52 +00:00
Jenkins
df008f20b5 Merge "Add documentation for EMC Unity Driver for Manila" 2016-09-03 12:19:03 +00:00
Jenkins
108d3b177d Merge "Add missing filter function in HSP driver" 2016-09-02 17:57:48 +00:00
Marc Koderer
8328ebde24 Add multi-segment support
Neutron ML2 mechanisms allows multiple network segments. A net-show
call with a multi-segment setup won't return a single network-type
or segmentation id. Instead it returns a list of it with a certain
hierarchy.

Co-Authored-By: Daniel Gonzalez <daniel@gonzalez-nothnagel.de>
Change-Id: I3570752920d897c11cacb9e4a0b0d012ae2ce13a
Partially-Implements: bp manila-hpb-support
2016-09-01 20:58:18 +00:00
Jenkins
345b8021ec Merge "Add binding_profile option for backends" 2016-09-01 20:56:23 +00:00
Jenkins
531139a759 Merge "Nexenta: adding share drivers for NexentaStor" 2016-09-01 20:31:55 +00:00
Jenkins
d2201f800b Merge "Unity: Use job for NFS share creation" 2016-09-01 15:50:28 +00:00
Marc Koderer
105e55ce9a Add binding_profile option for backends
In order to do port binding of physical ports it must be
specified which switch and switch_port are used. It is
expected for HPB that the neutron driver handles the
logic of dependent core switches.

Co-Authored-By: Daniel Gonzalez <daniel@gonzalez-nothnagel.de>
Change-Id: I08a889a3bff6289397aaed59846e893ba5df36e3
Partly-implements: bp manila-hpb-support
2016-09-01 12:36:25 -03:00
Alexey Khodos
1fd7e88191 Nexenta: adding share drivers for NexentaStor
Share drivers to support NexentaStor4 and NexentaStor5 via
NFS protocol. Supports all minimal required features.

Implements: blueprint nexenta-manila-driver

DocImpact

Change-Id: Ib8b8525397626162968458ec837f9239ff5dbb2b
2016-09-01 18:06:14 +03:00
Jenkins
44990d0ccb Merge "Remove enable_v1_api and enable_v2_api config opts" 2016-09-01 14:53:00 +00:00
Jenkins
368093fa64 Merge "[ZFSonLinux] Add share migration support" 2016-09-01 13:56:54 +00:00
Jenkins
659e8c9879 Merge "[Dummy driver] Add share migration support" 2016-09-01 13:56:47 +00:00
Jenkins
3d4a94bfb7 Merge "Add share type change to Share Migration" 2016-09-01 13:56:40 +00:00
Jenkins
8bbfd842bf Merge "Updated from global requirements" 2016-09-01 13:36:22 +00:00
OpenStack Proposal Bot
b9c15c7f7e Updated from global requirements
Change-Id: Id3abd59bbf64f3fdd3602c6c789082c449dc1a53
2016-09-01 09:16:11 +00:00
Lucian Petrut
a3579839f9 Windows SMB: implement 'update_access' method
This change implements the 'update_access' method within the Windows
SMB driver with respect to the semantics specified in the base driver.

The 'allow_access' and 'deny_access' methods are now removed.

Closes-Bug: #1618556

Change-Id: I2b52c48331a2c94ec4dcf34779cac5d1b73a121b
2016-09-01 06:36:16 +00:00
Lucian Petrut
d6fb9e5064 Windows SMB: remove redundant operations
When setting access rules, we first set the rules per share,
execute the cmdlet which will update the filesystem ACLs based on
the share ACLs, and then use icacls to set filesystem ACLs again.

This is redundant and the last step can be dropped.

Change-Id: I3a5db71c697605e74243df0cf1d184d0b0fd4e8e
2016-09-01 06:36:03 +00:00
Valeriy Ponomaryov
754750a11d [Dummy driver] Add share migration support
Add 'fake' share migration support to 'dummy' driver
for ease of interfaces testing.

Change-Id: Ifd444e38a9678e98c156b7ce658aa1b50c13b24c
2016-09-01 05:45:27 +00:00
Valeriy Ponomaryov
976e2d58cb [ZFSonLinux] Add share migration support
Add support of share migration feature to ZFsonLinux driver.

Implements BP zfsonlinux-share-migration

Change-Id: If9e1fec9a6d4f96d2bb5c176c6249fafc7e3e891
2016-09-01 05:45:18 +00:00
Jenkins
08e8d130fe Merge "Fix test bugs for replication CI" 2016-09-01 04:58:34 +00:00
Jenkins
5da07076d0 Merge "Windows SMB: avoid default read share access" 2016-09-01 04:39:06 +00:00
Jenkins
07563cff3d Merge "HPE 3PAR driver pool support" 2016-09-01 01:35:45 +00:00
Rodrigo Barbieri
6dad1666de Add share type change to Share Migration
This patch adds a 'new_share_type_id' parameter to Share Migration,
where the destination share can be provisioned under a different
share type of choice.

Host-assisted migration handles it by creating a totally new share,
as before.

Driver-assisted migration handles by creating the destination
instance model with the new share type, the driver is responsible
for making the necessary changes to satisfy the provided model.

In order to accomplish this, a database change was required,
transferring the 'share_type_id' field from the 'shares' table
to the 'share_instances' table.

APIImpact

Partially implements: blueprint newton-migration-improvements
Change-Id: I3200eaaa5b66d9b8ce1cbd16c1658db8516c70fb
2016-08-31 21:07:47 -03:00
Jenkins
8c368781f5 Merge "Change assertTrue(isinstance()) by optimal assert" 2016-08-31 19:56:52 +00:00
Jenkins
98da15991a Merge "Share migration Newton improvements" 2016-08-31 18:05:02 +00:00
Jay Mehta
0bbf54f84f HPE 3PAR driver pool support
3PAR driver so far did not support multiple pools per backend.
This patch aims to allow support for multiple pools per backend.

The configuration now accepts multiple pool entries per backend.
In manila.conf, hpe3par_fpg was used to represent one pool (FPG in
terms of 3PAR) under a backend. Now, hpe3par_fpg can be used multiple
times within a backend, each entry will represent a pool (FPG name).

Sample configuration to supply pools 'testfpg' and 'sharenetfpg':
hpe3par_fpg = sharenetfpg, 10.50.158.8
hpe3par_fpg = testfpg, 10.50.158.7

Note that the configuration now also accepts IP address of share
server. 3PAR supports up to 4 IP addresses per share server. So the
format to supply multiple share server IP addresses per pool:
hpe3par_fpg = fpgname, IPaddress1, IPaddress2, IPaddress3, IPaddress4

If the share server is already setup and configured with IP address,
it need not be passed with hpe3par_fpg.

When DHSS=True, the format remains same as above, except the IP
address of share server is silently ignored if provided.

Obsoletes: hpe3par_share_ip_address from config

Release note added.

Change-Id: Ic08452f3ddf6b7b2f2dc1ba5ee32b4ebe5ae2614
Implements: blueprint hpe3par-pool-support
2016-08-31 10:52:28 -07:00
Rodrigo Barbieri
9639e72692 Share migration Newton improvements
At Austin 2016 summit there were several improvements to
Share migration feature discussed. This patch implements
these changes.

Changes are:
- Added 'Writable' API parameter: user chooses whether share must
remain writable during migration.
- Added 'Preserve Metadata' API parameter: user chooses whether
share must preserve all file metadata on migration.
- Added 'Non-disruptive' API parameter: user chooses whether
migration of share must be performed non-disruptively.
- Removed existing 'Notify', thus removing 1-phase migration
possibility.
- Renamed existing 'Force Host Copy' parameter to 'Force
Host-assisted Migration'.
- Renamed all 'migration_info' and 'migration_get_info' entries to
'connection_info' and 'connection_get_info'.
- Updated driver interfaces with the new API parameters, drivers
must respect them.
- Changed share/api => scheduler RPCAPI back to asynchronous.
- Added optional SHA-256 validation to perform additional check if
bytes were corrupted during copying.
- Added mount options configuration to Data Service so CIFS shares
can be mounted.
- Driver may override _get_access_mapping if supports a different
access_type/protocol combination than what is defined by default.
- Added CIFS share protocol support and 'user' access type
support to Data Service.
- Reset Task State API now allows task_state to be unset using
'None' value.
- Added possibility to change share-network when migrating a share.
- Bumped microversion to 2.22.
- Removed support of all previous versions of Share Migration APIs.

APIImpact
DocImpact

Implements: blueprint newton-migration-improvements
Change-Id: Ief49a46c86ed3c22d3b31021aff86a9ce0ecbe3b
2016-08-31 12:38:14 -03:00
Peter Wang
9edb93df7e Unity: Use job for NFS share creation
This patch consolidates NFS file system creation
and share creation in one rest call.

Change-Id: I513ec9d4bd54e9c741caed4e94e115b0fe44dd0f
Closes-bug: #1618824
2016-08-31 13:46:02 +00:00
gecong1973
f11147078c Correct reraising of exception
When an exception is caught and rethrown,
it should call 'raise' without any arguments
because it shows the place where an exception
occured initially instead of place where
the exception re-raised

Change-Id: I7e11d11ee07fcc6e149d1349e4aba9f86b890c49
Closes-Bug: #1616696
2016-08-31 11:53:04 +00:00
Lucian Petrut
b831976977 Windows SMB: avoid default read share access
By default, when a Windows SMB share is created, 'Everyone' will
have read access.

This is a problem, since we call 'Set-SMBPathAcl', which will apply
the share ACE at the filesystem as well. This means that anyone
that can log in to the share server will have read access to the
share.

We'll avoid this by granting read access to the 'NULL SID' when
creating the share, avoiding the default access to 'Everyone'.

Closes-Bug: #1612746

Change-Id: I913a887f24db7f1354008aacebcd0f477887aeef
2016-08-31 09:06:11 +00:00
gecong1973
f16e389110 Change assertTrue(isinstance()) by optimal assert
Some of tests use different method of assertTrue(isinstance(A, B))
The correct way is to use assertIsInstance(A, B) provided by testtools

Change-Id: Ie21fb409edf558409aa4bf5dfe59893c5b544aa8
2016-08-31 00:26:54 +00:00
Jenkins
68f2e8e286 Merge "Fix Manila HNAS driver managing a share twice" 2016-08-30 15:40:36 +00:00
Rodrigo Barbieri
c7fe51e79b Fix Share Migration improper behavior for drivers
Tempest tests were not appropriate for driver-assisted migration,
so this was fixed.

Also, improved docstrings and fixed workflow for drivers when
implementing 2-phase migration to be accurate with tempest and
handle AZs, which were previously locked to the source share's
AZ.

Driver-assisted migration now creates an additional
share instance to better handle and support driver methods.

Updated allow_access and deny_access APIs to allow users to mount
migrating shares before issuing 'migration-complete'.

APIImpact

Closes-bug: #1594922
Change-Id: If4bfaf7e9d963b83c13a6fea241c2eda14f7f409
2016-08-30 08:30:21 -03:00
Jenkins
0ef0da0137 Merge "Implement replication support in huawei driver" 2016-08-30 04:05:31 +00:00
Alyson Rosa
12f95b1373 Fix Manila HNAS driver managing a share twice
Manila HNAS driver splits the path to manage a share by ':', so when
passing a path with two colons the last part is ignored, it causes the
possibility to manage a share twice. For example:

manila manage --name test1 --share-type hds ubuntu@hnas#Hitachi nfs
172.24.49.26:/shares/f5b21612-9841-42c8-bec4-ca32ba70a9ae

and

manila manage --name test2 --share-type hds ubuntu@hnas#Hitachi nfs
172.24.49.26:/shares/f5b21612-9841-42c8-bec4-ca32ba70a9ae:1

Changing the split to search for ':/shares/' prevents a share to be
managed twice.

Change-Id: Ie97f749d7093db69a757db7c04041f6f649c7ce9
Closes-Bug: #1613683
2016-08-29 14:27:59 -03:00
zengyingzhe
c51e8b6940 Fix test bugs for replication CI
Change-Id: I9e1986a44d915adcece41a3db8fccae8ca8045d9
2016-08-29 11:46:20 +08:00
Jenkins
027207831b Merge "Clean imports in code" 2016-08-28 19:28:01 +00:00
Jenkins
27b9ce2d81 Merge "Clarify grenade failure message" 2016-08-28 19:27:54 +00:00
Jenkins
41dfe154dc Merge "Updated from global requirements" 2016-08-27 19:54:56 +00:00
Jenkins
1b2f186582 Merge "Fix connectivity problem in Scenario job" 2016-08-27 19:54:50 +00:00
zhaohua
88898b553d Implement replication support in huawei driver
Implement the following interfaces:
  - create_replica
  - delete_replica
  - promote_replica
  - update_replica_state

DocImpact

Change-Id: I1c52c9f67daa8440050a03e7e9ead5ca32ded458
Implements: bp huawei-driver-support-replication
2016-08-27 07:47:48 +00:00
Jenkins
ce0774264c Merge "3PAR: Add update_access support" 2016-08-27 04:48:14 +00:00
Rodrigo Barbieri
088747cb77 Fix connectivity problem in Scenario job
In Scenario job, tests consist of VMs mounting shares
provided by share servers.

Admin network is used by share migration tests and is
by default used in other tests as well. Previously it
used the same network address range as tenant networks
(used by VMs) and there was no conflict.

Recently some unknown change broke connectivity between
VMs and share server in scenario job. It seems as there
is now a conflict between those network addresses ranges.
This patch changes the admin network address range,
removing the existing conflict.

Closes-bug: #1616115

Change-Id: I5bdb70cae4eab2930f3f559a621643ad732909bb
2016-08-26 20:43:12 -04:00
OpenStack Proposal Bot
e562d2145e Updated from global requirements
Change-Id: I09c7fca6f9e9e48fa85e161faf7fce2300669438
2016-08-27 00:35:25 +00:00
Jenkins
3b73777227 Merge "Add neutron driver for binding" 2016-08-27 00:07:10 +00:00
Rodrigo Barbieri
317a919fb4 [CI FIX] Fix 'ip route' matching multiple subnets
Existing 'ip route list proto kernel match <subnet>' may match
subnets different than the one specified when specific CI
nodes are selected to run CI job. This patch changes the command
to prevent unrelated subnets from being listed.

Change-Id: Ibb59a8098a1b86429651c25a3b641eda9b44c8fa
Depends-On: I62da6f14eb53c6d3c74442a626b7ea0fd37a7cad
Closes-bug: #1617417
2016-08-26 20:45:38 +00:00
Cao Xuan Hoang
84551bf346 Clean imports in code
This patch set modifies lines which are importing objects
instead of modules. As per openstack import guide lines, user should
import modules in a file not objects.

http://docs.openstack.org/developer/hacking/#imports

Change-Id: I4e5a3a2637594e95b1d9e870752bc6ca690144af
2016-08-26 16:46:07 +07:00