ScaleIO: Deprecate sio_allow_non_padded_thick_volumes

The config option sio_allow_non_padded_thick_volumes was added to
allow sites to continue to have non-padded thick volumes after it was
disabled by default due to security concerns. At the time it was only
thought to be an issue with thick volumes, but has since been determined
to also be an issue with thin.

To address the concerns with thin, the general option
sio_allow_non_padded__volumes was added, making the thick-only option
redundant. This new option was added without the deprecation of the
thick-only option to ease backporting to address the securty concern,
but we now want to work towards removing the thick option so we can just
have the one option for both provisioning types.

Related-bug: #1784871

Change-Id: Iaf7173cbcd9fc0929dabe3b1cb2db4b47c8bf0bd
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
This commit is contained in:
Sean McGinnis 2018-08-20 11:32:40 -05:00
parent 0652085f23
commit b54b2de4e9
No known key found for this signature in database
GPG Key ID: CE7EE4BFAF8D70C8
2 changed files with 15 additions and 14 deletions

View File

@ -107,13 +107,8 @@ scaleio_opts = [
default=10.0,
help='max_over_subscription_ratio setting for the driver. '
'Maximum value allowed is 10.0.'),
cfg.BoolOpt('sio_allow_non_padded_thick_volumes',
default=False,
help='Allow thick volumes to be created in Storage Pools '
'when zero padding is disabled. This option should '
'not be enabled if multiple tenants will utilize '
'thick volumes from a shared Storage Pool.'),
cfg.BoolOpt('sio_allow_non_padded_volumes',
deprecated_name='sio_allow_non_padded_thick_volumes',
default=False,
help='Allow volumes to be created in Storage Pools '
'when zero padding is disabled. This option should '
@ -500,8 +495,7 @@ class ScaleIODriver(driver.VolumeDriver):
def _is_volume_creation_safe(self,
protection_domain,
storage_pool,
provision_type):
storage_pool):
"""Checks if volume creation is safe or not.
Using volumes with zero padding disabled can lead to existing data
@ -512,11 +506,6 @@ class ScaleIODriver(driver.VolumeDriver):
# Enabled regardless of type, so safe to proceed
return True
if (provision_type == 'ThickProvisioned' and
self.configuration.sio_allow_non_padded_thick_volumes):
# Enabled for thick volumes
return True
try:
properties = self._get_storage_pool_properties(protection_domain,
storage_pool)
@ -621,7 +610,6 @@ class ScaleIODriver(driver.VolumeDriver):
"zero padding being disabled for pool, %s:%s. "
"This behaviour can be changed by setting "
"the configuration option "
"sio_allow_non_padded_thick_volumes = True or"
"sio_allow_non_padded_volumes = True.",
protection_domain_name,
storage_pool_name)

View File

@ -0,0 +1,13 @@
---
deprecations:
- |
The ScaleIO configuration option ``sio_allow_non_padded_thick_volumes`` has
been deprecated and will be removed in a future release. Deployments should
now migrate to the option ``sio_allow_non_padded_volumes`` for equivalent
functionality.
upgrade:
- |
The ScaleIO configuration option ``sio_allow_non_padded_thick_volumes`` has
been deprecated and will be removed in a future release. Deployments should
now migrate to the option ``sio_allow_non_padded_volumes`` for equivalent
functionality.