help='Default glance host name or IP'),
cfg.IntOpt('glance_port',
default=9292,
+ min=1, max=65535,
help='Default glance port'),
cfg.ListOpt('glance_api_servers',
default=['$glance_host:$glance_port'],
help='IP address on which OpenStack Volume API listens'),
cfg.IntOpt('osapi_volume_listen_port',
default=8776,
+ min=1, max=65535,
help='Port on which OpenStack Volume API listens'),
cfg.IntOpt('osapi_volume_workers',
help='Number of workers for OpenStack Volume API service. '
self.driver.check_for_setup_error)
self._reset_flags()
- self._set_flag('storwize_svc_vol_rsize', 101)
- self.assertRaises(exception.InvalidInput,
- self.driver.check_for_setup_error)
- self._reset_flags()
-
- self._set_flag('storwize_svc_vol_warning', 101)
- self.assertRaises(exception.InvalidInput,
- self.driver.check_for_setup_error)
- self._reset_flags()
-
self._set_flag('storwize_svc_vol_grainsize', 42)
self.assertRaises(exception.InvalidInput,
self.driver.check_for_setup_error)
self._reset_flags()
- self._set_flag('storwize_svc_flashcopy_timeout', 601)
- self.assertRaises(exception.InvalidInput,
- self.driver.check_for_setup_error)
- self._reset_flags()
-
self._set_flag('storwize_svc_vol_compression', True)
self._set_flag('storwize_svc_vol_rsize', -1)
self.assertRaises(exception.InvalidInput,
help='Number of times to attempt to run flakey shell commands'),
cfg.IntOpt('reserved_percentage',
default=0,
+ min=0, max=100,
help='The percentage of backend capacity is reserved'),
cfg.IntOpt('iscsi_num_targets',
default=None,
help='The list of secondary IP addresses of the iSCSI daemon'),
cfg.IntOpt('iscsi_port',
default=3260,
+ min=1, max=65535,
help='The port that the iSCSI daemon is listening on'),
cfg.IntOpt('num_volume_device_scan_tries',
default=3,
help='The IP address that the iSER daemon is listening on'),
cfg.IntOpt('iser_port',
default=3260,
+ min=1, max=65535,
help='The port that the iSER daemon is listening on'),
cfg.StrOpt('iser_helper',
default='tgtadm',
help='Storage Center System Serial Number'),
cfg.IntOpt('dell_sc_api_port',
default=3033,
+ min=1, max=65535,
help='Dell API port'),
cfg.StrOpt('dell_sc_server_folder',
default='openstack',
help='Storage system storage pool for volumes'),
cfg.IntOpt('storwize_svc_vol_rsize',
default=2,
+ min=-1, max=100,
help='Storage system space-efficiency parameter for volumes '
'(percentage)'),
cfg.IntOpt('storwize_svc_vol_warning',
default=0,
+ min=-1, max=100,
help='Storage system threshold for volume capacity warnings '
'(percentage)'),
cfg.BoolOpt('storwize_svc_vol_autoexpand',
help='The I/O group in which to allocate volumes'),
cfg.IntOpt('storwize_svc_flashcopy_timeout',
default=120,
+ min=1, max=600,
help='Maximum number of seconds to wait for FlashCopy to be '
- 'prepared. Maximum value is 600 seconds (10 minutes)'),
+ 'prepared.'),
cfg.StrOpt('storwize_svc_connection_protocol',
default='iSCSI',
help='Connection protocol (iSCSI/FC)'),
'authentication: set either san_password or '
'san_private_key option.'))
- # Check that flashcopy_timeout is not more than 10 minutes
- flashcopy_timeout = self.configuration.storwize_svc_flashcopy_timeout
- if not (flashcopy_timeout > 0 and flashcopy_timeout <= 600):
- raise exception.InvalidInput(
- reason=_('Illegal value %d specified for '
- 'storwize_svc_flashcopy_timeout: '
- 'valid values are between 0 and 600.')
- % flashcopy_timeout)
-
opts = self._helpers.build_default_opts(self.configuration)
self._helpers.check_vdisk_opts(self._state, opts)
@staticmethod
def check_vdisk_opts(state, opts):
- # Check that rsize is either -1 or between 0 and 100
- if not (opts['rsize'] >= -1 and opts['rsize'] <= 100):
- raise exception.InvalidInput(
- reason=_('Illegal value specified for storwize_svc_vol_rsize: '
- 'set to either a percentage (0-100) or -1.'))
-
- # Check that warning is either -1 or between 0 and 100
- if not (opts['warning'] >= -1 and opts['warning'] <= 100):
- raise exception.InvalidInput(
- reason=_('Illegal value specified for '
- 'storwize_svc_vol_warning: '
- 'set to a percentage (0-100).'))
-
# Check that grainsize is 32/64/128/256
if opts['grainsize'] not in [32, 64, 128, 256]:
raise exception.InvalidInput(
help='DPL pool uuid in which DPL volumes are stored.'),
cfg.IntOpt('dpl_port',
default=8357,
+ min=1, max=65535,
help='DPL port number.'),
]
secret=True),
cfg.IntOpt('nas_ssh_port',
default=22,
+ min=1, max=65535,
help='SSH port to use to connect to NAS system.'),
cfg.StrOpt('nas_private_key',
default='',
help='Cluster name to use for creating volumes'),
cfg.IntOpt('san_ssh_port',
default=22,
+ min=1, max=65535,
help='SSH port to use with SAN'),
cfg.BoolOpt('san_is_local',
default=False,
cfg.IntOpt('sf_api_port',
default=443,
+ min=1, max=65535,
help='SolidFire API port. Useful if the device api is behind '
'a proxy on a different port.')]
secret=True),
cfg.IntOpt('fc_fabric_port',
default=22,
+ min=1, max=65535,
help='Connecting port'),
cfg.StrOpt('zoning_policy',
default='initiator-target',
secret=True),
cfg.IntOpt('cisco_fc_fabric_port',
default=22,
+ min=1, max=65535,
help='Connecting port'),
cfg.StrOpt('cisco_zoning_policy',
default='initiator-target',