manila/manila/api/v1
Goutham Pacha Ravi 4249e94c6b Allow configuring availability_zones in share types
Administrators configure share types and make them
available to projects within an OpenStack cloud.
These share types will define capabilities to match
back-end storage pools that manila provisions shares
within. Administrators may want to limit share types
to specific Availability zones, given they may have
different classes of storage in different availability
zones in the cloud. A major use case of this is edge
computing, where, provisioning can be driven to specific
edge locations with the help of share types.

This commit will:

- Introduce 'availability_zones' as a new common share type
  extra spec that is user visible when configured.
- In and beyond microversion 2.48, validate that the AZ
  chosen in the POST /shares API is supported by the configured
  availability zones for the share type being used.
- Share types can be filtered by AZs through extra-specs:

  $ manila type-list --extra-specs availability_zone=nova

  now gives you all types that explicitly (and implicitly)
  are supported within the AZ 'nova'.

- Improve experimental APIs:
  - Add validation of AZ to POST /share-replicas
  - Add validation of AZ to POST /share-groups
  - Add validation of AZ to
    POST /shares/id {'action': 'migration_start'}

- Also fix old unit tests by using a helper method to
  generate appropriate mock values.

DocImpact
Change-Id: Idf274cd73e3b1b33f49668fca768ae676ca30164
Implements: bp share-type-supported-azs
2019-02-13 17:39:48 +00:00
..
__init__.py Renamed cinder to manila. 2013-09-02 09:59:07 +03:00
limits.py Add possibility to run 'manila-api' with wsgi web servers 2017-04-10 12:49:20 +03:00
router.py [Trivialfix] Remove the useless parameter 'ext_mgr' 2018-06-09 22:39:24 +00:00
scheduler_stats.py speed up GET scheduler-stats/pools/detail 2018-12-20 13:00:46 +00:00
security_service.py move securiy service error explanation from comment 2018-04-11 20:11:40 +02:00
share_manage.py Use class name in invocation of super 2018-06-06 17:47:18 -07:00
share_metadata.py Support metadata for access rule resource 2018-07-20 23:31:48 +08:00
share_servers.py use http code constant instead of int 2018-03-20 09:26:59 +00:00
share_snapshots.py use http code constant instead of int 2018-03-20 09:26:59 +00:00
share_types_extra_specs.py Allow configuring availability_zones in share types 2019-02-13 17:39:48 +00:00
share_unmanage.py Use class name in invocation of super 2018-06-06 17:47:18 -07:00
shares.py Allow configuring availability_zones in share types 2019-02-13 17:39:48 +00:00