cinder/cinder
John Griffith b245225d5e Disallow modification of in use Volume Types
Modifying a Volume Type doesn't actually update any
volumes that are currently using said Volume Type. Given
that this is an admin only operation it was never really
too much of a concern.

There has been some issues reported however where an admin
modified the type while volumes were using it, then ran into
problems becuase the volumes didn't have the expected settings
described by the type.

This change adds a check before updating/deleting extra-specs of
a volume type.  If there are any volumes currently assigned to
the type being modified/deleted the operation will fail with an
InvalidRequest immediately when attempting the call.

To maintain backward compatability incase someobdy is using this
for something and they are really really sure they want to
continue doing so, we also add a config option to allow the
old behavior but default to NOT allowing it:
  'allow_inuse_volume_type_modification=False'

APIImpact

Change-Id: Iaea721e13a3903cae60cc3fb3acfad03bd173a6b
Closes-Bug: #1667071
2017-03-06 09:14:29 -07:00
..
api Disallow modification of in use Volume Types 2017-03-06 09:14:29 -07:00
backup Merge "ceph backup support for EXCLUSIVE_LOCK and JOURNALING features" 2017-02-15 14:37:21 +00:00
brick Convert ignoreskippedcluster check to be static 2017-02-02 17:00:04 +00:00
cmd Remove Ocata's data migrations 2017-02-15 11:41:15 +01:00
common Don't use None value for sql query. 2017-02-04 09:31:27 +08:00
compute Change nova_catalog_admin_info to default to publicURL 2017-02-14 09:49:29 -05:00
config Nosec subprocess with shell equal True from Bandit 2017-01-17 08:38:50 -06:00
consistencygroup Fix replication freeze mechanism 2017-01-19 10:42:24 +01:00
db Merge "Compact Mitaka database migrations" 2017-02-17 20:30:13 +00:00
group Fix replication freeze mechanism 2017-01-19 10:42:24 +01:00
hacking Switch ManageableSnaphots & ManageableVolumes list to OVO 2017-01-25 00:41:30 +00:00
image Merge "Refactor of getting qemu-img version" 2017-02-14 19:31:55 +00:00
interface Add the backup variable structure in backup_driver interface 2017-02-15 16:11:31 +08:00
keymgr Only log insecure key manager warning once 2016-12-28 18:53:13 -06:00
locale Imported Translations from Zanata 2016-10-15 07:34:30 +00:00
message Remove Ocata's data migrations 2017-02-15 11:41:15 +01:00
objects Use ovo instead of dict 2017-02-13 06:23:52 +00:00
scheduler Fix typo error 2017-03-01 08:52:55 +00:00
tests Disallow modification of in use Volume Types 2017-03-06 09:14:29 -07:00
transfer Add more operations to cluster 2016-12-20 19:20:52 +01:00
volume Merge "Disable multiattach for all drivers" 2017-02-28 19:19:51 +00:00
wsgi Remove unused logging import and LOG global var 2016-05-20 17:17:38 +08:00
zonemanager Resolve Brocade HTTPS connection error 2017-02-01 22:30:23 +01:00
__init__.py Set EVENTLET_NO_GREENDNS for IPv6 and dnspython compat 2016-11-11 13:19:07 -06:00
context.py Use to_policy_values for enforcing policy 2016-09-13 01:13:15 +00:00
coordination.py Add lock acquire/release debug messages 2017-01-26 17:04:23 +01:00
exception.py Add Ocata sanity check migration 2017-02-07 09:53:30 +01:00
flow_utils.py Fix logging traceback in service logs 2016-12-20 12:39:07 +05:30
i18n.py Remove unused gettextutils from oslo-incubator 2015-10-16 15:22:49 -05:00
manager.py Make notify_service_capabilities cluster aware 2017-01-20 10:44:35 +01:00
opts.py Disallow modification of in use Volume Types 2017-03-06 09:14:29 -07:00
policy.py Use to_policy_values for enforcing policy 2016-09-13 01:13:15 +00:00
quota_utils.py Cinder consistency group returning generic error message 2016-12-21 12:52:06 +08:00
quota.py Improve DB method naming consistency 2016-12-13 19:23:05 +01:00
rpc.py Fix notification short-circuit 2017-02-01 17:11:14 +01:00
service.py Make Replication support Active-Active 2017-01-19 10:42:18 +01:00
ssh_utils.py Fix sshpool.remove code 2016-03-01 03:20:04 +00:00
test.py Switch and/or to ternary operator 2017-02-10 10:16:43 -06:00
utils.py Fix notification short-circuit 2017-02-01 17:11:14 +01:00
version.py