diff --git a/ostack_validator/schemas/__init__.py b/ostack_validator/schemas/__init__.py index d9634ec..7f6b6fa 100644 --- a/ostack_validator/schemas/__init__.py +++ b/ostack_validator/schemas/__init__.py @@ -1,3 +1,3 @@ +import ostack_validator.schemas.cinder import ostack_validator.schemas.keystone import ostack_validator.schemas.nova -import ostack_validator.schemas.cinder diff --git a/ostack_validator/schemas/cinder/v2013_1_3.py b/ostack_validator/schemas/cinder/v2013_1_3.py index 1e3a6f2..2202a61 100644 --- a/ostack_validator/schemas/cinder/v2013_1_3.py +++ b/ostack_validator/schemas/cinder/v2013_1_3.py @@ -92,7 +92,8 @@ cinder.param( 'periodic_fuzzy_delay', type='integer', default='60', - description="range of seconds to randomly delay when starting the periodic task scheduler to reduce stampeding.") + description="range of seconds to randomly delay when starting the " + "periodic task scheduler to reduce stampeding.") cinder.param( 'osapi_volume_listen', @@ -128,7 +129,8 @@ cinder.param( 'tcp_keepidle', type='integer', default='600', - description="Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X.") + description="Sets the value of TCP_KEEPIDLE in seconds for each server " + "socket. Not supported on OS X.") cinder.param( 'ssl_ca_file', @@ -152,19 +154,22 @@ cinder.param( 'osapi_max_limit', type='integer', default='1000', - description="the maximum number of items returned in a single response from a collection resource") + description="the maximum number of items returned in a single response " + "from a collection resource") cinder.param( 'osapi_volume_base_URL', type='string', default='', - description="Base URL that will be presented to users in links to the OpenStack Volume API") + description="Base URL that will be presented to users in links to the " + "OpenStack Volume API") cinder.param( 'use_forwarded_for', type='boolean', default='false', - description="Treat X-Forwarded-For as the canonical remote address. Only enable this if you have a sanitizing proxy.") + description="Treat X-Forwarded-For as the canonical remote address. " + "Only enable this if you have a sanitizing proxy.") cinder.param( 'osapi_max_request_body_size', @@ -188,7 +193,8 @@ cinder.param( 'backup_ceph_chunk_size', type='integer', default='134217728', - description="the chunk size in bytes that a backup will be broken into before transfer to backup store") + description="the chunk size in bytes that a backup will be broken into " + "before transfer to backup store") cinder.param( 'backup_ceph_pool', @@ -320,13 +326,16 @@ cinder.param( 'lio_initiator_iqns', type='string', default='', - description="Comma-separatd list of initiator IQNs allowed to connect to the iSCSI target.") + description="Comma-separatd list of initiator IQNs allowed to connect to " + "the iSCSI target.") cinder.param( 'iscsi_iotype', type='string', default='fileio', - description="Sets the behavior of the iSCSI target to either perform blockio or fileio optionally, auto can be set and Cinder will autodetect type of backing device") + description="Sets the behavior of the iSCSI target to either perform " + "blockio or fileio optionally, auto can be set and Cinder " + "will autodetect type of backing device") cinder.param( 'iser_helper', @@ -350,7 +359,8 @@ cinder.param( 'nfs_mount_options', type='string', default='', - description="Mount options passed to the nfs client. See section of the nfs man page for details") + description="Mount options passed to the nfs client. See section of the " + "nfs man page for details") cinder.param( 'glusterfs_mount_point_base', @@ -362,7 +372,8 @@ cinder.param( 'connection_type', type='string', default='', - description="Virtualization api connection type : libvirt, xenapi, or fake") + description="Virtualization api connection type : libvirt, xenapi, or " + "fake") cinder.param( 'api_paste_config', @@ -434,7 +445,8 @@ cinder.param( 'glance_api_ssl_compression', type='boolean', default='false', - description="Whether to attempt to negotiate SSL layer compression when using SSL") + description="Whether to attempt to negotiate SSL layer compression when " + "using SSL") cinder.param( 'glance_request_timeout', @@ -482,7 +494,8 @@ cinder.param( 'osapi_volume_ext_list', type='list', default='', - description="Specify list of extensions to load when using osapi_volume_extension option with cinder.api.contrib.select_extensions") + description="Specify list of extensions to load when using osapi_volume_" + "extension option with cinder.api.contrib.select_extensions") cinder.param( 'osapi_volume_extension', @@ -512,7 +525,8 @@ cinder.param( 'host', type='string', default='cinder', - description="Name of this node. This can be an opaque identifier. It is not necessarily a hostname, FQDN, or IP address.") + description="Name of this node. This can be an opaque identifier. " + "It is not necessarily a hostname, FQDN, or IP address.") cinder.param( 'storage_availability_zone', @@ -524,7 +538,10 @@ cinder.param( 'default_availability_zone', type='string', default='', - description="default availability zone to use when creating a new volume. If this is not set then we use the value from the storage_availability_zone option as the default availability_zone for new volumes.") + description="default availability zone to use when creating a new volume. " + "If this is not set then we use the value from the " + "storage_availability_zone option as the " + "default availability_zone for new volumes.") cinder.param( 'memcached_servers', @@ -542,7 +559,8 @@ cinder.param( 'volume_usage_audit_period', type='string', default='month', - description="time period to generate volume usages for. Time period must be hour, day, month or year") + description="time period to generate volume usages for. Time period " + "must be hour, day, month or year") cinder.param( 'root_helper', @@ -554,7 +572,8 @@ cinder.param( 'rootwrap_config', type='string', default='/etc/cinder/rootwrap.conf', - description="Path to the rootwrap configuration file to use for running commands as root") + description="Path to the rootwrap configuration file to use for " + "running commands as root") cinder.param( 'monkey_patch', @@ -590,13 +609,15 @@ cinder.param( 'auth_strategy', type='string', default='noauth', - description="The strategy to use for auth. Supports noauth, keystone, and deprecated.") + description="The strategy to use for auth. Supports noauth, keystone, " + "and deprecated.") cinder.param( 'enabled_backends', type='list', default='', - description="A list of backend names to use. These backend names should be backed by a unique [CONFIG] group with its options") + description="A list of backend names to use. These backend names " + "should be backed by a unique [CONFIG] group with its options") cinder.param( 'no_snapshot_gb_quota', @@ -620,7 +641,9 @@ cinder.param( 'nova_catalog_info', type='string', default='compute:nova:publicURL', - description="Info to match when looking for nova in the service catalog. Format is : separated values of the form: ::") + description="Info to match when looking for nova in the service catalog. " + "Format is : separated values of the form: " + "::") cinder.param( 'nova_catalog_admin_info', @@ -632,7 +655,8 @@ cinder.param( 'nova_endpoint_template', type='string', default='', - description="Override service catalog lookup with template for nova endpoint e.g. http://localhost:8774/v2/%(tenant_id)s") + description="Override service catalog lookup with template for nova " + "endpoint e.g. http://localhost:8774/v2/%(tenant_id)s") cinder.param( 'nova_endpoint_admin_template', @@ -650,7 +674,8 @@ cinder.param( 'nova_ca_certificates_file', type='string', default='', - description="Location of ca certicates file to use for nova client requests.") + description="Location of ca certicates file to use for nova client " + "requests.") cinder.param( 'nova_api_insecure', @@ -698,7 +723,8 @@ cinder.param( 'allowed_direct_url_schemes', type='list', default='', - description="A list of url schemes that can be downloaded directly via the direct_url. Currently supported schemes: [file].") + description="A list of url schemes that can be downloaded directly " + "via the direct_url. Currently supported schemes: [file].") cinder.param( 'image_conversion_dir', @@ -722,20 +748,24 @@ cinder.param( 'use_tpool', type='boolean', default='false', - description="Enable the experimental use of thread pooling for all DB API calls") + description="Enable the experimental use of thread pooling for all " + "DB API calls") cinder.param( 'connection', type='string', default='sqlite:////cinder/openstack/common/db/$sqlite_db', - description="The SQLAlchemy connection string used to connect to the database") + description="The SQLAlchemy connection string used to connect to " + "the database") cinder.param( 'sql_connection', type='string', default='sqlite:////nova/openstack/common/db/$sqlite_db', - description="The SQLAlchemy connection string used to connect to the database", - deprecation_message='Deprecated in favor of "[DEFAULT]connection" parameter') + description="The SQLAlchemy connection string used to connect to " + "the database", + deprecation_message='Deprecated in favor of "[DEFAULT]connection" ' + 'parameter') cinder.param( 'idle_timeout', @@ -777,7 +807,8 @@ cinder.param( 'connection_debug', type='integer', default='0', - description="Verbosity of SQL debugging information. 0=None, 100=Everything") + description="Verbosity of SQL debugging information. 0=None, " + "100=Everything") cinder.param( 'connection_trace', @@ -836,13 +867,16 @@ cinder.param( cinder.param( 'logging_context_format_string', type='string', - default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s', + default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s ' + '%(name)s [%(request_id)s %(user)s %(tenant)s] ' + '%(instance)s%(message)s', description="format string to use for log messages with context") cinder.param( 'logging_default_format_string', type='string', - default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s', + default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s ' + '[-] %(instance)s%(message)s', description="format string to use for log messages without context") cinder.param( @@ -860,7 +894,8 @@ cinder.param( cinder.param( 'default_log_levels', type='list', - default='amqplibWARN,sqlalchemyWARN,botoWARN,sudsINFO,keystoneINFO,eventlet.wsgi.serverWARN', + default='amqplibWARN,sqlalchemyWARN,botoWARN,sudsINFO,keystoneINFO,' + 'eventlet.wsgi.serverWARN', description="list of logger=LEVEL pairs") cinder.param( @@ -879,43 +914,55 @@ cinder.param( 'instance_format', type='string', default='"[instance: %(uuid)s] "', - description="If an instance is passed with the log message, format it like this") + description="If an instance is passed with the log message, " + "format it like this") cinder.param( 'instance_uuid_format', type='string', default='"[instance: %(uuid)s] "', - description="If an instance UUID is passed with the log message, format it like this") + description="If an instance UUID is passed with the log message, " + "format it like this") cinder.param( 'log_config', type='string', default='', - description="If this option is specified, the logging configuration file specified is used and overrides any other logging options specified. Please see the Python logging module documentation for details on logging configuration files.") + description="If this option is specified, the logging configuration " + "file specified is used and overrides any other logging " + "options specified. Please see the Python logging module " + "documentation for details on logging configuration files.") cinder.param( 'log_format', type='string', default='', - description="A logging.Formatter log message format string which may use any of the available logging.LogRecord attributes. This option is deprecated. Please use logging_context_format_string and logging_default_format_string instead.") + description="A logging.Formatter log message format string which may use " + "any of the available logging.LogRecord attributes. This " + "option is deprecated. Please use " + "logging_context_format_string and logging_default_" + "format_string instead.") cinder.param( 'log_date_format', type='string', default='%Y-%m-%d %H:%M:%S', - description="Format string for %%(asctime)s in log records. Default: %(default)s") + description="Format string for %%(asctime)s in log records. " + "Default: %(default)s") cinder.param( 'log_file', type='string', default='', - description="(Optional) Name of log file to output to. If no default is set, logging will go to stdout.") + description="(Optional) Name of log file to output to. If no default is " + "set, logging will go to stdout.") cinder.param( 'log_dir', type='string', default='', - description="(Optional) The base directory used for relative --log-file paths") + description="(Optional) The base directory used for relative --log-file " + "paths") cinder.param( 'use_syslog', @@ -957,7 +1004,8 @@ cinder.param( 'run_external_periodic_tasks', type='boolean', default='true', - description="Some periodic tasks can be run in a separate process. Should we run them here?") + description="Some periodic tasks can be run in a separate process. " + "Should we run them here?") cinder.param( 'rpc_backend', @@ -992,8 +1040,10 @@ cinder.param( cinder.param( 'allowed_rpc_exception_modules', type='list', - default='cinder.openstack.common.exception,nova.exception,cinder.exception,exceptions', - description="Modules of exceptions that are permitted to be recreatedupon receiving exception data from an rpc call.") + default='cinder.openstack.common.exception,nova.exception,' + 'cinder.exception,exceptions', + description="Modules of exceptions that are permitted to be recreatedupon " + "receiving exception data from an rpc call.") cinder.param( 'fake_rabbit', @@ -1011,7 +1061,8 @@ cinder.param( 'amqp_rpc_single_reply_queue', type='boolean', default='false', - description="Enable a fast single reply queue if using AMQP based RPC like RabbitMQ or Qpid.") + description="Enable a fast single reply queue if using AMQP based " + "RPC like RabbitMQ or Qpid.") cinder.param( 'amqp_durable_queues', @@ -1101,7 +1152,8 @@ cinder.param( 'rabbit_retry_backoff', type='integer', default='2', - description="how long to backoff for between retries when connecting to RabbitMQ") + description="how long to backoff for between retries when connecting " + "to RabbitMQ") cinder.param( 'rabbit_max_retries', @@ -1173,7 +1225,11 @@ cinder.param( 'qpid_topology_version', type='integer', default='1', - description="The qpid topology version to use. Version 1 is what was originally used by impl_qpid. Version 2 includes some backwards-incompatible changes that allow broker federation to work. Users should update to version 2 when they are able to take everything down, as it requires a clean break.") + description="The qpid topology version to use. Version 1 is what " + "was originally used by impl_qpid. Version 2 includes some " + "backwards-incompatible changes that allow broker federation " + "to work. Users should update to version 2 when they are " + "able to take everything down, as it requires a clean break.") cinder.param( 'rpc_zmq_bind_address', @@ -1203,7 +1259,8 @@ cinder.param( 'rpc_zmq_topic_backlog', type='integer', default='', - description="Maximum number of ingress messages to locally buffer per topic. Default is unlimited.") + description="Maximum number of ingress messages to locally buffer per " + "topic. Default is unlimited.") cinder.param( 'rpc_zmq_ipc_dir', @@ -1215,7 +1272,8 @@ cinder.param( 'rpc_zmq_host', type='string', default='cinder', - description="Name of this node. Must be a valid hostname, FQDN, or IP address. Must match 'host' option, if running Nova.") + description="Name of this node. Must be a valid hostname, FQDN, or IP" + " address. Must match 'host' option, if running Nova.") cinder.param( 'matchmaker_ringfile', @@ -1269,7 +1327,8 @@ cinder.param( 'scheduler_default_filters', type='list', default='AvailabilityZoneFilter,CapacityFilter,CapabilitiesFilter', - description="Which filter class names to use for filtering hosts when not specified in the request.") + description="Which filter class names to use for filtering hosts when " + "not specified in the request.") cinder.param( 'scheduler_default_weighers', @@ -1299,7 +1358,8 @@ cinder.param( 'capacity_weight_multiplier', type='floating point', default='1.0', - description="Multiplier used for weighing volume capacity. Negative numbers mean to stack vs spread.") + description="Multiplier used for weighing volume capacity. Negative " + "numbers mean to stack vs spread.") cinder.param( 'volume_transfer_salt_length', @@ -1317,13 +1377,15 @@ cinder.param( 'snapshot_same_host', type='boolean', default='true', - description="Create volume from snapshot at the host where snapshot resides") + description="Create volume from snapshot at the host where snapshot " + "resides") cinder.param( 'cloned_volume_same_az', type='boolean', default='true', - description="Ensure that the new volumes are the same AZ as snapshot or source volume") + description="Ensure that the new volumes are the same AZ as snapshot " + "or source volume") cinder.param( 'num_shell_tries', @@ -1365,7 +1427,8 @@ cinder.param( 'num_iser_scan_tries', type='integer', default='3', - description="The maximum number of times to rescan iSER targetto find volume") + description="The maximum number of times to rescan iSER targetto " + "find volume") cinder.param( 'iser_num_targets', @@ -1401,7 +1464,8 @@ cinder.param( 'use_multipath_for_image_xfer', type='boolean', default='false', - description="Do we attach/detach volumes in cinder using multipath for volume to image and image to volume transfers?") + description="Do we attach/detach volumes in cinder using multipath " + "for volume to image and image to volume transfers?") cinder.param( 'volume_clear', @@ -1509,7 +1573,9 @@ cinder.param( 'glusterfs_sparsed_volumes', type='boolean', default='true', - description="Create volumes as sparsed files which take no space.If set to False volume is created as regular file.In such case volume creation takes a lot of time.") + description="Create volumes as sparsed files which take no space.If set " + "to False volume is created as regular file.In such case " + "volume creation takes a lot of time.") cinder.param( 'glusterfs_qcow2_volumes', @@ -1521,7 +1587,8 @@ cinder.param( 'gpfs_mount_point_base', type='string', default='', - description="Path to the directory on GPFS mount point where volumes are stored") + description="Path to the directory on GPFS mount point where volumes " + "are stored") cinder.param( 'gpfs_images_dir', @@ -1533,19 +1600,28 @@ cinder.param( 'gpfs_images_share_mode', type='string', default='', - description="Set this if Glance image repo is on GPFS as well so that the image bits can be transferred efficiently between Glance and Cinder. Valid values are copy or copy_on_write. copy performs a full copy of the image, copy_on_write efficiently shares unmodified blocks of the image.") + description="Set this if Glance image repo is on GPFS as well so that " + "the image bits can be transferred efficiently between Glance " + "and Cinder. Valid values are copy or copy_on_write. copy " + "performs a full copy of the image, copy_on_write efficiently " + "shares unmodified blocks of the image.") cinder.param( 'gpfs_max_clone_depth', type='integer', default='0', - description="A lengthy chain of copy-on-write snapshots or clones could have impact on performance. This option limits the number of indirections required to reach a specific block. 0 indicates unlimited.") + description="A lengthy chain of copy-on-write snapshots or clones could " + "have impact on performance. This option limits the number " + "of indirections required to reach a specific block. 0 " + "indicates unlimited.") cinder.param( 'gpfs_sparse_volumes', type='boolean', default='true', - description="Create volumes as sparse files which take no space. If set to False volume is created as regular file. In this case volume creation may take a significantly longer time.") + description="Create volumes as sparse files which take no space. If set " + "to False volume is created as regular file. In this case " + "volume creation may take a significantly longer time.") cinder.param( 'hds_cinder_config_file', @@ -1575,7 +1651,8 @@ cinder.param( 'lvm_mirrors', type='integer', default='0', - description="If set, create lvms with multiple mirrors. Note that this requires lvm_mirrors + 2 pvs with available space") + description="If set, create lvms with multiple mirrors. Note that this " + "requires lvm_mirrors + 2 pvs with available space") cinder.param( 'lvm_type', @@ -1737,7 +1814,9 @@ cinder.param( 'nexenta_sparsed_volumes', type='boolean', default='true', - description="Create volumes as sparsed files which take no space.If set to False volume is created as regular file.In such case volume creation takes a lot of time.") + description="Create volumes as sparsed files which take no space.If set " + "to False volume is created as regular file.In such case " + "volume creation takes a lot of time.") cinder.param( 'nexenta_volume_compression', @@ -1749,19 +1828,23 @@ cinder.param( 'nexenta_mount_options', type='string', default='', - description="Mount options passed to the nfs client. See section of the nfs man page for details") + description="Mount options passed to the nfs client. See section of " + "the nfs man page for details") cinder.param( 'nexenta_used_ratio', type='floating point', default='0.95', - description="Percent of ACTUAL usage of the underlying volume before no new volumes can be allocated to the volume destination.") + description="Percent of ACTUAL usage of the underlying volume before " + "no new volumes can be allocated to the volume destination.") cinder.param( 'nexenta_oversub_ratio', type='floating point', default='1.0', - description="This will compare the allocated to available space on the volume destination. If the ratio exceeds this number, the destination will no longer be valid.") + description="This will compare the allocated to available space on the " + "volume destination. If the ratio exceeds this number, the " + "destination will no longer be valid.") cinder.param( 'nexenta_blocksize', @@ -1785,19 +1868,24 @@ cinder.param( 'nfs_sparsed_volumes', type='boolean', default='true', - description="Create volumes as sparsed files which take no space.If set to False volume is created as regular file.In such case volume creation takes a lot of time.") + description="Create volumes as sparsed files which take no space.If set " + "to False volume is created as regular file.In such case " + "volume creation takes a lot of time.") cinder.param( 'nfs_used_ratio', type='floating point', default='0.95', - description="Percent of ACTUAL usage of the underlying volume before no new volumes can be allocated to the volume destination.") + description="Percent of ACTUAL usage of the underlying volume before no " + "new volumes can be allocated to the volume destination.") cinder.param( 'nfs_oversub_ratio', type='floating point', default='1.0', - description="This will compare the allocated to available space on the volume destination. If the ratio exceeds this number, the destination will no longer be valid.") + description="This will compare the allocated to available space on the " + "volume destination. If the ratio exceeds this number, the " + "destination will no longer be valid.") cinder.param( 'rbd_pool', @@ -1809,7 +1897,8 @@ cinder.param( 'rbd_user', type='string', default='', - description="the RADOS client name for accessing rbd volumes - only set when using cephx authentication") + description="the RADOS client name for accessing rbd volumes - only set " + "when using cephx authentication") cinder.param( 'rbd_ceph_conf', @@ -1833,13 +1922,16 @@ cinder.param( 'volume_tmp_dir', type='string', default='', - description="where to store temporary image files if the volume driver does not write them directly to the volume") + description="where to store temporary image files if the volume driver " + "does not write them directly to the volume") cinder.param( 'rbd_max_clone_depth', type='integer', default='5', - description="maximum number of nested clones that can be taken of a volume before enforcing a flatten prior to next clone. A value of zero disables cloning") + description="maximum number of nested clones that can be taken of a " + "volume before enforcing a flatten prior to next clone. A " + "value of zero disables cloning") cinder.param( 'hp3par_api_url', @@ -1863,7 +1955,8 @@ cinder.param( 'hp3par_domain', type='string', default='', - description="This option is DEPRECATED and no longer used. The 3par domain name to use.") + description="This option is DEPRECATED and no longer used. The 3par " + "domain name to use.") cinder.param( 'hp3par_cpg', @@ -1875,19 +1968,22 @@ cinder.param( 'hp3par_cpg_snap', type='string', default='', - description="The CPG to use for Snapshots for volumes. If empty hp3par_cpg will be used") + description="The CPG to use for Snapshots for volumes. If empty " + "hp3par_cpg will be used") cinder.param( 'hp3par_snapshot_retention', type='string', default='', - description="The time in hours to retain a snapshot. You can't delete it before this expires.") + description="The time in hours to retain a snapshot. You can't delete " + "it before this expires.") cinder.param( 'hp3par_snapshot_expiration', type='string', default='', - description="The time in hours when a snapshot expires and is deleted. This must be larger than expiration") + description="The time in hours when a snapshot expires and is deleted." + " This must be larger than expiration") cinder.param( 'hp3par_debug', @@ -1947,7 +2043,8 @@ cinder.param( 'san_is_local', type='boolean', default='false', - description="Execute commands locally instead of over SSH; use if the volume service is running on the SAN device") + description="Execute commands locally instead of over SSH; use if " + "the volume service is running on the SAN device") cinder.param( 'ssh_conn_timeout', @@ -2013,7 +2110,8 @@ cinder.param( 'sf_api_port', type='integer', default='443', - description="SolidFire API port. Useful if the device api is behind a proxy on a different port.") + description="SolidFire API port. Useful if the device api is behind a " + "proxy on a different port.") cinder.param( 'storwize_svc_volpool_name', @@ -2067,7 +2165,8 @@ cinder.param( 'storwize_svc_flashcopy_timeout', type='integer', default='120', - description="Maximum number of seconds to wait for FlashCopy to be prepared. Maximum value is 600 seconds") + description="Maximum number of seconds to wait for FlashCopy to be" + " prepared. Maximum value is 600 seconds") cinder.param( 'storwize_svc_connection_protocol', @@ -2109,31 +2208,37 @@ cinder.param( 'vmware_wsdl_location', type='string', default='', - description="Optional VIM service WSDL Location e.g http:///vimService.wsdl. Optional over-ride to default location for bug work-arounds.") + description="Optional VIM service WSDL Location e.g " + "http:///vimService.wsdl. Optional over-ride to " + "default location for bug work-arounds.") cinder.param( 'vmware_api_retry_count', type='integer', default='10', - description="Number of times VMware ESX/VC server API must be retried upon connection related issues.") + description="Number of times VMware ESX/VC server API must be retried " + "upon connection related issues.") cinder.param( 'vmware_task_poll_interval', type='integer', default='5', - description="The interval used for polling remote tasks invoked on VMware ESX/VC server.") + description="The interval used for polling remote tasks invoked on " + "VMware ESX/VC server.") cinder.param( 'vmware_volume_folder', type='string', default='cinder-volumes', - description="Name for the folder in the VC datacenter that will contain cinder volumes.") + description="Name for the folder in the VC datacenter that will contain " + "cinder volumes.") cinder.param( 'vmware_image_transfer_timeout_secs', type='integer', default='7200', - description="Timeout in seconds for VMDK volume transfer between Cinder and Glance.") + description="Timeout in seconds for VMDK volume transfer between Cinder " + "and Glance.") cinder.param( 'windows_iscsi_lun_path', @@ -2277,7 +2382,8 @@ cinder.param( 'migration_create_volume_timeout_secs', type='integer', default='300', - description="Timeout for creating the volume to migrate to when performing volume migration") + description="Timeout for creating the volume to migrate to when " + "performing volume migration") cinder.param( 'volume_dd_blocksize', diff --git a/ostack_validator/schemas/keystone/v2013_1_3.py b/ostack_validator/schemas/keystone/v2013_1_3.py index 42b1753..41dff27 100644 --- a/ostack_validator/schemas/keystone/v2013_1_3.py +++ b/ostack_validator/schemas/keystone/v2013_1_3.py @@ -10,7 +10,8 @@ keystone.param( 'admin_token', type='string', default='ADMIN', - description="A 'shared secret' between keystone and other openstack services") + description="A 'shared secret' between keystone and other openstack " + "services") keystone.param( 'bind_host', @@ -34,7 +35,9 @@ keystone.param( 'public_endpoint', type='string', default='http://localhost:%(public_port)s/', - description="The base endpoint URLs for keystone that are advertised to clients (NOTE: this does NOT affect how keystone listens for connections)") + description="The base endpoint URLs for keystone that are advertised to " + "clients (NOTE: this does NOT affect how keystone listens for " + "connections)") keystone.param( 'admin_endpoint', @@ -46,7 +49,8 @@ keystone.param( 'compute_port', type='port', default='8774', - description="The port number which the OpenStack Compute service listens on") + description="The port number which the OpenStack Compute service " + "listens on") keystone.param( 'policy_file', @@ -58,13 +62,20 @@ keystone.param( 'policy_default_rule', type='string', default='admin_required', - description="Rule to check if no matching policy definition is found FIXME(dolph): This should really be defined as [policy] default_rule") + description="Rule to check if no matching policy definition is found " + "FIXME(dolph): This should really be defined as [policy] " + "default_rule") keystone.param( 'member_role_id', type='string', default='9fe2ff9ee4384b1894a90878d3e92bab', - description="Role for migrating membership relationships During a SQL upgrade, the following values will be used to create a new role that will replace records in the user_tenant_membership table with explicit role grants. After migration, the member_role_id will be used in the API add_user_to_project, and member_role_name will be ignored.") + description="Role for migrating membership relationships During a SQL " + "upgrade, the following values will be used to create a new " + "role that will replace records in the user_tenant_membership " + "table with explicit role grants. After migration, the " + "member_role_id will be used in the API add_user_to_project, " + "and member_role_name will be ignored.") keystone.param( 'member_role_name', @@ -76,7 +87,8 @@ keystone.param( 'max_request_body_size', type='string', default='114688', - description="enforced by optional sizelimit middleware (keystone.middleware:RequestBodySizeLimiter)") + description="enforced by optional sizelimit middleware " + "(keystone.middleware:RequestBodySizeLimiter)") keystone.param( 'max_param_size', @@ -88,13 +100,15 @@ keystone.param( 'max_token_size', type='integer', default=8192, - description="similar to max_param_size, but provides an exception for token values") + description="similar to max_param_size, but provides an exception for " + "token values") keystone.param( 'debug', type='boolean', default=False, - description="=== Logging Options === Print debugging output (includes plaintext request logging, potentially including passwords)") + description="=== Logging Options === Print debugging output (includes " + "plaintext request logging, potentially including passwords)") keystone.param( 'verbose', @@ -106,13 +120,15 @@ keystone.param( 'log_file', type='string', default='keystone.log', - description="Name of log file to output to. If not set, logging will go to stdout.") + description="Name of log file to output to. If not set, logging will go " + "to stdout.") keystone.param( 'log_dir', type='string', default='/var/log/keystone', - description="The directory to keep log files in (will be prepended to --logfile)") + description="The directory to keep log files in (will be prepended to " + "--logfile)") keystone.param( 'use_syslog', @@ -130,13 +146,17 @@ keystone.param( 'log_config', type='string', default='logging.conf', - description="If this option is specified, the logging configuration file specified is used and overrides any other logging options specified. Please see the Python logging module documentation for details on logging configuration files.") + description="If this option is specified, the logging configuration file " + "specified is used and overrides any other logging options " + "specified. Please see the Python logging module documentation" + " for details on logging configuration files.") keystone.param( 'log_format', type='string', default='%(asctime)s %(levelname)8s [%(name)s] %(message)s', - description="A logging.Formatter log message format string which may use any of the available logging.LogRecord attributes.") + description="A logging.Formatter log message format string which may use " + "any of the available logging.LogRecord attributes.") keystone.param( 'log_date_format', @@ -148,7 +168,10 @@ keystone.param( 'onready', type='string', default='keystone.common.systemd', - description="onready allows you to send a notification when the process is ready to serve For example, to have it notify using systemd, one could set shell command: onready = systemd-notify --ready or a module with notify() method:") + description="onready allows you to send a notification when the process " + "is ready to serve For example, to have it notify using " + "systemd, one could set shell command: onready = " + "systemd-notify --ready or a module with notify() method:") keystone.param( 'default_notification_level', @@ -160,7 +183,8 @@ keystone.param( 'default_publisher_id', type='string', default='', - description="Default publisher_id for outgoing notifications; included in the payload.") + description="Default publisher_id for outgoing notifications; included in " + "the payload.") keystone.param( 'rpc_backend', @@ -190,7 +214,8 @@ keystone.param( 'rpc_cast_timeout', type='integer', default=30, - description="Seconds to wait before a cast expires (TTL). Only supported by impl_zmq.") + description="Seconds to wait before a cast expires (TTL). Only supported " + "by impl_zmq.") keystone.param( 'fake_rabbit', @@ -210,7 +235,8 @@ keystone.param( 'connection', type='string', default='sqlite:///keystone.db', - description="The SQLAlchemy connection string used to connect to the database") + description="The SQLAlchemy connection string used to connect to the " + "database") keystone.param( 'idle_timeout', @@ -230,13 +256,22 @@ keystone.param( 'default_domain_id', type='string', default='default', - description="This references the domain to use for all Identity API v2 requests (which are not aware of domains). A domain with this ID will be created for you by keystone-manage db_sync in migration 008. The domain referenced by this ID cannot be deleted on the v3 API, to prevent accidentally breaking the v2 API. There is nothing special about this domain, other than the fact that it must exist to order to maintain support for your v2 clients.") + description="This references the domain to use for all Identity API v2 " + "requests (which are not aware of domains). A domain with " + "this ID will be created for you by keystone-manage db_sync " + "in migration 008. The domain referenced by this ID cannot " + "be deleted on the v3 API, to prevent accidentally breaking " + "the v2 API. There is nothing special about this domain, " + "other than the fact that it must exist to order to " + "maintain support for your v2 clients.") keystone.param( 'domain_specific_drivers_enabled', type='boolean', default=False, - description="A subset (or all) of domains can have their own identity driver, each with their own partial configuration file in a domain configuration directory. Only") + description="A subset (or all) of domains can have their own identity " + "driver, each with their own partial configuration file in a " + "domain configuration directory. Only") keystone.param( 'domain_config_dir', @@ -248,7 +283,8 @@ keystone.param( 'max_password_length', type='integer', default=4096, - description="Maximum supported length for user passwords; decrease to improve performance.") + description="Maximum supported length for user passwords; decrease to " + "improve performance.") keystone.section('credential') @@ -264,7 +300,8 @@ keystone.param( 'enabled', type='boolean', default=True, - description="delegation and impersonation features can be optionally disabled") + description="delegation and impersonation features can be optionally " + "disabled") keystone.section('os_inherit') @@ -272,7 +309,8 @@ keystone.param( 'enabled', type='boolean', default=False, - description="role-assignment inheritance to projects from owning domain can be optionally enabled") + description="role-assignment inheritance to projects from owning domain " + "can be optionally enabled") keystone.section('catalog') @@ -280,13 +318,15 @@ keystone.param( 'driver', type='string', default='keystone.catalog.backends.sql.Catalog', - description="dynamic, sql-based backend (supports API/CLI-based management commands)") + description="dynamic, sql-based backend (supports API/CLI-based " + "management commands)") keystone.param( 'driver', type='string', default='keystone.catalog.backends.templated.TemplatedCatalog', - description="static, file-based backend (does *NOT* support any management commands)") + description="static, file-based backend (does *NOT* support any " + "management commands)") keystone.param( 'template_file', @@ -300,7 +340,9 @@ keystone.param( 'driver', type='string', default='keystone.contrib.endpoint_filter.backends.sql.EndpointFilter', - description="extension for creating associations between project and endpoints in order to provide a tailored catalog for project-scoped token requests.") + description="extension for creating associations between project and " + "endpoints in order to provide a tailored catalog for " + "project-scoped token requests.") keystone.param( 'return_all_endpoints_if_no_filter', @@ -320,7 +362,9 @@ keystone.param( 'provider', type='string', default='', - description="Controls the token construction, validation, and revocation operations. Core providers are keystone.token.providers.[pki|uuid].Provider") + description="Controls the token construction, validation, and revocation " + "operations. Core providers are keystone.token.providers." + "[pki|uuid].Provider") keystone.param( 'expiration', @@ -332,19 +376,24 @@ keystone.param( 'bind', type='string', default='', - description="External auth mechanisms that should add bind information to token. eg kerberos, x509") + description="External auth mechanisms that should add bind information to " + "token. eg kerberos, x509") keystone.param( 'enforce_token_bind', type='string', default='permissive', - description="Enforcement policy on tokens presented to keystone with bind information. One of disabled, permissive, strict, required or a specifically required bind mode e.g. kerberos or x509 to require binding to that authentication.") + description="Enforcement policy on tokens presented to keystone with bind " + "information. One of disabled, permissive, strict, required " + "or a specifically required bind mode e.g. kerberos or x509 " + "to require binding to that authentication.") keystone.param( 'caching', type='boolean', default=True, - description="Token specific caching toggle. This has no effect unless the global caching option is set to True") + description="Token specific caching toggle. This has no effect unless the " + "global caching option is set to True") keystone.param( 'cache_time', @@ -356,7 +405,8 @@ keystone.param( 'revocation_cache_time', type='integer', default=3600, - description="Revocation-List specific cache time-to-live (TTL) in seconds.") + description="Revocation-List specific cache time-to-live (TTL) " + "in seconds.") keystone.section('cache') @@ -370,37 +420,55 @@ keystone.param( 'config_prefix', type='string', default='cache.keystone', - description="Prefix for building the configuration dictionary for the cache region. This should not need to be changed unless there is another dogpile.cache region with the same configuration name") + description="Prefix for building the configuration dictionary for the " + "cache region. This should not need to be changed unless there" + " is another dogpile.cache region with the same configuration " + "name") keystone.param( 'backend', type='string', default='keystone.common.cache.noop', - description="Dogpile.cache backend module. It is recommended that Memcache (dogpile.cache.memcache) or Redis (dogpile.cache.redis) be used in production deployments. Small workloads (single process) like devstack can use the dogpile.cache.memory backend.") + description="Dogpile.cache backend module. It is recommended that " + "Memcache (dogpile.cache.memcache) or Redis " + "(dogpile.cache.redis) be used in production deployments. " + "Small workloads (single process) like devstack can use the " + "dogpile.cache.memory backend.") keystone.param( 'backend_argument', type='string', default='', - description="Arguments supplied to the backend module. Specify this option once per argument to be passed to the dogpile.cache backend. Example format: :") + description="Arguments supplied to the backend module. Specify this " + "option once per argument to be passed to the " + "dogpile.cache backend. Example format: :") keystone.param( 'proxies', type='string', default='', - description="Proxy Classes to import that will affect the way the dogpile.cache backend functions. See the dogpile.cache documentation on changing-backend-behavior. Comma delimited list e.g. my.dogpile.proxy.Class, my.dogpile.proxyClass2") + description="Proxy Classes to import that will affect the way the " + "dogpile.cache backend functions. See the dogpile.cache " + "documentation on changing-backend-behavior. Comma delimited " + "list e.g. my.dogpile.proxy.Class, my.dogpile.proxyClass2") keystone.param( 'use_key_mangler', type='boolean', default=True, - description="Use a key-mangling function (sha1) to ensure fixed length cache-keys. This is toggle-able for debugging purposes, it is highly recommended to always leave this set to True.") + description="Use a key-mangling function (sha1) to ensure fixed length " + "cache-keys. This is toggle-able for debugging purposes, " + "it is highly recommended to always leave this set to True.") keystone.param( 'debug_cache_backend', type='boolean', default=False, - description="Extra debugging from the cache backend (cache keys, get/set/delete/etc calls) This is only really useful if you need to see the specific cache-backend get/set/delete calls with the keys/values. Typically this should be left set to False.") + description="Extra debugging from the cache backend (cache keys, " + "get/set/delete/etc calls) This is only really useful if you " + "need to see the specific cache-backend get/set/delete calls " + "with the keys/values. Typically this should be left set to " + "False.") keystone.section('policy') @@ -426,7 +494,8 @@ keystone.param( 'caching', type='boolean', default=True, - description="Assignment specific caching toggle. This has no effect unless the global caching option is set to True") + description="Assignment specific caching toggle. This has no effect " + "unless the global caching option is set to True") keystone.param( 'cache_time', @@ -446,13 +515,17 @@ keystone.param( 'request_token_duration', type='integer', default=28800, - description="The Identity service may include expire attributes. If no such attribute is included, then the token lasts indefinitely. Specify how quickly the request token will expire (in seconds)") + description="The Identity service may include expire attributes. If no " + "such attribute is included, then the token lasts " + "indefinitely. Specify how quickly the request token will " + "expire (in seconds)") keystone.param( 'access_token_duration', type='integer', default=86400, - description="Specify how quickly the access token will expire (in seconds)") + description="Specify how quickly the access token will expire " + "(in seconds)") keystone.section('ssl') @@ -500,7 +573,8 @@ keystone.param( 'token_format', type='string', default='', - description="Deprecated in favor of provider in the [token] section Allowed values are PKI or UUID") + description="Deprecated in favor of provider in the [token] section " + "Allowed values are PKI or UUID") keystone.param( 'certfile', @@ -580,19 +654,24 @@ keystone.param( 'page_size', type='integer', default=0, - description="Maximum results per page; a value of zero ('0') disables paging (default)") + description="Maximum results per page; a value of zero ('0') disables " + "paging (default)") keystone.param( 'alias_dereferencing', type='string', default='default', - description="The LDAP dereferencing option for queries. This can be either 'never', 'searching', 'always', 'finding' or 'default'. The 'default' option falls back to using default dereferencing configured by your ldap.conf.") + description="The LDAP dereferencing option for queries. This can be " + "either 'never', 'searching', 'always', 'finding' or " + "'default'. The 'default' option falls back to using " + "default dereferencing configured by your ldap.conf.") keystone.param( 'query_scope', type='string', default='one', - description="The LDAP scope for queries, this can be either 'one' (onelevel/singleLevel) or 'sub' (subtree/wholeSubtree)") + description="The LDAP scope for queries, this can be either 'one' " + "(onelevel/singleLevel) or 'sub' (subtree/wholeSubtree)") keystone.param( 'user_tree_dn', @@ -892,7 +971,10 @@ keystone.param( 'use_tls', type='boolean', default=False, - description="ldap TLS options if both tls_cacertfile and tls_cacertdir are set then tls_cacertfile will be used and tls_cacertdir is ignored valid options for tls_req_cert are demand, never, and allow") + description="ldap TLS options if both tls_cacertfile and tls_cacertdir " + "are set then tls_cacertfile will be used and tls_cacertdir " + "is ignored valid options for tls_req_cert are demand, never, " + "and allow") keystone.param('tls_cacertfile', type='string', default='', description="") @@ -904,7 +986,11 @@ keystone.param( 'user_additional_attribute_mapping', type='string', default='description:name, gecos:name', - description="Additional attribute mappings can be used to map ldap attributes to internal keystone attributes. This allows keystone to fulfill ldap objectclass requirements. An example to map the description and gecos attributes to a user's name would be:") + description="Additional attribute mappings can be used to map ldap " + "attributes to internal keystone attributes. This allows " + "keystone to fulfill ldap objectclass requirements. An " + "example to map the description and gecos attributes to a " + "user's name would be:") keystone.param( 'domain_additional_attribute_mapping', @@ -974,6 +1060,7 @@ keystone.param( 'config_file', type='string', default='keystone-paste.ini', - description="Name of the paste configuration file that defines the available pipelines") + description="Name of the paste configuration file that defines the " + "available pipelines") keystone.commit() diff --git a/ostack_validator/schemas/keystone/v2013_1_4.py b/ostack_validator/schemas/keystone/v2013_1_4.py index b811ad3..3a2b8fb 100644 --- a/ostack_validator/schemas/keystone/v2013_1_4.py +++ b/ostack_validator/schemas/keystone/v2013_1_4.py @@ -55,18 +55,22 @@ keystone.param('valid_days', type='string', default='3650', description="") keystone.param('cert_required', type='string', default='False', description="") keystone.param('cert_subject', type='string', - default='/CUS/STUnset/LUnset/OUnset/CNlocalhost', description="") + default='/CUS/STUnset/LUnset/OUnset/CNlocalhost', + description="") keystone.section('signing') keystone.param('token_format', type='string', default='', - description="Deprecated in favor of provider in the [token] section Allowed values are PKI or UUID") + description="Deprecated in favor of provider in the [token] " + "section Allowed values are PKI or UUID") keystone.param('certfile', type='string', - default='/etc/keystone/pki/certs/signing_cert.pem', description="") + default='/etc/keystone/pki/certs/signing_cert.pem', + description="") keystone.param('keyfile', type='string', - default='/etc/keystone/pki/private/signing_key.pem', description="") + default='/etc/keystone/pki/private/signing_key.pem', + description="") keystone.param('ca_certs', type='string', default='/etc/keystone/pki/certs/cacert.pem', description="") @@ -79,7 +83,8 @@ keystone.param('key_size', type='string', default='2048', description="") keystone.param('valid_days', type='string', default='3650', description="") keystone.param('cert_subject', type='string', - default='/CUS/STUnset/LUnset/OUnset/CNwww.example.com', description="") + default='/CUS/STUnset/LUnset/OUnset/CNwww.example.com', + description="") keystone.section('ldap') @@ -89,10 +94,12 @@ keystone.param('methods', type='string', default='external,password,token,oauth1', description="") keystone.param('external', type='string', - default='keystone.auth.plugins.external.ExternalDefault', description="") + default='keystone.auth.plugins.external.ExternalDefault', + description="") keystone.param('password', type='string', - default='keystone.auth.plugins.password.Password', description="") + default='keystone.auth.plugins.password.Password', + description="") keystone.param('token', type='string', default='keystone.auth.plugins.token.Token', description="") @@ -103,6 +110,7 @@ keystone.param('oauth1', type='string', keystone.section('paste_deploy') keystone.param('config_file', type='string', default='keystone-paste.ini', - description="Name of the paste configuration file that defines the available pipelines") + description="Name of the paste configuration file that defines " + "the available pipelines") -keystone.commit() \ No newline at end of file +keystone.commit() diff --git a/ostack_validator/schemas/nova/v2013_1.py b/ostack_validator/schemas/nova/v2013_1.py index 544cd4f..327b4d6 100644 --- a/ostack_validator/schemas/nova/v2013_1.py +++ b/ostack_validator/schemas/nova/v2013_1.py @@ -45,11 +45,13 @@ nova.param('default_availability_zone', type='string', default='nova') # Subject for certificate for users, %s for project, user, # timestamp (string value) -# user_cert_subject=/C=US/ST=California/O=OpenStack/OU=NovaDev/CN=%.16s-%.16s-%s +# user_cert_subject=/C=US/ST=California/O=OpenStack/OU=NovaDev/ +# CN=%.16s-%.16s-%s # Subject for certificate for projects, %s for project, # timestamp (string value) -# project_cert_subject=/C=US/ST=California/O=OpenStack/OU=NovaDev/CN=project-ca-%.16s-%s +# project_cert_subject=/C=US/ST=California/O=OpenStack/OU=NovaDev/ +# CN=project-ca-%.16s-%s # @@ -269,7 +271,8 @@ nova.param('use_ipv6', type='boolean') # monkey_patch=false # List of modules/decorators to monkey patch (list value) -# monkey_patch_modules=nova.api.ec2.cloud:nova.notifications.notify_decorator,nova.compute.api:nova.notifications.notify_decorator +# monkey_patch_modules=nova.api.ec2.cloud:nova.notifications.notify_decorator +# ,nova.compute.api:nova.notifications.notify_decorator # Length of generated instance admin passwords (integer value) # password_length=12 @@ -486,11 +489,13 @@ nova.param('use_ipv6', type='boolean') # # osapi compute extension to load (multi valued) -# osapi_compute_extension=nova.api.openstack.compute.contrib.standard_extensions +# osapi_compute_extension=nova.api.openstack.compute.contrib. +# standard_extensions # -# Options defined in nova.api.openstack.compute.plugins.v3.hide_server_addresses +# Options defined in nova.api.openstack.compute.plugins.v3. +# hide_server_addresses # # List of instance states that should hide network info (list @@ -1385,7 +1390,8 @@ nova.param( 'verbose', type='boolean', default=False, - description='Print more verbose output (set logging level to INFO instead of default WARNING level)') + description='Print more verbose output (set logging level to INFO instead' + ' of default WARNING level)') # Log output to standard error (boolean value) # use_stderr=true @@ -1416,7 +1422,8 @@ nova.param( # %(name)s %(instance)s # list of logger=LEVEL pairs (list value) -# default_log_levels=amqplib=WARN,sqlalchemy=WARN,boto=WARN,suds=INFO,keystone=INFO,eventlet.wsgi.server=WARN +# default_log_levels=amqplib=WARN,sqlalchemy=WARN,boto=WARN,suds=INFO, +# keystone=INFO,eventlet.wsgi.server=WARN # publish error events (boolean value) # publish_errors=false @@ -1832,7 +1839,8 @@ nova.param('rabbit_retry_interval', type='integer', default=1) # Which filter class names to use for filtering hosts when not # specified in the request. (list value) -# scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter +# scheduler_default_filters=RetryFilter,AvailabilityZoneFilter, +# RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter # Which weight class names to use for weighing hosts (list # value) @@ -2031,7 +2039,8 @@ nova.param('rabbit_retry_interval', type='integer', default=1) #live_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER # Migration flags to be set for block migration (string value) -#block_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_NON_SHARED_INC +#block_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, +# VIR_MIGRATE_NON_SHARED_INC # Maximum bandwidth to be used during migration, in Mbps # (integer value) @@ -2045,7 +2054,18 @@ nova.param('rabbit_retry_interval', type='integer', default=1) # libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtGenericVIFDriver # Libvirt handlers for remote volumes. (list value) -# libvirt_volume_drivers=iscsi=nova.virt.libvirt.volume.LibvirtISCSIVolumeDriver,iser=nova.virt.libvirt.volume.LibvirtISERVolumeDriver,local=nova.virt.libvirt.volume.LibvirtVolumeDriver,fake=nova.virt.libvirt.volume.LibvirtFakeVolumeDriver,rbd=nova.virt.libvirt.volume.LibvirtNetVolumeDriver,sheepdog=nova.virt.libvirt.volume.LibvirtNetVolumeDriver,nfs=nova.virt.libvirt.volume.LibvirtNFSVolumeDriver,aoe=nova.virt.libvirt.volume.LibvirtAOEVolumeDriver,glusterfs=nova.virt.libvirt.volume.LibvirtGlusterfsVolumeDriver,fibre_channel=nova.virt.libvirt.volume.LibvirtFibreChannelVolumeDriver,scality=nova.virt.libvirt.volume.LibvirtScalityVolumeDriver +# libvirt_volume_drivers=iscsi=nova.virt.libvirt.volume +# .LibvirtISCSIVolumeDriver,iser=nova.virt.libvirt.volume +# .LibvirtISERVolumeDriver,local=nova.virt.libvirt.volume +# .LibvirtVolumeDriver,fake=nova.virt.libvirt.volume +# .LibvirtFakeVolumeDriver,rbd=nova.virt.libvirt.volume +# .LibvirtNetVolumeDriver,sheepdog=nova.virt.libvirt.volume +# .LibvirtNetVolumeDriver,nfs=nova.virt.libvirt.volume +# .LibvirtNFSVolumeDriver,aoe=nova.virt.libvirt.volume +# .LibvirtAOEVolumeDriver,glusterfs=nova.virt.libvirt.volume +# .LibvirtGlusterfsVolumeDriver,fibre_channel=nova.virt.libvirt.volume +# .LibvirtFibreChannelVolumeDriver,scality=nova.virt.libvirt.volume +# .LibvirtScalityVolumeDriver # Override the default disk prefix for the devices attached to # a server, which is dependent on libvirt_type. (valid options diff --git a/ostack_validator/schemas/nova/v2013_1_3.py b/ostack_validator/schemas/nova/v2013_1_3.py index 9878e41..2b6b24c 100644 --- a/ostack_validator/schemas/nova/v2013_1_3.py +++ b/ostack_validator/schemas/nova/v2013_1_3.py @@ -58,13 +58,15 @@ nova.param( 'user_cert_subject', type='string', default='/CUS/STCalifornia/OOpenStack/OUNovaDev/CN%.16s-%.16s-%s', - description="Subject for certificate for users, %s for project, user, timestamp") + description="Subject for certificate for users, %s for project, user, " + "timestamp") nova.param( 'project_cert_subject', type='string', default='/CUS/STCalifornia/OOpenStack/OUNovaDev/CNproject-ca-%.16s-%s', - description="Subject for certificate for projects, %s for project, timestamp") + description="Subject for certificate for projects, %s for project, " + "timestamp") nova.param( 'fatal_exception_format_errors', @@ -82,7 +84,10 @@ nova.param( 'host', type='string', default='nova', - description="Name of this node. This can be an opaque identifier. It is not necessarily a hostname, FQDN, or IP address. However, the node name must be valid within an AMQP key, and if using ZeroMQ, a valid hostname, FQDN, or IP address") + description="Name of this node. This can be an opaque identifier. " + "It is not necessarily a hostname, FQDN, or IP address. " + "However, the node name must be valid within an AMQP key, " + "and if using ZeroMQ, a valid hostname, FQDN, or IP address") nova.param('use_ipv6', type='boolean', default=False, description="use ipv6") @@ -90,13 +95,18 @@ nova.param( 'notify_on_state_change', type='string', default=None, - description="If set, send compute.instance.update notifications on instance state changes. Valid values are None for no notifications, 'vm_state' for notifications on VM state changes, or 'vm_and_task_state' for notifications on VM and task state changes.") + description="If set, send compute.instance.update notifications on " + "instance state changes. Valid values are None for no " + "notifications, 'vm_state' for notifications on VM state " + "changes, or 'vm_and_task_state' for notifications on VM and " + "task state changes.") nova.param( 'notify_api_faults', type='boolean', default=False, - description="If set, send api.fault notifications on caught exceptions in the API service.") + description="If set, send api.fault notifications on caught exceptions in " + "the API service.") nova.param( 'pybasedir', @@ -240,7 +250,8 @@ nova.param( 'periodic_fuzzy_delay', type='integer', default=60, - description="range of seconds to randomly delay when starting the periodic task scheduler to reduce stampeding.") + description="range of seconds to randomly delay when starting the " + "periodic task scheduler to reduce stampeding.") nova.param( 'enabled_apis', @@ -365,7 +376,8 @@ nova.param( nova.param( 'monkey_patch_modules', type='list', - default='nova.api.ec2.cloud:nova.notifications.notify_decorator,nova.compute.api:nova.notifications.notify_decorator', + default='nova.api.ec2.cloud:nova.notifications.notify_decorator,nova.' + 'compute.api:nova.notifications.notify_decorator', description="List of modules/decorators to monkey patch") nova.param( @@ -378,13 +390,15 @@ nova.param( 'instance_usage_audit_period', type='string', default='month', - description="time period to generate instance usages for. Time period must be hour, day, month or year") + description="time period to generate instance usages for. Time period " + "must be hour, day, month or year") nova.param( 'rootwrap_config', type='string', default='/etc/nova/rootwrap.conf', - description="Path to the rootwrap configuration file to use for running commands as root") + description="Path to the rootwrap configuration file to use for running " + "commands as root") nova.param( 'tempdir', @@ -401,8 +415,12 @@ nova.param( nova.param( 'wsgi_log_format', type='string', - default='%(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f', - description="A python format string that is used as the template to generate log lines. The following values can be formatted into it: client_ip, date_time, request_line, status_code, body_length, wall_seconds.") + default='%(client_ip)s "%(request_line)s" status: %(status_code)s len: ' + '%(body_length)s time: %(wall_seconds).7f', + description="A python format string that is used as the template to " + "generate log lines. The following values can be formatted " + "into it: client_ip, date_time, request_line, status_code, " + "body_length, wall_seconds.") nova.param( 'ssl_ca_file', @@ -426,7 +444,8 @@ nova.param( 'tcp_keepidle', type='integer', default=600, - description="Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X.") + description="Sets the value of TCP_KEEPIDLE in seconds for each server " + "socket. Not supported on OS X.") nova.param( 'api_rate_limit', @@ -444,7 +463,8 @@ nova.param( 'use_forwarded_for', type='boolean', default=False, - description="Treat X-Forwarded-For as the canonical remote address. Only enable this if you have a sanitizing proxy.") + description="Treat X-Forwarded-For as the canonical remote address. Only " + "enable this if you have a sanitizing proxy.") nova.param( 'lockout_attempts', @@ -474,7 +494,8 @@ nova.param( 'ec2_private_dns_show_ip', type='boolean', default=False, - description="Return the IP address as private dns hostname in describe instances") + description="Return the IP address as private dns hostname in describe " + "instances") nova.param( 'ec2_strict_validation', @@ -527,8 +548,10 @@ nova.param( nova.param( 'config_drive_skip_versions', type='string', - default='1.0 2007-01-19 2007-03-01 2007-08-29 2007-10-10 2007-12-15 2008-02-01 2008-09-01', - description="List of metadata versions to skip placing into the config drive") + default='1.0 2007-01-19 2007-03-01 2007-08-29 2007-10-10 2007-12-15 ' + '2008-02-01 2008-09-01', + description="List of metadata versions to skip placing into the config " + "drive") nova.param( 'vendordata_driver', @@ -540,7 +563,8 @@ nova.param( 'service_neutron_metadata_proxy', type='boolean', default=False, - description="Set flag to indicate Neutron will proxy metadata requests and resolve instance ids.") + description="Set flag to indicate Neutron will proxy metadata requests " + "and resolve instance ids.") nova.param( 'neutron_metadata_proxy_shared_secret', @@ -558,19 +582,22 @@ nova.param( 'osapi_max_limit', type='integer', default=1000, - description="the maximum number of items returned in a single response from a collection resource") + description="the maximum number of items returned in a single response " + "from a collection resource") nova.param( 'osapi_compute_link_prefix', type='string', default=None, - description="Base URL that will be presented to users in links to the OpenStack Compute API") + description="Base URL that will be presented to users in links to the " + "OpenStack Compute API") nova.param( 'osapi_glance_link_prefix', type='string', default=None, - description="Base URL that will be presented to users in links to glance resources") + description="Base URL that will be presented to users in links to glance " + "resources") nova.param( 'allow_instance_snapshots', @@ -582,7 +609,9 @@ nova.param( 'osapi_compute_ext_list', type='list', default='', - description="Specify list of extensions to load when using osapi_compute_extension option with nova.api.openstack.compute.contrib.select_extensions") + description="Specify list of extensions to load when using osapi_" + "compute_extension option with nova.api.openstack.compute." + "contrib.select_extensions") nova.param( 'fping_path', @@ -746,13 +775,15 @@ nova.param( 'allow_resize_to_same_host', type='boolean', default=False, - description="Allow destination machine to match source for resize. Useful when testing in single-host environments.") + description="Allow destination machine to match source for resize. " + "Useful when testing in single-host environments.") nova.param( 'allow_migrate_to_same_host', type='boolean', default=False, - description="Allow migrate machine to the same host. Useful when testing in single-host environments.") + description="Allow migrate machine to the same host. Useful when " + "testing in single-host environments.") nova.param( 'default_schedule_zone', @@ -764,37 +795,50 @@ nova.param( 'non_inheritable_image_properties', type='list', default='cache_in_nova,bittorrent', - description="These are image properties which a snapshot should not inherit from an instance") + description="These are image properties which a snapshot should not " + "inherit from an instance") nova.param( 'null_kernel', type='string', default='nokernel', - description="kernel image that indicates not to use a kernel, but to use a raw disk image instead") + description="kernel image that indicates not to use a kernel, but to " + "use a raw disk image instead") nova.param( 'multi_instance_display_name_template', type='string', default='%(name)s-%(uuid)s', - description="When creating multiple instances with a single request using the os-multiple-create API extension, this template will be used to build the display name for each instance. The benefit is that the instances end up with different hostnames. To restore legacy behavior of every instance having the same name, set this option to '%(name)s'. Valid keys for the template are: name, uuid, count.") + description="When creating multiple instances with a single request " + "using the os-multiple-create API extension, this template " + "will be used to build the display name for each instance. " + "The benefit is that the instances end up with different " + "hostnames. To restore legacy behavior of every instance " + "having the same name, set this option to '%(name)s'. Valid " + "keys for the template are: name, uuid, count.") nova.param( 'max_local_block_devices', type='integer', default=3, - description="Maximum number of devices that will result in a local image being created on the hypervisor node. Setting this to 0 means nova will allow only boot from volume. A negative number means unlimited.") + description="Maximum number of devices that will result in a local image " + "being created on the hypervisor node. Setting this to 0 " + "means nova will allow only boot from volume. A negative " + "number means unlimited.") nova.param( 'default_flavor', type='string', default='m1.small', - description="default flavor to use for the EC2 API only. The Nova API does not support a default flavor.") + description="default flavor to use for the EC2 API only. The Nova API " + "does not support a default flavor.") nova.param( 'console_host', type='string', default='nova', - description="Console proxy host to use to connect to instances on this host.") + description="Console proxy host to use to connect to instances on this" + " host.") nova.param( 'default_access_ip_network_name', @@ -806,7 +850,9 @@ nova.param( 'defer_iptables_apply', type='boolean', default=False, - description="Whether to batch up the application of IPTables rules during a host restart and apply all at the end of the init phase") + description="Whether to batch up the application of IPTables rules " + "during a host restart and apply all at the end of the init " + "phase") nova.param( 'instances_path', @@ -830,7 +876,8 @@ nova.param( 'resume_guests_state_on_host_boot', type='boolean', default=False, - description="Whether to start guests that were running before the host rebooted") + description="Whether to start guests that were running before the host " + "rebooted") nova.param( 'network_allocate_retries', @@ -854,13 +901,15 @@ nova.param( 'sync_power_state_interval', type='integer', default=600, - description="interval to sync power states between the database and the hypervisor") + description="interval to sync power states between the database and the " + "hypervisor") nova.param( 'heal_instance_info_cache_interval', type='integer', default=60, - description="Number of seconds between instance info_cache self healing updates") + description="Number of seconds between instance info_cache self healing " + "updates") nova.param( 'host_state_interval', @@ -872,7 +921,8 @@ nova.param( 'image_cache_manager_interval', type='integer', default=2400, - description="Number of seconds to wait between runs of the image cache manager") + description="Number of seconds to wait between runs of the image cache " + "manager") nova.param( 'reclaim_instance_interval', @@ -896,19 +946,24 @@ nova.param( 'shelved_offload_time', type='integer', default=0, - description="Time in seconds before a shelved instance is eligible for removing from a host. -1 never offload, 0 offload when shelved") + description="Time in seconds before a shelved instance is eligible for " + "removing from a host. -1 never offload, 0 offload when " + "shelved") nova.param( 'instance_delete_interval', type='integer', default=300, - description="Interval in seconds for retrying failed instance file deletes") + description="Interval in seconds for retrying failed instance file " + "deletes") nova.param( 'running_deleted_instance_action', type='string', default='log', - description="Action to take if a running deleted instance is detected.Valid options are 'noop', 'log' and 'reap'. Set to 'noop' to disable.") + description="Action to take if a running deleted instance is detected." + "Valid options are 'noop', 'log' and 'reap'. Set to 'noop' " + "to disable.") nova.param( 'running_deleted_instance_poll_interval', @@ -920,31 +975,37 @@ nova.param( 'running_deleted_instance_timeout', type='integer', default=0, - description="Number of seconds after being deleted when a running instance should be considered eligible for cleanup.") + description="Number of seconds after being deleted when a running " + "instance should be considered eligible for cleanup.") nova.param( 'reboot_timeout', type='integer', default=0, - description="Automatically hard reboot an instance if it has been stuck in a rebooting state longer than N seconds. Set to 0 to disable.") + description="Automatically hard reboot an instance if it has been stuck " + "in a rebooting state longer than N seconds. Set to 0 to" + " disable.") nova.param( 'instance_build_timeout', type='integer', default=0, - description="Amount of time in seconds an instance can be in BUILD before going into ERROR status.Set to 0 to disable.") + description="Amount of time in seconds an instance can be in BUILD " + "before going into ERROR status.Set to 0 to disable.") nova.param( 'rescue_timeout', type='integer', default=0, - description="Automatically unrescue an instance after N seconds. Set to 0 to disable.") + description="Automatically unrescue an instance after N seconds. Set " + "to 0 to disable.") nova.param( 'resize_confirm_window', type='integer', default=0, - description="Automatically confirm resizes after N seconds. Set to 0 to disable.") + description="Automatically confirm resizes after N seconds. Set to 0 to " + "disable.") nova.param( 'reserved_host_disk_mb', @@ -974,7 +1035,9 @@ nova.param( 'migrate_max_retries', type='integer', default=-1, - description="Number of times to retry live-migration before failing. If == -1, try until out of hosts. If == 0, only try once, no retries.") + description="Number of times to retry live-migration before failing. " + "If == -1, try until out of hosts. If == 0, only try once, " + "no retries.") nova.param( 'console_driver', @@ -1088,7 +1151,9 @@ nova.param( 'osapi_compute_unique_server_name_scope', type='string', default='', - description="When set, compute API will consider duplicate hostnames invalid within the specified scope, regardless of case. Should be empty, 'project' or 'global'.") + description="When set, compute API will consider duplicate hostnames " + "invalid within the specified scope, regardless of case. " + "Should be empty, 'project' or 'global'.") nova.param( 'glance_host', @@ -1106,13 +1171,15 @@ nova.param( 'glance_protocol', type='string', default='http', - description="Default protocol to use when connecting to glance. Set to https for SSL.") + description="Default protocol to use when connecting to glance. Set to " + "https for SSL.") nova.param( 'glance_api_servers', type='list', default='$glance_host:$glance_port', - description="A list of the glance api servers available to nova. Prefix with https:// for ssl-based glance api servers.") + description="A list of the glance api servers available to nova. Prefix" + " with https:// for ssl-based glance api servers.") nova.param( 'glance_api_insecure', @@ -1130,7 +1197,8 @@ nova.param( 'allowed_direct_url_schemes', type='list', default='', - description="A list of url scheme that can be downloaded directly via the direct_url. Currently supported schemes: [file].") + description="A list of url scheme that can be downloaded directly via" + " the direct_url. Currently supported schemes: [file].") nova.param( 'image_decryption_dir', @@ -1142,7 +1210,8 @@ nova.param( 's3_host', type='string', default='$my_ip', - description="hostname or ip for OpenStack to use when accessing the s3 api") + description="hostname or ip for OpenStack to use when accessing the s3 " + "api") nova.param( 's3_port', @@ -1172,7 +1241,8 @@ nova.param( 's3_affix_tenant', type='boolean', default=False, - description="whether to affix the tenant id to the access key when downloading from s3") + description="whether to affix the tenant id to the access key when " + "downloading from s3") nova.param( 'ipv6_backend', @@ -1328,13 +1398,15 @@ nova.param( 'dns_server', type='multi', default='', - description="if set, uses specific dns server for dnsmasq. Canbe specified multiple times.") + description="if set, uses specific dns server for dnsmasq. Canbe " + "specified multiple times.") nova.param( 'use_network_dns_servers', type='boolean', default=False, - description="if set, uses the dns1 and dns2 from the network ref.as dns servers.") + description="if set, uses the dns1 and dns2 from the network ref.as " + "dns servers.") nova.param( 'dmz_cidr', @@ -1346,7 +1418,9 @@ nova.param( 'force_snat_range', type='multi', default='', - description="Traffic to this range will always be snatted to the fallback ip, even if it would normally be bridged out of the node. Can be specified multiple times.") + description="Traffic to this range will always be snatted to the " + "fallback ip, even if it would normally be bridged out of " + "the node. Can be specified multiple times.") nova.param( 'dnsmasq_config_file', @@ -1382,13 +1456,16 @@ nova.param( 'use_single_default_gateway', type='boolean', default=False, - description="Use single default gateway. Only first nic of vm will get default gateway from dhcp server") + description="Use single default gateway. Only first nic of vm will " + "get default gateway from dhcp server") nova.param( 'forward_bridge_interface', type='multi', default='all', - description="An interface that bridges can forward to. If this is set to all then all traffic will be forwarded. Can be specified multiple times.") + description="An interface that bridges can forward to. If this is set " + "to all then all traffic will be forwarded. Can be specified " + "multiple times.") nova.param( 'metadata_host', @@ -1406,19 +1483,22 @@ nova.param( 'iptables_top_regex', type='string', default='', - description="Regular expression to match iptables rule that should always be on the top.") + description="Regular expression to match iptables rule that should " + "always be on the top.") nova.param( 'iptables_bottom_regex', type='string', default='', - description="Regular expression to match iptables rule that should always be on the bottom.") + description="Regular expression to match iptables rule that should " + "always be on the bottom.") nova.param( 'iptables_drop_action', type='string', default='DROP', - description="The table that iptables to jump to when a packet is to be dropped.") + description="The table that iptables to jump to when a packet is to " + "be dropped.") nova.param( 'flat_network_bridge', @@ -1550,19 +1630,25 @@ nova.param( 'share_dhcp_address', type='boolean', default=False, - description="If True in multi_host mode, all compute hosts share the same dhcp address. The same IP address used for DHCP will be added on each nova-network node which is only visible to the vms on the same host.") + description="If True in multi_host mode, all compute hosts share the " + "same dhcp address. The same IP address used for DHCP will " + "be added on each nova-network node which is only visible " + "to the vms on the same host.") nova.param( 'update_dns_entries', type='boolean', default=False, - description="If True, when a DNS entry must be updated, it sends a fanout cast to all network hosts to update their DNS entries in multi host mode") + description="If True, when a DNS entry must be updated, it sends a " + "fanout cast to all network hosts to update their DNS " + "entries in multi host mode") nova.param( 'dns_update_periodic_interval', type='integer', default=-1, - description="Number of seconds to wait between runs of updates to DNS entries.") + description="Number of seconds to wait between runs of updates to " + "DNS entries.") nova.param( 'dhcp_domain', @@ -1646,7 +1732,8 @@ nova.param( 'neutron_ca_certificates_file', type='string', default=None, - description="Location of ca certicates file to use for neutronclient requests.") + description="Location of ca certicates file to use for neutronclient " + "requests.") nova.param( 'dhcp_options_enabled', @@ -1664,7 +1751,8 @@ nova.param( 'multi_host', type='boolean', default=False, - description="Default value for multi_host in networks. Also, if set, some rpc network calls will be sent directly to host.") + description="Default value for multi_host in networks. Also, if set, some " + "rpc network calls will be sent directly to host.") nova.param( 'security_group_api', @@ -1706,7 +1794,14 @@ nova.param( 'backdoor_port', type='string', default=None, - description="Enable eventlet backdoor. Acceptable values are 0, and :, where 0 results in listening on a random tcp port number, results in listening on the specified port number and not enabling backdoorif it is in use and : results in listening on the smallest unused port number within the specified range of port numbers. The chosen port is displayed in the service's log file.") + description="Enable eventlet backdoor. Acceptable values are 0, " + "and :, where 0 results in listening on a random " + "tcp port number, results in listening on the " + "specified port number and not enabling backdoorif it is " + "in use and : results in listening on the " + "smallest unused port number within the specified range of " + "port numbers. The chosen port is displayed in the service's " + "log file.") nova.param( 'disable_process_locking', @@ -1741,13 +1836,15 @@ nova.param( nova.param( 'logging_context_format_string', type='string', - default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s', + default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s ' + '[%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s', description="format string to use for log messages with context") nova.param( 'logging_default_format_string', type='string', - default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s', + default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] ' + '%(instance)s%(message)s', description="format string to use for log messages without context") nova.param( @@ -1765,7 +1862,8 @@ nova.param( nova.param( 'default_log_levels', type='list', - default='amqplibWARN,sqlalchemyWARN,botoWARN,sudsINFO,keystoneINFO,eventlet.wsgi.serverWARN', + default='amqplibWARN,sqlalchemyWARN,botoWARN,sudsINFO,keystoneINFO,' + 'eventlet.wsgi.serverWARN', description="list of logger=LEVEL pairs") nova.param( @@ -1784,43 +1882,55 @@ nova.param( 'instance_format', type='string', default='"[instance: %(uuid)s] "', - description="If an instance is passed with the log message, format it like this") + description="If an instance is passed with the log message, " + "format it like this") nova.param( 'instance_uuid_format', type='string', default='"[instance: %(uuid)s] "', - description="If an instance UUID is passed with the log message, format it like this") + description="If an instance UUID is passed with the log message, " + "format it like this") nova.param( 'log_config', type='string', default=None, - description="If this option is specified, the logging configuration file specified is used and overrides any other logging options specified. Please see the Python logging module documentation for details on logging configuration files.") + description="If this option is specified, the logging configuration " + "file specified is used and overrides any other logging " + "options specified. Please see the Python logging module " + "documentation for details on logging configuration files.") nova.param( 'log_format', type='string', default=None, - description="DEPRECATED. A logging.Formatter log message format string which may use any of the available logging.LogRecord attributes. This option is deprecated. Please use logging_context_format_string and logging_default_format_string instead.") + description="DEPRECATED. A logging.Formatter log message format string " + "which may use any of the available logging.LogRecord " + "attributes. This option is deprecated. Please use logging_" + "context_format_string and logging_default_format_string " + "instead.") nova.param( 'log_date_format', type='string', default='%Y-%m-%d %H:%M:%S', - description="Format string for %%(asctime)s in log records. Default: %(default)s") + description="Format string for %%(asctime)s in log records. Default: " + "%(default)s") nova.param( 'log_file', type='string', default=None, - description="(Optional) Name of log file to output to. If no default is set, logging will go to stdout.") + description="(Optional) Name of log file to output to. If no default " + "is set, logging will go to stdout.") nova.param( 'log_dir', type='string', default=None, - description="(Optional) The base directory used for relative --log-file paths") + description="(Optional) The base directory used for relative --log-file" + " paths") nova.param( 'use_syslog', @@ -1868,7 +1978,8 @@ nova.param( 'run_external_periodic_tasks', type='boolean', default=True, - description="Some periodic tasks can be run in a separate process. Should we run them here?") + description="Some periodic tasks can be run in a separate process. " + "Should we run them here?") nova.param( 'rpc_backend', @@ -1904,7 +2015,8 @@ nova.param( 'allowed_rpc_exception_modules', type='list', default='nova.exception,cinder.exception,exceptions', - description="Modules of exceptions that are permitted to be recreatedupon receiving exception data from an rpc call.") + description="Modules of exceptions that are permitted to be recreatedupon" + " receiving exception data from an rpc call.") nova.param( 'fake_rabbit', @@ -2006,7 +2118,8 @@ nova.param( 'rabbit_retry_backoff', type='integer', default=2, - description="how long to backoff for between retries when connecting to RabbitMQ") + description="how long to backoff for between retries when connecting " + "to RabbitMQ") nova.param( 'rabbit_max_retries', @@ -2078,7 +2191,11 @@ nova.param( 'qpid_topology_version', type='integer', default=1, - description="The qpid topology version to use. Version 1 is what was originally used by impl_qpid. Version 2 includes some backwards-incompatible changes that allow broker federation to work. Users should update to version 2 when they are able to take everything down, as it requires a clean break.") + description="The qpid topology version to use. Version 1 is what was " + "originally used by impl_qpid. Version 2 includes some " + "backwards-incompatible changes that allow broker federation " + "to work. Users should update to version 2 when they are " + "able to take everything down, as it requires a clean break.") nova.param( 'rpc_zmq_bind_address', @@ -2108,7 +2225,8 @@ nova.param( 'rpc_zmq_topic_backlog', type='integer', default=None, - description="Maximum number of ingress messages to locally buffer per topic. Default is unlimited.") + description="Maximum number of ingress messages to locally buffer per " + "topic. Default is unlimited.") nova.param( 'rpc_zmq_ipc_dir', @@ -2120,7 +2238,8 @@ nova.param( 'rpc_zmq_host', type='string', default='nova', - description="Name of this node. Must be a valid hostname, FQDN, or IP address. Must match 'host' option, if running Nova.") + description="Name of this node. Must be a valid hostname, FQDN, or IP " + "address. Must match 'host' option, if running Nova.") nova.param( 'matchmaker_heartbeat_freq', @@ -2138,13 +2257,21 @@ nova.param( 'pci_alias', type='multi', default='', - description="An alias for a PCI passthrough device requirement. This allows users to specify the alias in the extra_spec for a flavor, without needing to repeat all the PCI property requirements. For example: pci_alias = { 'name': 'QuicAssist', 'product_id': '0443', 'vendor_id': '8086', 'device_type': 'ACCEL' } defines an alias for the Intel QuickAssist card.") + description="An alias for a PCI passthrough device requirement. This " + "allows users to specify the alias in the extra_spec for a " + "flavor, without needing to repeat all the PCI property " + "requirements. For example: pci_alias = { 'name': " + "'QuicAssist', 'product_id': '0443', 'vendor_id': " + "'8086', 'device_type': 'ACCEL' } defines an alias for the " + "Intel QuickAssist card.") nova.param( 'pci_passthrough_whitelist', type='multi', default='', - description="White list of PCI devices available to VMs. For example: pci_passthrough_whitelist = [{'vendor_id': '8086', 'product_id': '0443'}]") + description="White list of PCI devices available to VMs. For example: " + "pci_passthrough_whitelist = [{'vendor_id': '8086', " + "'product_id': '0443'}]") nova.param( 'scheduler_host_manager', @@ -2162,13 +2289,21 @@ nova.param( 'scheduler_host_subset_size', type='integer', default=1, - description="New instances will be scheduled on a host chosen randomly from a subset of the N best hosts. This property defines the subset size that a host is chosen from. A value of 1 chooses the first host returned by the weighing functions. This value must be at least 1. Any value less than 1 will be ignored, and 1 will be used instead") + description="New instances will be scheduled on a host chosen randomly " + "from a subset of the N best hosts. This property defines " + "the subset size that a host is chosen from. A value of 1 choo" + "ses the first host returned by the weighing functions. This v" + "alue must be at least 1. Any value less than 1 will be ignore" + "d, and 1 will be used instead") nova.param( 'cpu_allocation_ratio', type='floating point', default='16.0', - description="Virtual CPU to physical CPU allocation ratio which affects all CPU filters. This configuration specifies a global ratio for CoreFilter. For AggregateCoreFilter, it will fall back to this configuration value if no per-aggregate setting found.") + description="Virtual CPU to physical CPU allocation ratio which affects al" + "l CPU filters. This configuration specifies a global ratio fo" + "r CoreFilter. For AggregateCoreFilter, it will fall back to t" + "his configuration value if no per-aggregate setting found.") nova.param( 'disk_allocation_ratio', @@ -2180,7 +2315,8 @@ nova.param( 'max_io_ops_per_host', type='integer', default=8, - description="Ignore hosts that have too many builds/resizes/snaps/migrations") + description="Ignore hosts that have too many builds/resizes/snaps/" + "migrations") nova.param( 'isolated_images', @@ -2210,19 +2346,27 @@ nova.param( 'ram_allocation_ratio', type='floating point', default='1.5', - description="Virtual ram to physical ram allocation ratio which affects all ram filters. This configuration specifies a global ratio for RamFilter. For AggregateRamFilter, it will fall back to this configuration value if no per-aggregate setting found.") + description="Virtual ram to physical ram allocation ratio which affects " + "all ram filters. This configuration specifies a global ratio" + " for RamFilter. For AggregateRamFilter, it will fall back to" + " this configuration value if no per-aggregate setting found.") nova.param( 'scheduler_available_filters', type='multi', default='nova.scheduler.filters.all_filters', - description="Filter classes available to the scheduler which may be specified more than once. An entry of 'nova.scheduler.filters.standard_filters' maps to all filters included with nova.") + description="Filter classes available to the scheduler which may be" + " specified more than once. An entry of 'nova.scheduler." + "filters.standard_filters' maps to all filters included with" + " nova.") nova.param( 'scheduler_default_filters', type='list', - default='RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter', - description="Which filter class names to use for filtering hosts when not specified in the request.") + default='RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,' + 'ComputeCapabilitiesFilter,ImagePropertiesFilter', + description="Which filter class names to use for filtering hosts when" + " not specified in the request.") nova.param( 'scheduler_weight_classes', @@ -2252,7 +2396,8 @@ nova.param( 'ram_weight_multiplier', type='floating point', default='1.0', - description="Multiplier used for weighing ram. Negative numbers mean to stack vs spread.") + description="Multiplier used for weighing ram. Negative numbers mean to" + " stack vs spread.") nova.param( 'servicegroup_driver', @@ -2270,7 +2415,8 @@ nova.param( 'config_drive_tempdir', type='string', default=None, - description="Where to put temporary files associated with config drive creation") + description="Where to put temporary files associated with config drive" + " creation") nova.param( 'force_config_drive', @@ -2282,7 +2428,8 @@ nova.param( 'mkisofs_cmd', type='string', default='genisoimage', - description="Name and optionally path of the tool used for ISO image creation") + description="Name and optionally path of the tool used for ISO image" + " creation") nova.param( 'injected_network_template', @@ -2294,7 +2441,8 @@ nova.param( 'virt_mkfs', type='multi', default='defaultmkfs.ext3 -L %(fs_label)s -F %(target)s', - description="mkfs commands for ephemeral device. The format is =") + description="mkfs commands for ephemeral device. The format is " + "=") nova.param( 'virt_mkfs', @@ -2312,7 +2460,10 @@ nova.param( 'resize_fs_using_block_device', type='boolean', default=True, - description="Attempt to resize the filesystem by accessing the image over a block device. This is done by the host and may not be necessary if the image contains a recent version of cloud- init. Possible mechanisms require the nbd driver") + description="Attempt to resize the filesystem by accessing the image " + "over a block device. This is done by the host and may not " + "be necessary if the image contains a recent version of " + "cloud- init. Possible mechanisms require the nbd driver") nova.param( 'timeout_nbd', @@ -2330,19 +2481,25 @@ nova.param( 'compute_driver', type='string', default=None, - description="Driver to use for controlling virtualization. Options include: libvirt.LibvirtDriver, xenapi.XenAPIDriver, fake.FakeDriver, baremetal.BareMetalDriver, vmwareapi.VMwareESXDriver, vmwareapi.VMwareVCDriver") + description="Driver to use for controlling virtualization. Options " + "include: libvirt.LibvirtDriver, xenapi.XenAPIDriver, fake." + "FakeDriver, baremetal.BareMetalDriver, vmwareapi." + "VMwareESXDriver, vmwareapi.VMwareVCDriver") nova.param( 'default_ephemeral_format', type='string', default=None, - description="The default format an ephemeral_volume will be formatted with on creation.") + description="The default format an ephemeral_volume will be formatted " + "with on creation.") nova.param( 'preallocate_images', type='string', default='none', - description="VM image preallocation mode: 'none' => no storage provisioning is done up front, 'space' => storage is fully allocated at instance start") + description="VM image preallocation mode: 'none' => no storage" + " provisioning is done up front, 'space' => storage is " + "fully allocated at instance start") nova.param( 'use_cow_images', @@ -2437,7 +2594,8 @@ nova.param( nova.param( 'block_migration_flag', type='string', - default='VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_NON_SHARED_INC', + default='VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, ' + 'VIR_MIGRATE_NON_SHARED_INC', description="Migration flags to be set for block migration") nova.param( @@ -2461,32 +2619,50 @@ nova.param( nova.param( 'libvirt_volume_drivers', type='list', - default='iscsinova.virt.libvirt.volume.LibvirtISCSIVolumeDriver,isernova.virt.libvirt.volume.LibvirtISERVolumeDriver,localnova.virt.libvirt.volume.LibvirtVolumeDriver,fakenova.virt.libvirt.volume.LibvirtFakeVolumeDriver,rbdnova.virt.libvirt.volume.LibvirtNetVolumeDriver,sheepdognova.virt.libvirt.volume.LibvirtNetVolumeDriver,nfsnova.virt.libvirt.volume.LibvirtNFSVolumeDriver,aoenova.virt.libvirt.volume.LibvirtAOEVolumeDriver,glusterfsnova.virt.libvirt.volume.LibvirtGlusterfsVolumeDriver,fibre_channelnova.virt.libvirt.volume.LibvirtFibreChannelVolumeDriver,scalitynova.virt.libvirt.volume.LibvirtScalityVolumeDriver', + default='iscsinova.virt.libvirt.volume.LibvirtISCSIVolumeDriver,' + 'isernova.virt.libvirt.volume.LibvirtISERVolumeDriver,localnova.' + 'virt.libvirt.volume.LibvirtVolumeDriver,fakenova.virt.libvirt.' + 'volume.LibvirtFakeVolumeDriver,rbdnova.virt.libvirt.volume.' + 'LibvirtNetVolumeDriver,sheepdognova.virt.libvirt.volume.' + 'LibvirtNetVolumeDriver,nfsnova.virt.libvirt.volume.' + 'LibvirtNFSVolumeDriver,aoenova.virt.libvirt.volume.' + 'LibvirtAOEVolumeDriver,glusterfsnova.virt.libvirt.volume.' + 'LibvirtGlusterfsVolumeDriver,fibre_channelnova.virt.' + 'libvirt.volume.LibvirtFibreChannelVolumeDriver,scalitynova.virt.' + 'libvirt.volume.LibvirtScalityVolumeDriver', description="Libvirt handlers for remote volumes.") nova.param( 'libvirt_disk_prefix', type='string', default=None, - description="Override the default disk prefix for the devices attached to a server, which is dependent on libvirt_type.") + description="Override the default disk prefix for the devices attached to " + "a server, which is dependent on libvirt_type.") nova.param( 'libvirt_wait_soft_reboot_seconds', type='integer', default=120, - description="Number of seconds to wait for instance to shut down after soft reboot request is made. We fall back to hard reboot if instance does not shutdown within this window.") + description="Number of seconds to wait for instance to shut down after " + "soft reboot request is made. We fall back to hard reboot if " + "instance does not shutdown within this window.") nova.param( 'libvirt_nonblocking', type='boolean', default=True, - description="Use a separated OS thread pool to realize non-blocking libvirt calls") + description="Use a separated OS thread pool to realize non-blocking " + "libvirt calls") nova.param( 'libvirt_cpu_mode', type='string', default=None, - description="Set to 'host-model' to clone the host CPU feature flags; to 'host-passthrough' to use the host CPU model exactly; to 'custom' to use a named CPU model; to 'none' to not set any CPU model. If libvirt_type='kvm|qemu', it will default to 'host-model', otherwise it will default to 'none'") + description="Set to 'host-model' to clone the host CPU feature flags; to " + "'host-passthrough' to use the host CPU model exactly; to " + "'custom' to use a named CPU model; to 'none' to not set any " + "CPU model. If libvirt_type='kvm|qemu', it will default to " + "'host-model', otherwise it will default to 'none'") nova.param( 'libvirt_cpu_model', @@ -2498,7 +2674,8 @@ nova.param( 'libvirt_snapshots_directory', type='string', default='$instances_path/snapshots', - description="Location where libvirt driver will store snapshots before uploading them to image service") + description="Location where libvirt driver will store snapshots before " + "uploading them to image service") nova.param( 'xen_hvmloader_path', @@ -2510,25 +2687,30 @@ nova.param( 'disk_cachemodes', type='list', default='', - description="Specific cachemodes to use for different disk types e.g: ['file=directsync','block=none']") + description="Specific cachemodes to use for different disk types e.g: " + "['file=directsync','block=none']") nova.param( 'vcpu_pin_set', type='string', default=None, - description="Which pcpus can be used by vcpus of instance e.g: '4-12,^8,15'") + description="Which pcpus can be used by vcpus of instance e.g: " + "'4-12,^8,15'") nova.param( 'libvirt_images_type', type='string', default='default', - description="VM Images format. Acceptable values are: raw, qcow2, lvm,rbd, default. If default is specified, then use_cow_images flag is used instead of this one.") + description="VM Images format. Acceptable values are: raw, qcow2, lvm,rbd," + " default. If default is specified, then use_cow_images flag " + "is used instead of this one.") nova.param( 'libvirt_images_volume_group', type='string', default=None, - description="LVM Volume Group that is used for VM images, when you specify libvirt_images_type=lvm.") + description="LVM Volume Group that is used for VM images, when you specify" + " libvirt_images_type=lvm.") nova.param( 'libvirt_sparse_logical_volumes', @@ -2558,13 +2740,16 @@ nova.param( 'base_dir_name', type='string', default='_base', - description="Where cached images are stored under $instances_path.This is NOT the full path - just a folder name.For per-compute-host cached images, set to _base_$my_ip") + description="Where cached images are stored under $instances_path.This is" + " NOT the full path - just a folder name.For per-compute-host" + " cached images, set to _base_$my_ip") nova.param( 'image_info_filename_pattern', type='string', default='$instances_path/$base_dir_name/%(image)s.info', - description="Allows image information files to be stored in non-standard locations") + description="Allows image information files to be stored in non-standard" + " locations") nova.param( 'remove_unused_base_images', @@ -2576,19 +2761,23 @@ nova.param( 'remove_unused_kernels', type='boolean', default=False, - description="Should unused kernel images be removed? This is only safe to enable if all compute nodes have been updated to support this option. This will enabled by default in future.") + description="Should unused kernel images be removed? This is only safe to" + " enable if all compute nodes have been updated to support" + " this option. This will enabled by default in future.") nova.param( 'remove_unused_resized_minimum_age_seconds', type='integer', default=3600, - description="Unused resized base images younger than this will not be removed") + description="Unused resized base images younger than this will not be" + " removed") nova.param( 'remove_unused_original_minimum_age_seconds', type='integer', default=86400, - description="Unused unresized base images younger than this will not be removed") + description="Unused unresized base images younger than this will not be" + " removed") nova.param( 'checksum_base_images', @@ -2606,7 +2795,8 @@ nova.param( 'libvirt_snapshot_compression', type='boolean', default=False, - description="Compress snapshot images when possible. This currently applies exclusively to qcow2 images") + description="Compress snapshot images when possible. This currently" + " applies exclusively to qcow2 images") nova.param( 'libvirt_ovs_bridge', @@ -2654,7 +2844,8 @@ nova.param( 'nfs_mount_options', type='string', default=None, - description="Mount options passed to the nfs client. See section of the nfs man page for details") + description="Mount options passed to the nfs client. See section of the" + " nfs man page for details") nova.param( 'num_aoe_discover_tries', @@ -2666,7 +2857,8 @@ nova.param( 'glusterfs_mount_point_base', type='string', default='$state_path/mnt', - description="Dir where the glusterfs volume is mounted on the compute node") + description="Dir where the glusterfs volume is mounted on the compute" + " node") nova.param( 'libvirt_iscsi_use_multipath', @@ -2696,7 +2888,8 @@ nova.param( 'qemu_allowed_storage_drivers', type='list', default='', - description="Protocols listed here will be accessed directly from QEMU. Currently supported protocols: [gluster]") + description="Protocols listed here will be accessed directly from QEMU." + " Currently supported protocols: [gluster]") nova.param( 'powervm_mgr_type', @@ -2726,13 +2919,15 @@ nova.param( 'powervm_img_remote_path', type='string', default='/home/padmin', - description="PowerVM image remote path where images will be moved. Make sure this path can fit your biggest image in glance") + description="PowerVM image remote path where images will be moved. Make" + " sure this path can fit your biggest image in glance") nova.param( 'powervm_img_local_path', type='string', default='/tmp', - description="Local directory to download glance images to. Make sure this path can fit your biggest image in glance") + description="Local directory to download glance images to. Make sure this" + " path can fit your biggest image in glance") nova.param( 'agent_timeout', @@ -2750,67 +2945,85 @@ nova.param( 'agent_resetnetwork_timeout', type='integer', default=60, - description="number of seconds to wait for agent reply to resetnetwork request") + description="number of seconds to wait for agent reply to resetnetwork" + " request") nova.param( 'xenapi_agent_path', type='string', default='usr/sbin/xe-update-networking', - description="Specifies the path in which the xenapi guest agent should be located. If the agent is present, network configuration is not injected into the image. Used if compute_driver=xenapi.XenAPIDriver and flat_injected=True") + description="Specifies the path in which the xenapi guest agent should be" + " located. If the agent is present, network configuration is" + " not injected into the image. Used if compute_driver=xenapi" + ".XenAPIDriver and flat_injected=True") nova.param( 'xenapi_disable_agent', type='boolean', default=False, - description="Disables the use of the XenAPI agent in any image regardless of what image properties are present. ") + description="Disables the use of the XenAPI agent in any image regardless" + " of what image properties are present. ") nova.param( 'xenapi_use_agent_default', type='boolean', default=False, - description="Determines if the xenapi agent should be used when the image used does not contain a hint to declare if the agent is present or not. The hint is a glance property 'xenapi_use_agent' that has the value 'true' or 'false'. Note that waiting for the agent when it is not present will significantly increase server boot times.") + description="Determines if the xenapi agent should be used when the image" + " used does not contain a hint to declare if the agent is" + " present or not. The hint is a glance property" + " 'xenapi_use_agent' that has the value 'true' or 'false'." + " Note that waiting for the agent when it is not present will" + " significantly increase server boot times.") nova.param( 'xenapi_connection_url', type='string', default=None, - description="URL for connection to XenServer/Xen Cloud Platform. A special value of unix://local can be used to connect to the local unix socket. Required if compute_driver=xenapi.XenAPIDriver") + description="URL for connection to XenServer/Xen Cloud Platform. A special" + " value of unix://local can be used to connect to the local " + "unix socket. Required if compute_driver=xenapi.XenAPIDriver") nova.param( 'xenapi_connection_username', type='string', default='root', - description="Username for connection to XenServer/Xen Cloud Platform. Used only if compute_driver=xenapi.XenAPIDriver") + description="Username for connection to XenServer/Xen Cloud Platform. " + "Used only if compute_driver=xenapi.XenAPIDriver") nova.param( 'xenapi_connection_password', type='string', default=None, - description="Password for connection to XenServer/Xen Cloud Platform. Used only if compute_driver=xenapi.XenAPIDriver") + description="Password for connection to XenServer/Xen Cloud Platform. " + "Used only if compute_driver=xenapi.XenAPIDriver") nova.param( 'xenapi_connection_concurrent', type='integer', default=5, - description="Maximum number of concurrent XenAPI connections. Used only if compute_driver=xenapi.XenAPIDriver") + description="Maximum number of concurrent XenAPI connections. Used only if" + " compute_driver=xenapi.XenAPIDriver") nova.param( 'xenapi_vhd_coalesce_poll_interval', type='floating point', default='5.0', - description="The interval used for polling of coalescing vhds. Used only if compute_driver=xenapi.XenAPIDriver") + description="The interval used for polling of coalescing vhds. Used only" + " if compute_driver=xenapi.XenAPIDriver") nova.param( 'xenapi_check_host', type='boolean', default=True, - description="Ensure compute service is running on host XenAPI connects to.") + description="Ensure compute service is running on host XenAPI connects " + "to.") nova.param( 'xenapi_vhd_coalesce_max_attempts', type='integer', default=5, - description="Max number of times to poll for VHD to coalesce. Used only if compute_driver=xenapi.XenAPIDriver") + description="Max number of times to poll for VHD to coalesce. Used only if" + " compute_driver=xenapi.XenAPIDriver") nova.param( 'xenapi_sr_base_path', @@ -2870,13 +3083,15 @@ nova.param( 'xenapi_torrent_seed_duration', type='integer', default=3600, - description="Number of seconds after downloading an image via BitTorrent that it should be seeded for other peers.") + description="Number of seconds after downloading an image via BitTorrent" + " that it should be seeded for other peers.") nova.param( 'xenapi_torrent_max_last_accessed', type='integer', default=86400, - description="Cached torrent files not accessed within this number of seconds can be reaped") + description="Cached torrent files not accessed within this number of" + " seconds can be reaped") nova.param( 'xenapi_torrent_listen_port_start', @@ -2894,13 +3109,15 @@ nova.param( 'xenapi_torrent_download_stall_cutoff', type='integer', default=600, - description="Number of seconds a download can remain at the same progress percentage w/o being considered a stall") + description="Number of seconds a download can remain at the same progress" + " percentage w/o being considered a stall") nova.param( 'xenapi_torrent_max_seeder_processes_per_host', type='integer', default=1, - description="Maximum number of seeder processes to run concurrently within a given dom0.") + description="Maximum number of seeder processes to run concurrently within" + " a given dom0.") nova.param( 'use_join_force', @@ -2918,13 +3135,17 @@ nova.param( 'cache_images', type='string', default='all', - description="Cache glance images locally. `all` will cache all images, `some` will only cache images that have the image_property `cache_in_nova=True`, and `none` turns off caching entirely") + description="Cache glance images locally. `all` will cache all images," + " `some` will only cache images that have the image_property" + " `cache_in_nova=True`, and `none` turns off caching entirely") nova.param( 'xenapi_image_compression_level', type='integer', default=None, - description="Compression level for images, e.g., 9 for gzip -9. Range is 1-9, 9 being most compressed but most CPU intensive on dom0.") + description="Compression level for images, e.g., 9 for gzip -9. Range is" + " 1-9, 9 being most compressed but most CPU intensive on " + "dom0.") nova.param( 'default_os_type', @@ -2948,7 +3169,14 @@ nova.param( 'sr_matching_filter', type='string', default='default-sr:true', - description="Filter for finding the SR to be used to install guest instances on. To use the Local Storage in default XenServer/XCP installations set this flag to other-config :i18n-key=local-storage. To select an SR with a different matching criteria, you could set it to other- config:my_favorite_sr=true. On the other hand, to fall back on the Default SR, as displayed by XenCenter, set this flag to: default-sr:true") + description="Filter for finding the SR to be used to install guest" + " instances on. To use the Local Storage in default" + " XenServer/XCP installations set this flag to other-config" + " :i18n-key=local-storage. To select an SR with a different" + " matching criteria, you could set it to other- " + "config:my_favorite_sr=true. On the other hand, to fall back " + "on the Default SR, as displayed by XenCenter, set this " + "flag to: default-sr:true") nova.param( 'xenapi_sparse_copy', @@ -2984,13 +3212,15 @@ nova.param( 'xenapi_ipxe_mkisofs_cmd', type='string', default='mkisofs', - description="Name and optionally path of the tool used for ISO image creation") + description="Name and optionally path of the tool used for ISO image " + "creation") nova.param( 'xenapi_running_timeout', type='integer', default=60, - description="number of seconds to wait for instance to go to running state") + description="number of seconds to wait for instance to go to running " + "state") nova.param( 'xenapi_vif_driver', @@ -3008,13 +3238,15 @@ nova.param( 'novncproxy_base_url', type='string', default='http://127.0.0.1:6080/vnc_auto.html', - description="location of vnc console proxy, in the form 'http://127.0.0.1:6080/vnc_auto.html'") + description="location of vnc console proxy, in the form " + "'http://127.0.0.1:6080/vnc_auto.html'") nova.param( 'xvpvncproxy_base_url', type='string', default='http://127.0.0.1:6081/console', - description="location of nova xvp vnc console proxy, in the form 'http://127.0.0.1:6081/console'") + description="location of nova xvp vnc console proxy, in the form " + "'http://127.0.0.1:6081/console'") nova.param( 'vncserver_listen', @@ -3062,13 +3294,16 @@ nova.param( 'cinder_catalog_info', type='string', default='volume:cinder:publicURL', - description="Info to match when looking for cinder in the service catalog. Format is : separated values of the form: ::") + description="Info to match when looking for cinder in the service catalog." + " Format is : separated values of the form: :" + ":") nova.param( 'cinder_endpoint_template', type='string', default=None, - description="Override service catalog lookup with template for cinder endpoint e.g. http://localhost:8776/v1/%(project_id)s") + description="Override service catalog lookup with template for cinder " + "endpoint e.g. http://localhost:8776/v1/%(project_id)s") nova.param( 'os_region_name', @@ -3080,7 +3315,8 @@ nova.param( 'cinder_ca_certificates_file', type='string', default=None, - description="Location of ca certicates file to use for cinder client requests.") + description="Location of ca certicates file to use for cinder client " + "requests.") nova.param( 'cinder_http_retries', @@ -3098,14 +3334,17 @@ nova.param( 'cinder_cross_az_attach', type='boolean', default=True, - description="Allow attach between instance and volume in different availability zones.") + description="Allow attach between instance and volume in different " + "availability zones.") nova.param( 'sql_connection', type='string', default='sqlite:////nova/openstack/common/db/$sqlite_db', - description="The SQLAlchemy connection string used to connect to the database", - deprecation_message='Deprecated in favor of "[database]connection" parameter') + description="The SQLAlchemy connection string used to connect to the " + "database", + deprecation_message='Deprecated in favor of "[database]connection" ' + 'parameter') nova.section('hyperv') @@ -3113,7 +3352,11 @@ nova.param( 'instances_path_share', type='string', default='', - description="The name of a Windows share name mapped to the 'instances_path' dir and used by the resize feature to copy files to the target host. If left blank, an administrative share will be used, looking for the same 'instances_path' used locally") + description="The name of a Windows share name mapped to the " + "'instances_path' dir and used by the resize feature to copy " + "files to the target host. If left blank, an administrative " + "share will be used, looking for the same 'instances_path' " + "used locally") nova.param( 'force_hyperv_utils_v1', @@ -3131,13 +3374,15 @@ nova.param( 'vswitch_name', type='string', default=None, - description="External virtual switch Name, if not provided, the first external virtual switch is used") + description="External virtual switch Name, if not provided, the first " + "external virtual switch is used") nova.param( 'limit_cpu_features', type='boolean', default=False, - description="Required for live migration among hosts with different CPU features") + description="Required for live migration among hosts with different CPU " + "features") nova.param( 'config_drive_inject_password', @@ -3155,13 +3400,17 @@ nova.param( 'config_drive_cdrom', type='boolean', default=False, - description="Attaches the Config Drive image as a cdrom drive instead of a disk drive") + description="Attaches the Config Drive image as a cdrom drive instead of a" + " disk drive") nova.param( 'enable_instance_metrics_collection', type='boolean', default=False, - description="Enables metrics collections for an instance by using Hyper-V's metric APIs. Collected data can by retrieved by other apps and services, e.g.: Ceilometer. Requires Hyper-V / Windows Server 2012 and above") + description="Enables metrics collections for an instance by using " + "Hyper-V's metric APIs. Collected data can by retrieved by " + "other apps and services, e.g.: Ceilometer. Requires Hyper-V " + "/ Windows Server 2012 and above") nova.param( 'dynamic_memory_ratio', @@ -3187,7 +3436,8 @@ nova.param( 'address', type='string', default=None, - description="The ZooKeeper addresses for servicegroup service in the format of host1:port,host2:port,host3:port") + description="The ZooKeeper addresses for servicegroup service in the " + "format of host1:port,host2:port,host3:port") nova.param( 'recv_timeout', @@ -3219,13 +3469,16 @@ nova.param( 'extensions_blacklist', type='list', default='', - description="A list of v3 API extensions to never load. Specify the extension aliases here.") + description="A list of v3 API extensions to never load. Specify the " + "extension aliases here.") nova.param( 'extensions_whitelist', type='list', default='', - description="If the list is not empty then a v3 API extension will only be loaded if it exists in this list. Specify the extension aliases here.") + description="If the list is not empty then a v3 API extension will only " + "be loaded if it exists in this list. Specify the extension " + "aliases here.") nova.section('conductor') @@ -3279,7 +3532,8 @@ nova.param( 'instance_updated_at_threshold', type='integer', default=3600, - description="Number of seconds after an instance was updated or deleted to continue to update cells") + description="Number of seconds after an instance was updated or deleted to" + " continue to update cells") nova.param( 'instance_update_num_instances', @@ -3339,7 +3593,8 @@ nova.param( 'reserve_percent', type='floating point', default='10.0', - description="Percentage of cell capacity to hold in reserve. Affects both memory and disk utilization") + description="Percentage of cell capacity to hold in reserve. Affects both " + "memory and disk utilization") nova.param( 'cell_type', @@ -3351,7 +3606,9 @@ nova.param( 'mute_child_interval', type='integer', default=300, - description="Number of seconds after which a lack of capability and capacity updates signals the child cell is to be treated as a mute.") + description="Number of seconds after which a lack of capability and " + "capacity updates signals the child cell is to be treated as " + "a mute.") nova.param( 'bandwidth_update_interval', @@ -3363,19 +3620,24 @@ nova.param( 'rpc_driver_queue_base', type='string', default='cells.intercell', - description="Base queue name to use when communicating between cells. Various topics by message type will be appended to this.") + description="Base queue name to use when communicating between cells. " + "Various topics by message type will be appended to this.") nova.param( 'scheduler_filter_classes', type='list', default='nova.cells.filters.all_filters', - description="Filter classes the cells scheduler should use. An entry of 'nova.cells.filters.all_filters'maps to all cells filters included with nova.") + description="Filter classes the cells scheduler should use. An entry of " + "'nova.cells.filters.all_filters'maps to all cells filters " + "included with nova.") nova.param( 'scheduler_weight_classes', type='list', default='nova.cells.weights.all_weighers', - description="Weigher classes the cells scheduler should use. An entry of 'nova.cells.weights.all_weighers'maps to all cell weighers included with nova.") + description="Weigher classes the cells scheduler should use. An entry of " + "'nova.cells.weights.all_weighers'maps to all cell weighers " + "included with nova.") nova.param( 'scheduler_retries', @@ -3399,7 +3661,8 @@ nova.param( 'cells_config', type='string', default=None, - description="Configuration file from which to read cells configuration. If given, overrides reading cells from the database.") + description="Configuration file from which to read cells configuration. " + "If given, overrides reading cells from the database.") nova.param( 'mute_weight_multiplier', @@ -3417,7 +3680,8 @@ nova.param( 'ram_weight_multiplier', type='floating point', default='10.0', - description="Multiplier used for weighing ram. Negative numbers mean to stack vs spread.") + description="Multiplier used for weighing ram. Negative numbers mean to " + "stack vs spread.") nova.section('database') @@ -3431,19 +3695,22 @@ nova.param( 'use_tpool', type='boolean', default=False, - description="Enable the experimental use of thread pooling for all DB API calls") + description="Enable the experimental use of thread pooling for all DB API " + "calls") nova.param( 'connection', type='string', default='sqlite:////nova/openstack/common/db/$sqlite_db', - description="The SQLAlchemy connection string used to connect to the database") + description="The SQLAlchemy connection string used to connect to the " + "database") nova.param( 'slave_connection', type='string', default='', - description="The SQLAlchemy connection string used to connect to the slave database") + description="The SQLAlchemy connection string used to connect to the " + "slave database") nova.param( 'idle_timeout', @@ -3485,7 +3752,8 @@ nova.param( 'connection_debug', type='integer', default=0, - description="Verbosity of SQL debugging information. 0=None, 100=Everything") + description="Verbosity of SQL debugging information. 0=None, " + "100=Everything") nova.param( 'connection_trace', @@ -3505,7 +3773,8 @@ nova.param( 'filesystems', type='list', default='', - description="A list of filesystems that will be configured in this file under the sections image_file_url:") + description="A list of filesystems that will be configured in this file " + "under the sections image_file_url:") nova.section('baremetal') @@ -3519,7 +3788,8 @@ nova.param( 'sql_connection', type='string', default='sqlite:///$state_path/baremetal_$sqlite_db', - description="The SQLAlchemy connection string used to connect to the bare-metal database") + description="The SQLAlchemy connection string used to connect to the " + "bare-metal database") nova.param( 'inject_password', @@ -3549,7 +3819,10 @@ nova.param( 'instance_type_extra_specs', type='list', default='', - description="a list of additional capabilities corresponding to instance_type_extra_specs for this compute host to advertise. Valid entries are name=value, pairs For example, 'key1:val1, key2:val2'") + description="a list of additional capabilities corresponding to instance_" + "type_extra_specs for this compute host to advertise. Valid " + "entries are name=value, pairs For example, 'key1:val1, " + "key2:val2'") nova.param( 'driver', @@ -3633,13 +3906,15 @@ nova.param( 'pxe_network_config', type='boolean', default=False, - description="If set, pass the network configuration details to the initramfs via cmdline.") + description="If set, pass the network configuration details to the " + "initramfs via cmdline.") nova.param( 'pxe_bootfile_name', type='string', default='pxelinux.0', - description="This gets passed to Neutron as the bootfile dhcp parameter when the dhcp_options_enabled is set.") + description="This gets passed to Neutron as the bootfile dhcp parameter " + "when the dhcp_options_enabled is set.") nova.param( 'tile_pdu_ip', @@ -3675,7 +3950,8 @@ nova.param( 'tile_power_wait', type='integer', default=9, - description="wait time in seconds until check the result after tilera power operations") + description="wait time in seconds until check the result after tilera " + "power operations") nova.param( 'virtual_power_ssh_host', @@ -3717,7 +3993,9 @@ nova.param( 'use_unsafe_iscsi', type='boolean', default=False, - description="Do not set this out of dev/test environments. If a node does not have a fixed PXE IP address, volumes are exported with globally opened ACL") + description="Do not set this out of dev/test environments. If a node does" + " not have a fixed PXE IP address, volumes are exported with" + " globally opened ACL") nova.param( 'iscsi_iqn_prefix', @@ -3817,7 +4095,8 @@ nova.param( 'baseapi', type='string', default=None, - description="Set a version cap for messages sent to the base api in any service") + description="Set a version cap for messages sent to the base api in any " + "service") nova.param( 'intercell', @@ -3887,43 +4166,55 @@ nova.param( 'host_ip', type='string', default=None, - description="URL for connection to VMware ESX/VC host. Required if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="URL for connection to VMware ESX/VC host. Required if " + "compute_driver is vmwareapi.VMwareESXDriver or vmwareapi." + "VMwareVCDriver.") nova.param( 'host_username', type='string', default=None, - description="Username for connection to VMware ESX/VC host. Used only if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="Username for connection to VMware ESX/VC host. Used only if " + "compute_driver is vmwareapi.VMwareESXDriver or vmwareapi." + "VMwareVCDriver.") nova.param( 'host_password', type='string', default=None, - description="Password for connection to VMware ESX/VC host. Used only if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="Password for connection to VMware ESX/VC host. Used only if " + "compute_driver is vmwareapi.VMwareESXDriver or vmwareapi." + "VMwareVCDriver.") nova.param( 'cluster_name', type='multi', default=None, - description="Name of a VMware Cluster ComputeResource. Used only if compute_driver is vmwareapi.VMwareVCDriver.") + description="Name of a VMware Cluster ComputeResource. Used only if " + "compute_driver is vmwareapi.VMwareVCDriver.") nova.param( 'datastore_regex', type='string', default=None, - description="Regex to match the name of a datastore. Used only if compute_driver is vmwareapi.VMwareVCDriver.") + description="Regex to match the name of a datastore. Used only if " + "compute_driver is vmwareapi.VMwareVCDriver.") nova.param( 'task_poll_interval', type='floating point', default='5.0', - description="The interval used for polling of remote tasks. Used only if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="The interval used for polling of remote tasks. Used only " + "if compute_driver is vmwareapi.VMwareESXDriver or " + "vmwareapi.VMwareVCDriver.") nova.param( 'api_retry_count', type='integer', default=10, - description="The number of times we retry on failures, e.g., socket error, etc. Used only if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="The number of times we retry on failures, e.g., socket " + "error, etc. Used only if compute_driver is vmwareapi." + "VMwareESXDriver or vmwareapi.VMwareVCDriver.") nova.param( 'vnc_port', @@ -3959,13 +4250,21 @@ nova.param( 'wsdl_location', type='string', default=None, - description="Optional VIM Service WSDL Location e.g http:///vimService.wsdl. Optional over-ride to default location for bug work-arounds") + description="Optional VIM Service WSDL Location e.g http:///" + "vimService.wsdl. Optional over-ride to default location for " + "bug work-arounds") nova.param( 'maximum_objects', type='integer', default=100, - description="The maximum number of ObjectContent data objects that should be returned in a single result. A positive value will cause the operation to suspend the retrieval when the count of objects reaches the specified maximum. The server may still limit the count to something less than the configured value. Any remaining objects may be retrieved with additional requests.") + description="The maximum number of ObjectContent data objects that should " + "be returned in a single result. A positive value will cause " + "the operation to suspend the retrieval when the count of " + "objects reaches the specified maximum. The server may still " + "limit the count to something less than the configured value. " + "Any remaining objects may be retrieved with additional " + "requests.") nova.param( 'integration_bridge', @@ -3979,7 +4278,8 @@ nova.param( 'html5proxy_base_url', type='string', default='http://127.0.0.1:6082/spice_auto.html', - description="location of spice html5 console proxy, in the form 'http://127.0.0.1:6082/spice_auto.html'") + description="location of spice html5 console proxy, in the form " + "'http://127.0.0.1:6082/spice_auto.html'") nova.param( 'server_listen', diff --git a/ostack_validator/schemas/nova/v2013_1_4.py b/ostack_validator/schemas/nova/v2013_1_4.py index 64610fb..2b136e3 100644 --- a/ostack_validator/schemas/nova/v2013_1_4.py +++ b/ostack_validator/schemas/nova/v2013_1_4.py @@ -11,7 +11,8 @@ nova.param( description="availability_zone to show internal services under") nova.param('default_availability_zone', type='string', - default='nova', description="default compute node availability_zone") + default='nova', description="default compute node " + "availability_zone") nova.param('ca_file', type='string', default='cacert.pem', description="Filename of root CA") @@ -32,35 +33,53 @@ nova.param('use_project_ca', type='boolean', default='false', description="Should we use a CA for each project?") nova.param( - 'user_cert_subject', type='string', default='/CUS/STCalifornia/OOpenStack/OUNovaDev/CN%.16s-%.16s-%s', - description="Subject for certificate for users, %s for project, user, timestamp") + 'user_cert_subject', type='string', + default='/CUS/STCalifornia/OOpenStack/OUNovaDev/CN%.16s-%.16s-%s', + description="Subject for certificate for users, %s for project, " + "user, timestamp") nova.param( - 'project_cert_subject', type='string', default='/CUS/STCalifornia/OOpenStack/OUNovaDev/CNproject-ca-%.16s-%s', - description="Subject for certificate for projects, %s for project, timestamp") + 'project_cert_subject', type='string', + default='/CUS/STCalifornia/OOpenStack/OUNovaDev/CNproject-ca-%.16s-%s', + description="Subject for certificate for projects, %s for project, " + "timestamp") nova.param('fatal_exception_format_errors', type='boolean', - default='false', description="make exception message format errors fatal") + default='false', description="make exception message format errors" + " fatal") nova.param('run_external_periodic_tasks', type='boolean', default='true', - description="Some periodic tasks can be run in a separate process. Should we run them here?") + description="Some periodic tasks can be run in a separate process." + " Should we run them here?") nova.param('my_ip', type='string', default='10.0.0.1', description="ip address of this host") nova.param('host', type='string', default='nova', - description="Name of this node. This can be an opaque identifier. It is not necessarily a hostname, FQDN, or IP address. However, the node name must be valid within an AMQP key, and if using ZeroMQ, a valid hostname, FQDN, or IP address") + description="Name of this node. This can be an opaque identifier." + " It is not necessarily a hostname, FQDN, or IP" + " address. However, the node name must be valid within" + " an AMQP key, and if using ZeroMQ, a valid hostname," + " FQDN, or IP address") nova.param('use_ipv6', type='boolean', default='false', description="use ipv6") nova.param('notify_on_any_change', type='boolean', default='false', - description="If set, send compute.instance.update notifications on instance state changes. Valid values are False for no notifications, True for notifications on any instance changes.") + description="If set, send compute.instance.update notifications" + " on instance state changes. Valid values are False" + " for no notifications, True for notifications on any" + " instance changes.") nova.param('notify_api_faults', type='boolean', default='false', - description="If set, send api.fault notifications on caught exceptions in the API service.") + description="If set, send api.fault notifications on caught " + "exceptions in the API service.") nova.param('notify_on_state_change', type='string', default='', - description="If set, send compute.instance.update notifications on instance state changes. Valid values are None for no notifications, 'vm_state' for notifications on VM state changes, or 'vm_and_task_state' for notifications on VM and task state changes.") + description="If set, send compute.instance.update notifications " + "on instance state changes. Valid values are None for" + " no notifications, 'vm_state' for notifications on VM" + " state changes, or 'vm_and_task_state' for" + " notifications on VM and task state changes.") nova.param('pybasedir', type='string', default='/usr/lib/python/site-packages', description="Directory where the nova python module is installed") @@ -96,7 +115,8 @@ nova.param('quota_injected_files', type='integer', default='5', description="number of injected files allowed") nova.param('quota_injected_file_content_bytes', type='integer', - default='10240', description="number of bytes allowed per injected file") + default='10240', description="number of bytes allowed per injected" + " file") nova.param('quota_injected_file_path_bytes', type='integer', default='255', description="number of bytes allowed per injected file path") @@ -129,7 +149,8 @@ nova.param('periodic_enable', type='boolean', default='true', description="enable periodic tasks") nova.param('periodic_fuzzy_delay', type='integer', default='60', - description="range of seconds to randomly delay when starting the periodic task scheduler to reduce stampeding.") + description="range of seconds to randomly delay when starting the " + "periodic task scheduler to reduce stampeding.") nova.param('enabled_apis', type='list', default='ec2,osapi_compute,metadata', description="a list of APIs to enable by default") @@ -156,7 +177,8 @@ nova.param('osapi_compute_workers', type='integer', default='', description="Number of workers for OpenStack API service") nova.param( - 'metadata_manager', type='string', default='nova.api.manager.MetadataManager', + 'metadata_manager', type='string', + default='nova.api.manager.MetadataManager', description="OpenStack metadata service manager") nova.param('metadata_listen', type='string', default='0.0.0.0', @@ -169,11 +191,13 @@ nova.param('metadata_workers', type='integer', default='', description="Number of workers for metadata service") nova.param( - 'compute_manager', type='string', default='nova.compute.manager.ComputeManager', + 'compute_manager', type='string', + default='nova.compute.manager.ComputeManager', description="full class name for the Manager for compute") nova.param( - 'console_manager', type='string', default='nova.console.manager.ConsoleProxyManager', + 'console_manager', type='string', + default='nova.console.manager.ConsoleProxyManager', description="full class name for the Manager for console proxy") nova.param( @@ -181,11 +205,13 @@ nova.param( description="full class name for the Manager for cert") nova.param( - 'network_manager', type='string', default='nova.network.manager.VlanManager', + 'network_manager', type='string', + default='nova.network.manager.VlanManager', description="full class name for the Manager for network") nova.param( - 'scheduler_manager', type='string', default='nova.scheduler.manager.SchedulerManager', + 'scheduler_manager', type='string', + default='nova.scheduler.manager.SchedulerManager', description="full class name for the Manager for scheduler") nova.param('service_down_time', type='integer', default='60', @@ -198,20 +224,26 @@ nova.param('monkey_patch', type='boolean', default='false', description="Whether to log monkey patching") nova.param( - 'monkey_patch_modules', type='list', default='nova.api.ec2.cloud:nova.openstack.common.notifier.api.notify_decorator,nova.compute.api:nova.openstack.common.notifier.api.notify_decorator', + 'monkey_patch_modules', type='list', + default='nova.api.ec2.cloud:nova.openstack.common.notifier.api' + '.notify_decorator,nova.compute.api:nova.openstack.common' + '.notifier.api.notify_decorator', description="List of modules/decorators to monkey patch") nova.param('password_length', type='integer', default='12', description="Length of generated instance admin passwords") nova.param('disable_process_locking', type='boolean', - default='false', description="Whether to disable inter-process locks") + default='false', + description="Whether to disable inter-process locks") nova.param('instance_usage_audit_period', type='string', default='month', - description="time period to generate instance usages for. Time period must be hour, day, month or year") + description="time period to generate instance usages for. Time " + "period must be hour, day, month or year") nova.param('rootwrap_config', type='string', default='/etc/nova/rootwrap.conf', - description="Path to the rootwrap configuration file to use for running commands as root") + description="Path to the rootwrap configuration file to use for " + "running commands as root") nova.param('tempdir', type='string', default='', description="Explicitly specify the temporary working directory") @@ -220,11 +252,17 @@ nova.param('api_paste_config', type='string', default='api-paste.ini', description="File name for the paste.deploy config for nova-api") nova.param( - 'wsgi_log_format', type='string', default='%(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f', - description="A python format string that is used as the template to generate log lines. The following values can be formatted into it: client_ip, date_time, request_line, status_code, body_length, wall_seconds.") + 'wsgi_log_format', type='string', + default='%(client_ip)s "%(request_line)s" status: %(status_code)s len: ' + '%(body_length)s time: %(wall_seconds).7f', + description="A python format string that is used as the template to " + "generate log lines. The following values can be formatted " + "into it: client_ip, date_time, request_line, status_code, " + "body_length, wall_seconds.") nova.param('ssl_ca_file', type='string', default='', - description="CA certificate file to use to verify connecting clients") + description="CA certificate file to use to verify connecting " + "clients") nova.param('ssl_cert_file', type='string', default='', description="SSL certificate of API server") @@ -233,7 +271,8 @@ nova.param('ssl_key_file', type='string', default='', description="SSL private key of API server") nova.param('tcp_keepidle', type='integer', default='600', - description="Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X.") + description="Sets the value of TCP_KEEPIDLE in seconds for each " + "server socket. Not supported on OS X.") nova.param('api_rate_limit', type='boolean', default='true', description="whether to rate limit the api") @@ -242,7 +281,8 @@ nova.param('auth_strategy', type='string', default='noauth', description="The strategy to use for auth: noauth or keystone.") nova.param('use_forwarded_for', type='boolean', default='false', - description="Treat X-Forwarded-For as the canonical remote address. Only enable this if you have a sanitizing proxy.") + description="Treat X-Forwarded-For as the canonical remote address." + " Only enable this if you have a sanitizing proxy.") nova.param('lockout_attempts', type='integer', default='5', description="Number of failed auths before lockout.") @@ -254,14 +294,17 @@ nova.param('lockout_window', type='integer', default='15', description="Number of minutes for lockout window.") nova.param( - 'keystone_ec2_url', type='string', default='http://localhost:5000/v2.0/ec2tokens', + 'keystone_ec2_url', type='string', + default='http://localhost:5000/v2.0/ec2tokens', description="URL to get token from ec2 request.") nova.param('ec2_private_dns_show_ip', type='boolean', default='false', - description="Return the IP address as private dns hostname in describe instances") + description="Return the IP address as private dns hostname in " + "describe instances") nova.param('ec2_strict_validation', type='boolean', default='true', - description="Validate security group names according to EC2 specification") + description="Validate security group names according to EC2 " + "specification") nova.param('ec2_timestamp_expiry', type='integer', default='300', description="Time in seconds before ec2 timestamp expires") @@ -276,7 +319,8 @@ nova.param('ec2_port', type='integer', default='8773', description="the port of the ec2 api server") nova.param('ec2_scheme', type='string', default='http', - description="the protocol to use when connecting to the ec2 api server") + description="the protocol to use when connecting to the ec2 api " + "server") nova.param('ec2_path', type='string', default='/services/Cloud', description="the path prefix used to call the ec2 api server") @@ -285,29 +329,39 @@ nova.param('region_list', type='list', default='', description="list of region=fqdn pairs separated by commas") nova.param( - 'config_drive_skip_versions', type='string', default='1.0 2007-01-19 2007-03-01 2007-08-29 2007-10-10 2007-12-15 2008-02-01 2008-09-01', - description="List of metadata versions to skip placing into the config drive") + 'config_drive_skip_versions', type='string', + default='1.0 2007-01-19 2007-03-01 2007-08-29 2007-10-10 2007-12-15 ' + '2008-02-01 2008-09-01', + description="List of metadata versions to skip placing into the " + "config drive") nova.param('service_quantum_metadata_proxy', type='boolean', default='false', - description="Set flag to indicate Quantum will proxy metadata requests and resolve instance ids.") + description="Set flag to indicate Quantum will proxy metadata " + "requests and resolve instance ids.") nova.param('quantum_metadata_proxy_shared_secret', type='string', default='', - description="Shared secret to validate proxies Quantum metadata requests") + description="Shared secret to validate proxies Quantum metadata " + "requests") nova.param('osapi_max_limit', type='integer', default='1000', - description="the maximum number of items returned in a single response from a collection resource") + description="the maximum number of items returned in a single " + "response from a collection resource") nova.param('osapi_compute_link_prefix', type='string', default='', - description="Base URL that will be presented to users in links to the OpenStack Compute API") + description="Base URL that will be presented to users in links to " + "the OpenStack Compute API") nova.param('osapi_glance_link_prefix', type='string', default='', - description="Base URL that will be presented to users in links to glance resources") + description="Base URL that will be presented to users in links to " + "glance resources") nova.param('allow_instance_snapshots', type='boolean', default='true', description="Permit instance snapshot operations.") nova.param('osapi_compute_ext_list', type='list', default='', - description="Specify list of extensions to load when using osapi_compute_extension option with nova.api.openstack.compute.contrib.select_extensions") + description="Specify list of extensions to load when using " + "osapi_compute_extension option with nova.api" + ".openstack.compute.contrib.select_extensions") nova.param('fping_path', type='string', default='/usr/sbin/fping', description="Full path to fping.") @@ -325,10 +379,12 @@ nova.param('quantum_default_tenant_id', type='string', default='default', description="Default tenant id when creating quantum networks") nova.param('osapi_compute_extension', type='multi', - default='nova.api.openstack.compute.contrib.standard_extensions', description="osapi compute extension to load") + default='nova.api.openstack.compute.contrib.standard_extensions', + description="osapi compute extension to load") nova.param('enable_instance_password', type='boolean', default='true', - description="Allows use of instance password during server creation") + description="Allows use of instance password during server " + "creation") nova.param('osapi_max_request_body_size', type='integer', default='114688', description="the maximum body size per each osapi request(bytes)") @@ -343,7 +399,8 @@ nova.param('vpn_instance_type', type='string', default='m1.tiny', description="Instance type for vpn instances") nova.param( - 'boot_script_template', type='string', default='$pybasedir/nova/cloudpipe/bootscript.template', + 'boot_script_template', type='string', + default='$pybasedir/nova/cloudpipe/bootscript.template', description="Template for cloudpipe instance boot script") nova.param('dmz_net', type='string', default='10.0.0.0', @@ -353,7 +410,8 @@ nova.param('dmz_mask', type='string', default='255.255.255.0', description="Netmask to push into openvpn config") nova.param('vpn_key_suffix', type='string', default='-vpn', - description="Suffix to add to project name for vpn key and secgroups") + description="Suffix to add to project name for vpn key and " + "secgroups") nova.param('memcached_servers', type='list', default='', description="Memcached servers or None for in process cache.") @@ -362,57 +420,77 @@ nova.param('compute_api_class', type='string', default='nova.compute.api.API', description="The full class name of the compute API class to use") nova.param('allow_resize_to_same_host', type='boolean', default='false', - description="Allow destination machine to match source for resize. Useful when testing in single-host environments.") + description="Allow destination machine to match source for resize. " + "Useful when testing in single-host environments.") nova.param('default_schedule_zone', type='string', default='', - description="availability zone to use when user doesn't specify one") + description="availability zone to use when user doesn't specify " + "one") nova.param( - 'non_inheritable_image_properties', type='list', default='cache_in_nova,bittorrent', - description="These are image properties which a snapshot should not inherit from an instance") + 'non_inheritable_image_properties', type='list', + default='cache_in_nova,bittorrent', + description="These are image properties which a snapshot should not " + "inherit from an instance") nova.param('null_kernel', type='string', default='nokernel', - description="kernel image that indicates not to use a kernel, but to use a raw disk image instead") + description="kernel image that indicates not to use a kernel, but " + "to use a raw disk image instead") nova.param( - 'multi_instance_display_name_template', type='string', default='%(name)s-%(uuid)s', - description="When creating multiple instances with a single request using the os-multiple-create API extension, this template will be used to build the display name for each instance. The benefit is that the instances end up with different hostnames. To restore legacy behavior of every instance having the same name, set this option to '%(name)s'. Valid keys for the template are: name, uuid, count.") + 'multi_instance_display_name_template', type='string', + default='%(name)s-%(uuid)s', + description="When creating multiple instances with a single request " + "using the os-multiple-create API extension, this template " + "will be used to build the display name for each instance. " + "The benefit is that the instances end up with different" + " hostnames. To restore legacy behavior of every instance " + "having the same name, set this option to '%(name)s'. Valid " + "keys for the template are: name, uuid, count.") nova.param('default_instance_type', type='string', default='m1.small', description="default instance type to use, testing only") nova.param('console_host', type='string', default='nova', - description="Console proxy host to use to connect to instances on this host.") + description="Console proxy host to use to connect to instances " + "on this host.") nova.param('default_access_ip_network_name', type='string', default='', - description="Name of network to use to set access ips for instances") + description="Name of network to use to set access ips for " + "instances") nova.param('defer_iptables_apply', type='boolean', default='false', - description="Whether to batch up the application of IPTables rules during a host restart and apply all at the end of the init phase") + description="Whether to batch up the application of IPTables rules " + "during a host restart and apply all at the end of the " + "init phase") nova.param('instances_path', type='string', default='$state_path/instances', description="where instances are stored on disk") nova.param('instance_usage_audit', type='boolean', default='false', - description="Generate periodic compute.instance.exists notifications") + description="Generate periodic compute.instance.exists " + "notifications") nova.param('live_migration_retry_count', type='integer', default='30', description="Number of 1 second retries needed in live_migration") nova.param('resume_guests_state_on_host_boot', type='boolean', default='false', - description="Whether to start guests that were running before the host rebooted") + description="Whether to start guests that were running before the " + "host rebooted") nova.param('bandwidth_poll_interval', type='integer', default='600', description="interval to pull bandwidth usage info") nova.param('heal_instance_info_cache_interval', type='integer', default='60', - description="Number of seconds between instance info_cache self healing updates") + description="Number of seconds between instance info_cache self " + "healing updates") nova.param('host_state_interval', type='integer', default='120', description="Interval in seconds for querying the host status") nova.param('image_cache_manager_interval', type='integer', default='2400', - description="Number of seconds to wait between runs of the image cache manager") + description="Number of seconds to wait between runs of the image " + "cache manager") nova.param('reclaim_instance_interval', type='integer', default='0', description="Interval in seconds for reclaiming deleted instances") @@ -421,26 +499,34 @@ nova.param('volume_usage_poll_interval', type='integer', default='0', description="Interval in seconds for gathering volume usages") nova.param('running_deleted_instance_action', type='string', default='log', - description="Action to take if a running deleted instance is detected.Valid options are 'noop', 'log' and 'reap'. Set to 'noop' to disable.") + description="Action to take if a running deleted instance is" + " detected.Valid options are 'noop', 'log' and 'reap'. " + "Set to 'noop' to disable.") nova.param( 'running_deleted_instance_poll_interval', type='integer', default='1800', description="Number of seconds to wait between runs of the cleanup task.") nova.param('running_deleted_instance_timeout', type='integer', default='0', - description="Number of seconds after being deleted when a running instance should be considered eligible for cleanup.") + description="Number of seconds after being deleted when a running " + "instance should be considered eligible for cleanup.") nova.param('reboot_timeout', type='integer', default='0', - description="Automatically hard reboot an instance if it has been stuck in a rebooting state longer than N seconds. Set to 0 to disable.") + description="Automatically hard reboot an instance if it has been " + "stuck in a rebooting state longer than N seconds. Set " + "to 0 to disable.") nova.param('instance_build_timeout', type='integer', default='0', - description="Amount of time in seconds an instance can be in BUILD before going into ERROR status.Set to 0 to disable.") + description="Amount of time in seconds an instance can be in BUILD " + "before going into ERROR status.Set to 0 to disable.") nova.param('rescue_timeout', type='integer', default='0', - description="Automatically unrescue an instance after N seconds. Set to 0 to disable.") + description="Automatically unrescue an instance after N seconds. " + "Set to 0 to disable.") nova.param('resize_confirm_window', type='integer', default='0', - description="Automatically confirm resizes after N seconds. Set to 0 to disable.") + description="Automatically confirm resizes after N seconds. Set to " + "0 to disable.") nova.param('reserved_host_disk_mb', type='integer', default='0', description="Amount of disk in MB to reserve for the host") @@ -456,7 +542,8 @@ nova.param('compute_topic', type='string', default='compute', description="the topic compute nodes listen on") nova.param( - 'console_driver', type='string', default='nova.console.xvp.XVPConsoleProxy', + 'console_driver', type='string', + default='nova.console.xvp.XVPConsoleProxy', description="Driver to use for the console proxy") nova.param('stub_compute', type='boolean', default='false', @@ -475,13 +562,15 @@ nova.param('console_vmrc_error_retries', type='integer', default='10', description="number of retries for retrieving VMRC information") nova.param('console_xvp_conf_template', type='string', - default='$pybasedir/nova/console/xvp.conf.template', description="XVP conf template") + default='$pybasedir/nova/console/xvp.conf.template', + description="XVP conf template") nova.param('console_xvp_conf', type='string', default='/etc/xvp.conf', description="generated XVP conf file") nova.param('console_xvp_pid', type='string', - default='/var/run/xvp.pid', description="XVP master process pid file") + default='/var/run/xvp.pid', + description="XVP master process pid file") nova.param('console_xvp_log', type='string', default='/var/log/xvp.log', description="XVP log file") @@ -496,7 +585,8 @@ nova.param('console_token_ttl', type='integer', default='600', description="How many seconds before deleting tokens") nova.param('consoleauth_manager', type='string', - default='nova.consoleauth.manager.ConsoleAuthManager', description="Manager for console auth") + default='nova.consoleauth.manager.ConsoleAuthManager', + description="Manager for console auth") nova.param('enable_new_services', type='boolean', default='true', description="Services to be added to the available pool on create") @@ -511,7 +601,10 @@ nova.param('db_driver', type='string', default='nova.db', description="driver to use for database access") nova.param('osapi_compute_unique_server_name_scope', type='string', default='', - description="When set, compute API will consider duplicate hostnames invalid within the specified scope, regardless of case. Should be empty, 'project' or 'global'.") + description="When set, compute API will consider duplicate " + "hostnames invalid within the specified scope, " + "regardless of case. Should be empty, 'project' or " + "'global'.") nova.param('glance_host', type='string', default='$my_ip', description="default glance hostname or ip") @@ -520,11 +613,13 @@ nova.param('glance_port', type='integer', default='9292', description="default glance port") nova.param('glance_protocol', type='string', default='http', - description="Default protocol to use when connecting to glance. Set to https for SSL.") + description="Default protocol to use when connecting to glance. " + "Set to https for SSL.") nova.param( 'glance_api_servers', type='list', default='$glance_host:$glance_port', - description="A list of the glance api servers available to nova. Prefix with https:// for ssl-based glance api servers.") + description="A list of the glance api servers available to nova. Prefix " + "with https:// for ssl-based glance api servers.") nova.param('glance_api_insecure', type='boolean', default='false', description="Allow to perform insecure SSL") @@ -533,13 +628,16 @@ nova.param('glance_num_retries', type='integer', default='0', description="Number retries when downloading an image from glance") nova.param('allowed_direct_url_schemes', type='list', default='', - description="A list of url scheme that can be downloaded directly via the direct_url. Currently supported schemes: [file].") + description="A list of url scheme that can be downloaded directly " + "via the direct_url. Currently supported schemes: " + "[file].") nova.param('image_decryption_dir', type='string', default='/tmp', description="parent dir for tempdir used for image decryption") nova.param('s3_host', type='string', default='$my_ip', - description="hostname or ip for openstack to use when accessing the s3 api") + description="hostname or ip for openstack to use when accessing " + "the s3 api") nova.param('s3_port', type='integer', default='3333', description="port used when accessing the s3 api") @@ -554,7 +652,8 @@ nova.param('s3_use_ssl', type='boolean', default='false', description="whether to use ssl when talking to s3") nova.param('s3_affix_tenant', type='boolean', default='false', - description="whether to affix the tenant id to the access key when downloading from s3") + description="whether to affix the tenant id to the access key when " + "downloading from s3") nova.param('ipv6_backend', type='string', default='rfc2462', description="Backend to use for IPv6 generation") @@ -572,11 +671,13 @@ nova.param('auto_assign_floating_ip', type='boolean', default='false', description="Autoassigning floating ip to VM") nova.param( - 'floating_ip_dns_manager', type='string', default='nova.network.noop_dns_driver.NoopDNSDriver', + 'floating_ip_dns_manager', type='string', + default='nova.network.noop_dns_driver.NoopDNSDriver', description="full class name for the DNS Manager for floating IPs") nova.param( - 'instance_dns_manager', type='string', default='nova.network.noop_dns_driver.NoopDNSDriver', + 'instance_dns_manager', type='string', + default='nova.network.noop_dns_driver.NoopDNSDriver', description="full class name for the DNS Manager for instance IPs") nova.param('instance_dns_domain', type='string', default='', @@ -587,7 +688,8 @@ nova.param( description="URL for ldap server which will store dns entries") nova.param('ldap_dns_user', type='string', - default='uidadmin,oupeople,dcexample,dcorg', description="user for ldap DNS") + default='uidadmin,oupeople,dcexample,dcorg', + description="user for ldap DNS") nova.param('ldap_dns_password', type='string', default='password', description="password for ldap DNS") @@ -616,7 +718,8 @@ nova.param('ldap_dns_soa_minimum', type='string', default='7200', description="Minimum interval") nova.param( - 'dhcpbridge_flagfile', type='multi', default='/etc/nova/nova-dhcpbridge.conf', + 'dhcpbridge_flagfile', type='multi', + default='/etc/nova/nova-dhcpbridge.conf', description="location of flagfiles for dhcpbridge") nova.param('networks_path', type='string', default='$state_path/networks', @@ -638,22 +741,27 @@ nova.param('dhcp_lease_time', type='integer', default='120', description="Lifetime of a DHCP lease in seconds") nova.param('dns_server', type='multi', default='', - description="if set, uses specific dns server for dnsmasq. Canbe specified multiple times.") + description="if set, uses specific dns server for dnsmasq. Canbe " + "specified multiple times.") nova.param('use_network_dns_servers', type='boolean', default='false', - description="if set, uses the dns1 and dns2 from the network ref.as dns servers.") + description="if set, uses the dns1 and dns2 from the network ref.as" + " dns servers.") nova.param('dmz_cidr', type='list', default='', description="A list of dmz range that should be accepted") nova.param('force_snat_range', type='multi', default='', - description="Traffic to this range will always be snatted to the fallback ip, even if it would normally be bridged out of the node. Can be specified multiple times.") + description="Traffic to this range will always be snatted to the " + "fallback ip, even if it would normally be bridged out " + "of the node. Can be specified multiple times.") nova.param('dnsmasq_config_file', type='string', default='', description="Override the default dnsmasq settings with this file") nova.param('linuxnet_interface_driver', type='string', - default='nova.network.linux_net.LinuxBridgeInterfaceDriver', description="Driver used to create ethernet devices.") + default='nova.network.linux_net.LinuxBridgeInterfaceDriver', + description="Driver used to create ethernet devices.") nova.param('linuxnet_ovs_integration_bridge', type='string', default='br-int', description="Name of Open vSwitch bridge used with linuxnet") @@ -665,10 +773,13 @@ nova.param('send_arp_for_ha_count', type='integer', default='3', description="send this many gratuitous ARPs for HA setup") nova.param('use_single_default_gateway', type='boolean', default='false', - description="Use single default gateway. Only first nic of vm will get default gateway from dhcp server") + description="Use single default gateway. Only first nic of vm will " + "get default gateway from dhcp server") nova.param('forward_bridge_interface', type='multi', default='all', - description="An interface that bridges can forward to. If this is set to all then all traffic will be forwarded. Can be specified multiple times.") + description="An interface that bridges can forward to. If this is " + "set to all then all traffic will be forwarded. Can be " + "specified multiple times.") nova.param('metadata_host', type='string', default='$my_ip', description="the ip for the metadata api server") @@ -677,10 +788,12 @@ nova.param('metadata_port', type='integer', default='8775', description="the port for the metadata api port") nova.param('iptables_top_regex', type='string', default='', - description="Regular expression to match iptables rule that shouldalways be on the top.") + description="Regular expression to match iptables rule that " + "shouldalways be on the top.") nova.param('iptables_bottom_regex', type='string', default='', - description="Regular expression to match iptables rule that shouldalways be on the bottom.") + description="Regular expression to match iptables rule that " + "shouldalways be on the bottom.") nova.param('flat_network_bridge', type='string', default='', description="Bridge for simple network instances") @@ -731,7 +844,8 @@ nova.param('fixed_ip_disassociate_timeout', type='integer', default='600', description="Seconds after which a deallocated ip is disassociated") nova.param('create_unique_mac_address_attempts', type='integer', - default='5', description="Number of attempts to create unique mac address") + default='5', description="Number of attempts to create unique mac" + " address") nova.param('fake_network', type='boolean', default='false', description="If passed, use fake network devices and addresses") @@ -746,13 +860,17 @@ nova.param('force_dhcp_release', type='boolean', default='false', description="If True, send a dhcp release on instance termination") nova.param('share_dhcp_address', type='boolean', default='false', - description="If True in multi_host mode, all compute hosts share the same dhcp address.") + description="If True in multi_host mode, all compute hosts share " + "the same dhcp address.") nova.param('update_dns_entries', type='boolean', default='false', - description="If True, when a DNS entry must be updated, it sends a fanout cast to all network hosts to update their DNS entries in multi host mode") + description="If True, when a DNS entry must be updated, it sends a " + "fanout cast to all network hosts to update their DNS " + "entries in multi host mode") nova.param('dns_update_periodic_interval', type='integer', default='-1', - description="Number of seconds to wait between runs of updates to DNS entries.") + description="Number of seconds to wait between runs of updates to " + "DNS entries.") nova.param('dhcp_domain', type='string', default='novalocal', description="domain to use for building the hostnames") @@ -773,38 +891,46 @@ nova.param('quantum_admin_password', type='string', default='', description="password for connecting to quantum in admin context") nova.param('quantum_admin_tenant_name', type='string', default='', - description="tenant name for connecting to quantum in admin context") + description="tenant name for connecting to quantum in admin " + "context") nova.param('quantum_region_name', type='string', default='', - description="region name for connecting to quantum in admin context") + description="region name for connecting to quantum in admin " + "context") nova.param( - 'quantum_admin_auth_url', type='string', default='http://localhost:5000/v2.0', + 'quantum_admin_auth_url', type='string', + default='http://localhost:5000/v2.0', description="auth url for connecting to quantum in admin context") nova.param('quantum_api_insecure', type='boolean', default='false', description="if set, ignore any SSL validation issues") nova.param('quantum_auth_strategy', type='string', default='keystone', - description="auth strategy for connecting to quantum in admin context") + description="auth strategy for connecting to quantum in admin " + "context") nova.param('quantum_ovs_bridge', type='string', default='br-int', description="Name of Integration Bridge used by Open vSwitch") nova.param('quantum_extension_sync_interval', type='integer', default='600', - description="Number of seconds before querying quantum for extensions") + description="Number of seconds before querying quantum for " + "extensions") nova.param('network_topic', type='string', default='network', description="the topic network nodes listen on") nova.param('multi_host', type='boolean', default='false', - description="Default value for multi_host in networks. Also, if set, some rpc network calls will be sent directly to host.") + description="Default value for multi_host in networks. Also, if " + "set, some rpc network calls will be sent directly to " + "host.") nova.param('security_group_api', type='string', default='nova', description="The full class name of the security API class") nova.param( - 'security_group_handler', type='string', default='nova.network.sg.NullSecurityGroupHandler', + 'security_group_handler', type='string', + default='nova.network.sg.NullSecurityGroupHandler', description="The full class name of the security group handler class") nova.param('queues', type='multi', default='', description="Queues to delete") @@ -851,11 +977,14 @@ nova.param('db_backend', type='string', default='sqlalchemy', description="The backend to use for db") nova.param('dbapi_use_tpool', type='boolean', default='false', - description="Enable the experimental use of thread pooling for all DB API calls") + description="Enable the experimental use of thread pooling for all " + "DB API calls") nova.param( - 'sql_connection', type='string', default='sqlite:////nova/openstack/common/db/$sqlite_db', - description="The SQLAlchemy connection string used to connect to the database") + 'sql_connection', type='string', + default='sqlite:////nova/openstack/common/db/$sqlite_db', + description="The SQLAlchemy connection string used to connect to the " + "database") nova.param('sqlite_db', type='string', default='nova.sqlite', description="the filename to use with sqlite") @@ -867,10 +996,12 @@ nova.param('sqlite_synchronous', type='boolean', default='true', description="If passed, use synchronous mode for sqlite") nova.param('sql_min_pool_size', type='integer', default='1', - description="Minimum number of SQL connections to keep open in a pool") + description="Minimum number of SQL connections to keep open in a " + "pool") nova.param('sql_max_pool_size', type='integer', default='5', - description="Maximum number of SQL connections to keep open in a pool") + description="Maximum number of SQL connections to keep open in a " + "pool") nova.param('sql_max_retries', type='integer', default='10', description="maximum db connection retries during startup.") @@ -879,10 +1010,12 @@ nova.param('sql_retry_interval', type='integer', default='10', description="interval between retries of opening a sql connection") nova.param('sql_max_overflow', type='integer', default='', - description="If set, use this value for max_overflow with sqlalchemy") + description="If set, use this value for max_overflow with " + "sqlalchemy") nova.param('sql_connection_debug', type='integer', default='0', - description="Verbosity of SQL debugging information. 0=None, 100=Everything") + description="Verbosity of SQL debugging information. 0=None, " + "100=Everything") nova.param('sql_connection_trace', type='boolean', default='false', description="Add python stack traces to SQL as comment strings") @@ -891,10 +1024,12 @@ nova.param('backdoor_port', type='integer', default='', description="port for eventlet backdoor to listen") nova.param('disable_process_locking', type='boolean', - default='false', description="Whether to disable inter-process locks") + default='false', description="Whether to disable inter-process " + "locks") nova.param('lock_path', type='string', default='', - description="Directory to use for lock files. Default to a temp directory") + description="Directory to use for lock files. Default to a temp " + "directory") nova.param('debug', type='boolean', default='false', description="Print debugging output") @@ -909,21 +1044,30 @@ nova.param('logfile_mode', type='string', default='0644', description="Default file mode used when creating log files") nova.param('logging_context_format_string', type='string', - default='%(asctime)s.%(msecs)03d %(levelname)s %(name)s [%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s', description="format string to use for log messages with context") + default='%(asctime)s.%(msecs)03d %(levelname)s %(name)s ' + '[%(request_id)s %(user)s %(tenant)s] ' + '%(instance)s%(message)s', + description="format string to use for log messages with context") nova.param('logging_default_format_string', type='string', - default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s', description="format string to use for log messages without context") + default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s' + ' [-] %(instance)s%(message)s', + description="format string to use for log messages without context") nova.param( - 'logging_debug_format_suffix', type='string', default='%(funcName)s %(pathname)s:%(lineno)d', + 'logging_debug_format_suffix', type='string', + default='%(funcName)s %(pathname)s:%(lineno)d', description="data to append to log format when level is DEBUG") nova.param( - 'logging_exception_prefix', type='string', default='%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s', + 'logging_exception_prefix', type='string', + default='%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s', description="prefix each line of exception output with this format") nova.param('default_log_levels', type='list', - default='amqplibWARN,sqlalchemyWARN,botoWARN,sudsINFO,keystoneINFO,eventlet.wsgi.serverWARN', description="list of logger=LEVEL pairs") + default='amqplibWARN,sqlalchemyWARN,botoWARN,sudsINFO' + ',keystoneINFO,eventlet.wsgi.serverWARN', + description="list of logger=LEVEL pairs") nova.param('publish_errors', type='boolean', default='false', description="publish error events") @@ -932,22 +1076,35 @@ nova.param('fatal_deprecations', type='boolean', default='false', description="make deprecations fatal") nova.param('instance_format', type='string', - default='"[instance: %(uuid)s] "', description="If an instance is passed with the log message, format it like this") + default='"[instance: %(uuid)s] "', + description="If an instance is passed with the log message, format " + "it like this") nova.param('instance_uuid_format', type='string', - default='"[instance: %(uuid)s] "', description="If an instance UUID is passed with the log message, format it like this") + default='"[instance: %(uuid)s] "', + description="If an instance UUID is passed with the log message, " + "format it like this") nova.param('log_config', type='string', default='', - description="If this option is specified, the logging configuration file specified is used and overrides any other logging options specified. Please see the Python logging module documentation for details on logging configuration files.") + description="If this option is specified, the logging configuration" + " file specified is used and overrides any other " + "logging options specified. Please see the Python " + "logging module documentation for details on logging " + "configuration files.") nova.param('log_format', type='string', - default='%(asctime)s %(levelname)8s [%(name)s] %(message)s', description="A logging.Formatter log message format string which may use any of the available logging.LogRecord attributes. Default: %(default)s") + default='%(asctime)s %(levelname)8s [%(name)s] %(message)s', + description="A logging.Formatter log message format string which " + "may use any of the available logging.LogRecord " + "attributes. Default: %(default)s") nova.param('log_date_format', type='string', default='%Y-%m-%d %H:%M:%S', - description="Format string for %%(asctime)s in log records. Default: %(default)s") + description="Format string for %%(asctime)s in log records. " + "Default: %(default)s") nova.param('log_file', type='string', default='', - description="(Optional) Name of log file to output to. If not set, logging will go to stdout.") + description="(Optional) Name of log file to output to. If not set," + " logging will go to stdout.") nova.param('log_dir', type='string', default='', description="(Optional) The directory to keep log files in") @@ -971,7 +1128,8 @@ nova.param('notification_topics', type='list', default='notifications', description="AMQP topic used for openstack notifications") nova.param( - 'rpc_backend', type='string', default='nova.openstack.common.rpc.impl_kombu', + 'rpc_backend', type='string', + default='nova.openstack.common.rpc.impl_kombu', description="The messaging module to use, defaults to kombu.") nova.param('rpc_thread_pool_size', type='integer', @@ -981,14 +1139,18 @@ nova.param('rpc_conn_pool_size', type='integer', default='30', description="Size of RPC connection pool") nova.param('rpc_response_timeout', type='integer', default='60', - description="Seconds to wait for a response from call or multicall") + description="Seconds to wait for a response from call or " + "multicall") nova.param('rpc_cast_timeout', type='integer', default='30', description="Seconds to wait before a cast expires") nova.param( - 'allowed_rpc_exception_modules', type='list', default='nova.openstack.common.exception,nova.exception,cinder.exception,exceptions', - description="Modules of exceptions that are permitted to be recreatedupon receiving exception data from an rpc call.") + 'allowed_rpc_exception_modules', type='list', + default='nova.openstack.common.exception,nova.exception,cinder.exception,' + 'exceptions', + description="Modules of exceptions that are permitted to be recreatedupon" + " receiving exception data from an rpc call.") nova.param('fake_rabbit', type='boolean', default='false', description="If passed, use a fake RabbitMQ provider") @@ -997,7 +1159,8 @@ nova.param('control_exchange', type='string', default='openstack', description="AMQP exchange to connect to if using RabbitMQ or Qpid") nova.param('amqp_rpc_single_reply_queue', type='boolean', default='false', - description="Enable a fast single reply queue if using AMQP based RPC like RabbitMQ or Qpid.") + description="Enable a fast single reply queue if using AMQP based" + " RPC like RabbitMQ or Qpid.") nova.param('kombu_ssl_version', type='string', default='', description="SSL version to use") @@ -1012,7 +1175,8 @@ nova.param('kombu_ssl_ca_certs', type='string', default='', description="SSL certification authority file") nova.param('rabbit_host', type='string', default='localhost', - description="The RabbitMQ broker address where a single node is used") + description="The RabbitMQ broker address where a single node is" + " used") nova.param('rabbit_port', type='integer', default='5672', description="The RabbitMQ broker port where a single node is used") @@ -1036,7 +1200,8 @@ nova.param('rabbit_retry_interval', type='integer', default='1', description="how frequently to retry connecting with RabbitMQ") nova.param('rabbit_retry_backoff', type='integer', default='2', - description="how long to backoff for between retries when connecting to RabbitMQ") + description="how long to backoff for between retries when " + "connecting to RabbitMQ") nova.param('rabbit_max_retries', type='integer', default='0', description="maximum retries with trying to connect to RabbitMQ") @@ -1063,7 +1228,8 @@ nova.param('qpid_password', type='string', default='', description="Password for qpid connection") nova.param('qpid_sasl_mechanisms', type='string', default='', - description="Space separated list of SASL mechanisms to use for auth") + description="Space separated list of SASL mechanisms to use for " + "auth") nova.param('qpid_heartbeat', type='integer', default='60', description="Seconds between connection keepalive heartbeats") @@ -1078,7 +1244,8 @@ nova.param('rpc_zmq_bind_address', type='string', default='*', description="ZeroMQ bind address. Should be a wildcard") nova.param('rpc_zmq_matchmaker', type='string', - default='nova.openstack.common.rpc.matchmaker.MatchMakerLocalhost', description="MatchMaker driver") + default='nova.openstack.common.rpc.matchmaker.MatchMakerLocalhost', + description="MatchMaker driver") nova.param('rpc_zmq_port', type='integer', default='9501', description="ZeroMQ receiver listening port") @@ -1087,26 +1254,37 @@ nova.param('rpc_zmq_contexts', type='integer', default='1', description="Number of ZeroMQ contexts, defaults to 1") nova.param('rpc_zmq_topic_backlog', type='integer', default='', - description="Maximum number of ingress messages to locally buffer per topic. Default is unlimited.") + description="Maximum number of ingress messages to locally buffer " + "per topic. Default is unlimited.") nova.param('rpc_zmq_ipc_dir', type='string', default='/var/run/openstack', description="Directory for holding IPC sockets") nova.param('rpc_zmq_host', type='string', default='sorcha', - description="Name of this node. Must be a valid hostname, FQDN, or IP address. Must match 'host' option, if running Nova.") + description="Name of this node. Must be a valid hostname, FQDN, or " + "IP address. Must match 'host' option, if running " + "Nova.") nova.param('matchmaker_ringfile', type='string', - default='/etc/nova/matchmaker_ring.json', description="Matchmaker ring file") + default='/etc/nova/matchmaker_ring.json', + description="Matchmaker ring file") nova.param( - 'scheduler_host_manager', type='string', default='nova.scheduler.host_manager.HostManager', + 'scheduler_host_manager', type='string', + default='nova.scheduler.host_manager.HostManager', description="The scheduler host manager class to use") nova.param('scheduler_max_attempts', type='integer', default='3', description="Maximum number of attempts to schedule an instance") nova.param('scheduler_host_subset_size', type='integer', default='1', - description="New instances will be scheduled on a host chosen randomly from a subset of the N best hosts. This property defines the subset size that a host is chosen from. A value of 1 chooses the first host returned by the weighing functions. This value must be at least 1. Any value less than 1 will be ignored, and 1 will be used instead") + description="New instances will be scheduled on a host chosen " + "randomly from a subset of the N best hosts. This " + "property defines the subset size that a host is chosen" + " from. A value of 1 chooses the first host returned by" + " the weighing functions. This value must be at least" + " 1. Any value less than 1 will be ignored, and 1 will" + " be used instead") nova.param('cpu_allocation_ratio', type='floating point', default='16.0', description="Virtual CPU to Physical CPU allocation ratio") @@ -1115,7 +1293,8 @@ nova.param('disk_allocation_ratio', type='floating point', default='1.0', description="virtual disk to physical disk allocation ratio") nova.param('max_io_ops_per_host', type='integer', default='8', - description="Ignore hosts that have too many builds/resizes/snaps/migrations") + description="Ignore hosts that have too many builds/resizes/" + "snaps/migrations") nova.param('isolated_images', type='list', default='', description="Images to run on isolated host") @@ -1130,27 +1309,38 @@ nova.param('ram_allocation_ratio', type='floating point', default='1.5', description="virtual ram to physical ram allocation ratio") nova.param( - 'scheduler_available_filters', type='multi', default='nova.scheduler.filters.all_filters', - description="Filter classes available to the scheduler which may be specified more than once. An entry of 'nova.scheduler.filters.standard_filters' maps to all filters included with nova.") + 'scheduler_available_filters', type='multi', + default='nova.scheduler.filters.all_filters', + description="Filter classes available to the scheduler which may be " + "specified more than once. An entry of 'nova.scheduler" + ".filters.standard_filters' maps to all filters included " + "with nova.") nova.param( - 'scheduler_default_filters', type='list', default='RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter', - description="Which filter class names to use for filtering hosts when not specified in the request.") + 'scheduler_default_filters', type='list', + default='RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,' + 'ComputeCapabilitiesFilter,ImagePropertiesFilter', + description="Which filter class names to use for filtering hosts when not" + " specified in the request.") nova.param( - 'scheduler_weight_classes', type='list', default='nova.scheduler.weights.all_weighers', + 'scheduler_weight_classes', type='list', + default='nova.scheduler.weights.all_weighers', description="Which weight class names to use for weighing hosts") nova.param( - 'scheduler_driver', type='string', default='nova.scheduler.filter_scheduler.FilterScheduler', + 'scheduler_driver', type='string', + default='nova.scheduler.filter_scheduler.FilterScheduler', description="Default driver to use for the scheduler") nova.param( - 'compute_scheduler_driver', type='string', default='nova.scheduler.filter_scheduler.FilterScheduler', + 'compute_scheduler_driver', type='string', + default='nova.scheduler.filter_scheduler.FilterScheduler', description="Driver to use for scheduling compute calls") nova.param( - 'default_scheduler_driver', type='string', default='nova.scheduler.chance.ChanceScheduler', + 'default_scheduler_driver', type='string', + default='nova.scheduler.chance.ChanceScheduler', description="Default driver to use for scheduling calls") nova.param('scheduler_topic', type='string', default='scheduler', @@ -1160,17 +1350,21 @@ nova.param('scheduler_json_config_location', type='string', default='', description="Absolute path to scheduler configuration JSON file.") nova.param('least_cost_functions', type='list', default='', - description="Which cost functions the LeastCostScheduler should use") + description="Which cost functions the LeastCostScheduler should" + " use") nova.param('noop_cost_fn_weight', type='floating point', default='1.0', description="How much weight to give the noop cost function") nova.param( - 'compute_fill_first_cost_fn_weight', type='floating point', default='', - description="How much weight to give the fill-first cost function. A negative value will reverse behavior: e.g. spread-first") + 'compute_fill_first_cost_fn_weight', type='floating point', + default='', + description="How much weight to give the fill-first cost function. A " + "negative value will reverse behavior: e.g. spread-first") nova.param('ram_weight_multiplier', type='floating point', default='1.0', - description="Multiplier used for weighing ram. Negative numbers mean to stack vs spread.") + description="Multiplier used for weighing ram. Negative numbers " + "mean to stack vs spread.") nova.param('servicegroup_driver', type='string', default='db', description="The driver for servicegroup service") @@ -1179,38 +1373,51 @@ nova.param('config_drive_format', type='string', default='iso9660', description="Config drive format. One of iso9660") nova.param('config_drive_tempdir', type='string', default='', - description="Where to put temporary files associated with config drive creation") + description="Where to put temporary files associated with config " + "drive creation") nova.param('force_config_drive', type='string', default='', - description="Set to force injection to take place on a config drive") + description="Set to force injection to take place on a config " + "drive") nova.param('mkisofs_cmd', type='string', default='genisoimage', - description="Name and optionally path of the tool used for ISO image creation") + description="Name and optionally path of the tool used for ISO " + "image creation") nova.param('injected_network_template', type='string', - default='$pybasedir/nova/virt/interfaces.template', description="Template file for injected network") + default='$pybasedir/nova/virt/interfaces.template', + description="Template file for injected network") -nova.param( - 'virt_mkfs', type='multi', default='defaultmkfs.ext3 -L %(fs_label)s -F %(target)s', - description="mkfs commands for ephemeral device. The format is =") +nova.param('virt_mkfs', type='multi', + default='defaultmkfs.ext3 -L %(fs_label)s -F %(target)s', + description="mkfs commands for ephemeral device. The format is " + "=") nova.param('virt_mkfs', type='string', - default='linuxmkfs.ext3 -L %(fs_label)s -F %(target)s', description="") + default='linuxmkfs.ext3 -L %(fs_label)s -F %(target)s', + description="") nova.param('virt_mkfs', type='string', - default='windowsmkfs.ntfs --force --fast --label %(fs_label)s %(target)s', description="") + default='windowsmkfs.ntfs --force --fast --label %(fs_label)s ' + '%(target)s', description="") nova.param('timeout_nbd', type='integer', default='10', description="time to wait for a NBD device coming up") nova.param('compute_driver', type='string', default='', - description="Driver to use for controlling virtualization. Options include: libvirt.LibvirtDriver, xenapi.XenAPIDriver, fake.FakeDriver, baremetal.BareMetalDriver, vmwareapi.VMWareESXDriver") + description="Driver to use for controlling virtualization. " + "Options include: libvirt.LibvirtDriver, xenapi." + "XenAPIDriver, fake.FakeDriver, " + "baremetal.BareMetalDriver, vmwareapi.VMWareESXDriver") nova.param('default_ephemeral_format', type='string', default='', - description="The default format an ephemeral_volume will be formatted with on creation.") + description="The default format an ephemeral_volume will be " + "formatted with on creation.") nova.param('preallocate_images', type='string', default='none', - description="VM image preallocation mode: 'none' => no storage provisioning is done up front, 'space' => storage is fully allocated at instance start") + description="VM image preallocation mode: 'none' => no storage " + "provisioning is done up front, 'space' => storage is " + "fully allocated at instance start") nova.param('use_cow_images', type='boolean', default='true', description="Whether to use cow images") @@ -1222,25 +1429,31 @@ nova.param('allow_same_net_traffic', type='boolean', default='true', description="Whether to allow network traffic from same network") nova.param('vswitch_name', type='string', default='', - description="External virtual switch Name, if not provided, the first external virtual switch is used") + description="External virtual switch Name, if not provided, the " + "first external virtual switch is used") nova.param('limit_cpu_features', type='boolean', default='false', - description="Required for live migration among hosts with different CPU features") + description="Required for live migration among hosts with different" + " CPU features") nova.param('config_drive_inject_password', type='boolean', default='false', description="Sets the admin password in the config drive image") nova.param('qemu_img_cmd', type='string', default='qemu-img.exe', - description="qemu-img is used to convert between different image types") + description="qemu-img is used to convert between different image " + "types") nova.param('config_drive_cdrom', type='boolean', default='false', - description="Attaches the Config Drive image as a cdrom drive instead of a disk drive") + description="Attaches the Config Drive image as a cdrom drive " + "instead of a disk drive") nova.param('hyperv_attaching_volume_retry_count', type='integer', - default='10', description="The number of times we retry on attaching volume ") + default='10', description="The number of times we retry on " + "attaching volume ") nova.param('hyperv_wait_between_attach_retry', type='integer', default='5', - description="The seconds to wait between an volume attachment attempt") + description="The seconds to wait between an volume attachment " + "attempt") nova.param('force_volumeutils_v1', type='boolean', default='false', description="Force volumeutils v1") @@ -1264,13 +1477,15 @@ nova.param('libvirt_uri', type='string', default='', description="Override the default libvirt URI") nova.param('libvirt_inject_password', type='boolean', default='false', - description="Inject the admin password at boot time, without an agent.") + description="Inject the admin password at boot time, without an " + "agent.") nova.param('libvirt_inject_key', type='boolean', default='true', description="Inject the ssh public key at boot time") nova.param('libvirt_inject_partition', type='integer', default='1', - description="The partition to inject to : -2 => disable, -1 => inspect") + description="The partition to inject to : -2 => disable, -1 => " + "inspect") nova.param('use_usb_tablet', type='boolean', default='true', description="Sync virtual and real mouse cursors in Windows VMs") @@ -1279,58 +1494,90 @@ nova.param('live_migration_uri', type='string', default='qemu+tcp://%s/system', description="Migration target URI") nova.param( - 'live_migration_flag', type='string', default='VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER', + 'live_migration_flag', type='string', + default='VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER', description="Migration flags to be set for live migration") nova.param( - 'block_migration_flag', type='string', default='VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_NON_SHARED_INC', + 'block_migration_flag', type='string', + default='VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, ' + 'VIR_MIGRATE_NON_SHARED_INC', description="Migration flags to be set for block migration") nova.param('live_migration_bandwidth', type='integer', default='0', - description="Maximum bandwidth to be used during migration, in Mbps") + description="Maximum bandwidth to be used during migration, in " + "Mbps") nova.param('snapshot_image_format', type='string', default='', description="Snapshot image format") nova.param( - 'libvirt_vif_driver', type='string', default='nova.virt.libvirt.vif.LibvirtGenericVIFDriver', + 'libvirt_vif_driver', type='string', + default='nova.virt.libvirt.vif.LibvirtGenericVIFDriver', description="The libvirt VIF driver to configure the VIFs.") nova.param( - 'libvirt_volume_drivers', type='list', default='iscsinova.virt.libvirt.volume.LibvirtISCSIVolumeDriver,localnova.virt.libvirt.volume.LibvirtVolumeDriver,fakenova.virt.libvirt.volume.LibvirtFakeVolumeDriver,rbdnova.virt.libvirt.volume.LibvirtNetVolumeDriver,sheepdognova.virt.libvirt.volume.LibvirtNetVolumeDriver,nfsnova.virt.libvirt.volume.LibvirtNFSVolumeDriver,aoenova.virt.libvirt.volume.LibvirtAOEVolumeDriver,glusterfsnova.virt.libvirt.volume.LibvirtGlusterfsVolumeDriver,fibre_channelnova.virt.libvirt.volume.LibvirtFibreChannelVolumeDriver,scalitynova.virt.libvirt.volume.LibvirtScalityVolumeDriver', + 'libvirt_volume_drivers', type='list', + default='iscsinova.virt.libvirt.volume.LibvirtISCSIVolumeDriver,' + 'localnova.virt.libvirt.volume.LibvirtVolumeDriver,fakenova.' + 'virt.libvirt.volume.LibvirtFakeVolumeDriver,rbdnova.virt.libvirt.' + 'volume.LibvirtNetVolumeDriver,sheepdognova.virt.libvirt.volume.' + 'LibvirtNetVolumeDriver,nfsnova.virt.libvirt.volume.' + 'LibvirtNFSVolumeDriver,aoenova.virt.libvirt.volume.' + 'LibvirtAOEVolumeDriver,glusterfsnova.virt.libvirt.volume.' + 'LibvirtGlusterfsVolumeDriver,fibre_channelnova.virt.libvirt.' + 'volume.LibvirtFibreChannelVolumeDriver,scalitynova.virt.libvirt.' + 'volume.LibvirtScalityVolumeDriver', description="Libvirt handlers for remote volumes.") nova.param('libvirt_disk_prefix', type='string', default='', - description="Override the default disk prefix for the devices attached to a server, which is dependent on libvirt_type.") + description="Override the default disk prefix for the devices " + "attached to a server, which is dependent on " + "libvirt_type.") nova.param('libvirt_wait_soft_reboot_seconds', type='integer', default='120', - description="Number of seconds to wait for instance to shut down after soft reboot request is made. We fall back to hard reboot if instance does not shutdown within this window.") + description="Number of seconds to wait for instance to shut down " + "after soft reboot request is made. We fall back to " + "hard reboot if instance does not shutdown within this " + "window.") nova.param('libvirt_nonblocking', type='boolean', default='true', - description="Use a separated OS thread pool to realize non-blocking libvirt calls") + description="Use a separated OS thread pool to realize non-blocking" + " libvirt calls") nova.param('libvirt_cpu_mode', type='string', default='', - description="Set to 'host-model' to clone the host CPU feature flags; to 'host-passthrough' to use the host CPU model exactly; to 'custom' to use a named CPU model; to 'none' to not set any CPU model. If libvirt_type='kvm|qemu', it will default to 'host-model', otherwise it will default to 'none'") + description="Set to 'host-model' to clone the host CPU feature" + " flags; to 'host-passthrough' to use the host CPU" + " model exactly; to 'custom' to use a named CPU model;" + " to 'none' to not set any CPU model. If " + "libvirt_type='kvm|qemu', it will default to " + "'host-model', otherwise it will default to 'none'") nova.param('libvirt_cpu_model', type='string', default='', description="Set to a named libvirt CPU model") nova.param( - 'libvirt_snapshots_directory', type='string', default='$instances_path/snapshots', - description="Location where libvirt driver will store snapshots before uploading them to image service") + 'libvirt_snapshots_directory', type='string', + default='$instances_path/snapshots', + description="Location where libvirt driver will store snapshots before" + " uploading them to image service") nova.param( 'xen_hvmloader_path', type='string', default='/usr/lib/xen/boot/hvmloader', description="Location where the Xen hvmloader is kept") nova.param('disk_cachemodes', type='list', default='', - description="Specific cachemodes to use for different disk types e.g: ['file=directsync','block=none']") + description="Specific cachemodes to use for different disk types" + " e.g: ['file=directsync','block=none']") nova.param('libvirt_images_type', type='string', default='default', - description="VM Images format. Acceptable values are: raw, qcow2, lvm, default. If default is specified, then use_cow_images flag is used instead of this one.") + description="VM Images format. Acceptable values are: raw, qcow2," + " lvm, default. If default is specified, then " + "use_cow_images flag is used instead of this one.") nova.param('libvirt_images_volume_group', type='string', default='', - description="LVM Volume Group that is used for VM images, when you specify libvirt_images_type=lvm.") + description="LVM Volume Group that is used for VM images, when you " + "specify libvirt_images_type=lvm.") nova.param('libvirt_sparse_logical_volumes', type='boolean', default='false', description="Create sparse logical volumes") @@ -1339,34 +1586,47 @@ nova.param('libvirt_lvm_snapshot_size', type='integer', default='1000', description="The amount of storage") nova.param('base_dir_name', type='string', default='_base', - description="Where cached images are stored under $instances_path.This is NOT the full path - just a folder name.For per-compute-host cached images, set to _base_$my_ip") + description="Where cached images are stored under $instances_path." + "This is NOT the full path - just a folder name.For " + "per-compute-host cached images, set to _base_$my_ip") nova.param( - 'image_info_filename_pattern', type='string', default='$instances_path/$base_dir_name/%(image)s.info', - description="Allows image information files to be stored in non-standard locations") + 'image_info_filename_pattern', type='string', + default='$instances_path/$base_dir_name/%(image)s.info', + description="Allows image information files to be stored in non-standard " + "locations") nova.param('remove_unused_base_images', type='boolean', default='true', description="Should unused base images be removed?") nova.param('remove_unused_kernels', type='boolean', default='false', - description="Should unused kernel images be removed? This is only safe to enable if all compute nodes have been updated to support this option. This will enabled by default in future.") + description="Should unused kernel images be removed? This is only " + "safe to enable if all compute nodes have been updated " + "to support this option. This will enabled by default " + "in future.") nova.param( - 'remove_unused_resized_minimum_age_seconds', type='integer', default='3600', - description="Unused resized base images younger than this will not be removed") + 'remove_unused_resized_minimum_age_seconds', type='integer', + default='3600', + description="Unused resized base images younger than this will not be " + "removed") nova.param( - 'remove_unused_original_minimum_age_seconds', type='integer', default='86400', - description="Unused unresized base images younger than this will not be removed") + 'remove_unused_original_minimum_age_seconds', type='integer', + default='86400', + description="Unused unresized base images younger than this will not be " + "removed") nova.param('checksum_base_images', type='boolean', default='false', description="Write a checksum for files in _base to disk") nova.param('checksum_interval_seconds', type='integer', - default='3600', description="How frequently to checksum base images") + default='3600', + description="How frequently to checksum base images") nova.param('libvirt_snapshot_compression', type='boolean', default='false', - description="Compress snapshot images when possible. This currently applies exclusively to qcow2 images") + description="Compress snapshot images when possible. This currently" + " applies exclusively to qcow2 images") nova.param('libvirt_ovs_bridge', type='string', default='br-int', description="Name of Integration Bridge used by Open vSwitch") @@ -1381,20 +1641,25 @@ nova.param('rbd_user', type='string', default='', description="the RADOS client name for accessing rbd volumes") nova.param('rbd_secret_uuid', type='string', default='', - description="the libvirt uuid of the secret for the rbd_uservolumes") + description="the libvirt uuid of the secret for the " + "rbd_uservolumes") nova.param('nfs_mount_point_base', type='string', default='$state_path/mnt', - description="Dir where the nfs volume is mounted on the compute node") + description="Dir where the nfs volume is mounted on the compute " + "node") nova.param('nfs_mount_options', type='string', default='', - description="Mount options passed to the nfs client. See section of the nfs man page for details") + description="Mount options passed to the nfs client. See section " + "of the nfs man page for details") nova.param('num_aoe_discover_tries', type='integer', default='3', - description="number of times to rediscover AoE target to find volume") + description="number of times to rediscover AoE target to find " + "volume") nova.param( 'glusterfs_mount_point_base', type='string', default='$state_path/mnt', - description="Dir where the glusterfs volume is mounted on the compute node") + description="Dir where the glusterfs volume is mounted on the compute" + " node") nova.param('libvirt_iscsi_use_multipath', type='boolean', default='false', description="use multipath connection of the iSCSI volume") @@ -1419,29 +1684,44 @@ nova.param('powervm_mgr_passwd', type='string', default='', description="PowerVM manager user password") nova.param('powervm_img_remote_path', type='string', default='/home/padmin', - description="PowerVM image remote path where images will be moved. Make sure this path can fit your biggest image in glance") + description="PowerVM image remote path where images will be moved." + " Make sure this path can fit your biggest image in" + " glance") nova.param('powervm_img_local_path', type='string', default='/tmp', - description="Local directory to download glance images to. Make sure this path can fit your biggest image in glance") + description="Local directory to download glance images to. Make " + "sure this path can fit your biggest image in glance") nova.param('vmwareapi_host_ip', type='string', default='', - description="URL for connection to VMware ESX/VC host. Required if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="URL for connection to VMware ESX/VC host. Required if" + " compute_driver is vmwareapi.VMwareESXDriver or " + "vmwareapi.VMwareVCDriver.") nova.param('vmwareapi_host_username', type='string', default='', - description="Username for connection to VMware ESX/VC host. Used only if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="Username for connection to VMware ESX/VC host. Used " + "only if compute_driver is vmwareapi.VMwareESXDriver or" + " vmwareapi.VMwareVCDriver.") nova.param('vmwareapi_host_password', type='string', default='', - description="Password for connection to VMware ESX/VC host. Used only if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="Password for connection to VMware ESX/VC host. Used" + " only if compute_driver is vmwareapi.VMwareESXDriver" + " or vmwareapi.VMwareVCDriver.") nova.param('vmwareapi_cluster_name', type='string', default='', - description="Name of a VMware Cluster ComputeResource. Used only if compute_driver is vmwareapi.VMwareVCDriver.") + description="Name of a VMware Cluster ComputeResource. Used only if" + " compute_driver is vmwareapi.VMwareVCDriver.") nova.param( 'vmwareapi_task_poll_interval', type='floating point', default='5.0', - description="The interval used for polling of remote tasks. Used only if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="The interval used for polling of remote tasks. Used only if" + " compute_driver is vmwareapi.VMwareESXDriver or vmwareapi" + ".VMwareVCDriver.") nova.param('vmwareapi_api_retry_count', type='integer', default='10', - description="The number of times we retry on failures, e.g., socket error, etc. Used only if compute_driver is vmwareapi.VMwareESXDriver or vmwareapi.VMwareVCDriver.") + description="The number of times we retry on failures, e.g., " + "socket error, etc. Used only if compute_driver is " + "vmwareapi.VMwareESXDriver or " + "vmwareapi.VMwareVCDriver.") nova.param('vnc_port', type='integer', default='5900', description="VNC starting port") @@ -1459,45 +1739,63 @@ nova.param('vmwareapi_vlan_interface', type='string', default='vmnic0', description="Physical ethernet adapter name for vlan networking") nova.param('vmwareapi_wsdl_loc', type='string', default='', - description="Optional VIM Service WSDL Location e.g http:///vimService.wsdl") + description="Optional VIM Service WSDL Location e.g " + "http:///vimService.wsdl") nova.param('agent_timeout', type='integer', default='30', description="number of seconds to wait for agent reply") nova.param('agent_version_timeout', type='integer', default='300', - description="number of seconds to wait for agent to be fully operational") + description="number of seconds to wait for agent to be fully" + " operational") nova.param('agent_resetnetwork_timeout', type='integer', default='60', - description="number of seconds to wait for agent reply to resetnetwork request") + description="number of seconds to wait for agent reply to" + " resetnetwork request") nova.param( - 'xenapi_agent_path', type='string', default='usr/sbin/xe-update-networking', - description="Specifies the path in which the xenapi guest agent should be located. If the agent is present, network configuration is not injected into the image. Used if compute_driver=xenapi.XenAPIDriver and flat_injected=True") + 'xenapi_agent_path', type='string', + default='usr/sbin/xe-update-networking', + description="Specifies the path in which the xenapi guest agent should be" + " located. If the agent is present, network configuration is " + "not injected into the image. Used if " + "compute_driver=xenapi.XenAPIDriver and flat_injected=True") nova.param('xenapi_disable_agent', type='boolean', default='false', - description="Disable XenAPI agent. Reduces the amount of time it takes nova to detect that a VM has started, when that VM does not have the agent installed") + description="Disable XenAPI agent. Reduces the amount of time it " + "takes nova to detect that a VM has started, when that " + "VM does not have the agent installed") nova.param('xenapi_connection_url', type='string', default='', - description="URL for connection to XenServer/Xen Cloud Platform. Required if compute_driver=xenapi.XenAPIDriver") + description="URL for connection to XenServer/Xen Cloud Platform. " + "Required if compute_driver=xenapi.XenAPIDriver") nova.param('xenapi_connection_username', type='string', default='root', - description="Username for connection to XenServer/Xen Cloud Platform. Used only if compute_driver=xenapi.XenAPIDriver") + description="Username for connection to XenServer/Xen Cloud " + "Platform. Used only if " + "compute_driver=xenapi.XenAPIDriver") nova.param('xenapi_connection_password', type='string', default='', - description="Password for connection to XenServer/Xen Cloud Platform. Used only if compute_driver=xenapi.XenAPIDriver") + description="Password for connection to XenServer/Xen Cloud " + "Platform. Used only if compute_driver=xenapi" + ".XenAPIDriver") nova.param('xenapi_connection_concurrent', type='integer', default='5', - description="Maximum number of concurrent XenAPI connections. Used only if compute_driver=xenapi.XenAPIDriver") + description="Maximum number of concurrent XenAPI connections. " + "Used only if compute_driver=xenapi.XenAPIDriver") nova.param( 'xenapi_vhd_coalesce_poll_interval', type='floating point', default='5.0', - description="The interval used for polling of coalescing vhds. Used only if compute_driver=xenapi.XenAPIDriver") + description="The interval used for polling of coalescing vhds. Used only " + "if compute_driver=xenapi.XenAPIDriver") nova.param('xenapi_check_host', type='boolean', default='true', - description="Ensure compute service is running on host XenAPI connects to.") + description="Ensure compute service is running on host XenAPI " + "connects to.") nova.param('xenapi_vhd_coalesce_max_attempts', type='integer', default='5', - description="Max number of times to poll for VHD to coalesce. Used only if compute_driver=xenapi.XenAPIDriver") + description="Max number of times to poll for VHD to coalesce. Used " + "only if compute_driver=xenapi.XenAPIDriver") nova.param('xenapi_sr_base_path', type='string', default='/var/run/sr-mount', description="Base path to the storage repository") @@ -1527,7 +1825,10 @@ nova.param('xenapi_ovs_integration_bridge', type='string', default='xapi1', description="Name of Integration Bridge used by Open vSwitch") nova.param('cache_images', type='string', default='all', - description="Cache glance images locally. `all` will cache all images, `some` will only cache images that have the image_property `cache_in_nova=True`, and `none` turns off caching entirely") + description="Cache glance images locally. `all` will cache all " + "images, `some` will only cache images that have the " + "image_property `cache_in_nova=True`, and `none` turns " + "off caching entirely") nova.param('default_os_type', type='string', default='linux', description="Default OS type") @@ -1539,11 +1840,19 @@ nova.param('max_kernel_ramdisk_size', type='integer', default='16777216', description="Maximum size in bytes of kernel or ramdisk images") nova.param( - 'sr_matching_filter', type='string', default='other-config:i18n-keylocal-storage', - description="Filter for finding the SR to be used to install guest instances on. The default value is the Local Storage in default XenServer/XCP installations. To select an SR with a different matching criteria, you could set it to other- config:my_favorite_sr=true. On the other hand, to fall back on the Default SR, as displayed by XenCenter, set this flag to: default-sr:true") + 'sr_matching_filter', type='string', + default='other-config:i18n-keylocal-storage', + description="Filter for finding the SR to be used to install guest " + "instances on. The default value is the Local Storage in " + "default XenServer/XCP installations. To select an SR with a " + "different matching criteria, you could set it to other- " + "config:my_favorite_sr=true. On the other hand, to fall back " + "on the Default SR, as displayed by XenCenter, set this flag " + "to: default-sr:true") nova.param('xenapi_sparse_copy', type='boolean', default='true', - description="Whether to use sparse_copy for copying data on a resize down") + description="Whether to use sparse_copy for copying data on a " + "resize down") nova.param('xenapi_num_vbd_unplug_retries', type='integer', default='10', description="Maximum number of retries to unplug VBD") @@ -1555,13 +1864,16 @@ nova.param('xenapi_torrent_base_url', type='string', default='', description="Base URL for torrent files.") nova.param('xenapi_torrent_seed_chance', type='floating point', - default='1.0', description="Probability that peer will become a seeder.") + default='1.0', + description="Probability that peer will become a seeder.") nova.param('xenapi_torrent_seed_duration', type='integer', default='3600', - description="Number of seconds after downloading an image via BitTorrent that it should be seeded for other peers.") + description="Number of seconds after downloading an image via " + "BitTorrent that it should be seeded for other peers.") nova.param('xenapi_torrent_max_last_accessed', type='integer', default='86400', - description="Cached torrent files not accessed within this number of seconds can be reaped") + description="Cached torrent files not accessed within this number " + "of seconds can be reaped") nova.param('xenapi_torrent_listen_port_start', type='integer', default='6881', description="Beginning of port range to listen on") @@ -1571,36 +1883,47 @@ nova.param('xenapi_torrent_listen_port_end', type='integer', nova.param( 'xenapi_torrent_download_stall_cutoff', type='integer', default='600', - description="Number of seconds a download can remain at the same progress percentage w/o being considered a stall") + description="Number of seconds a download can remain at the same progress " + "percentage w/o being considered a stall") nova.param( - 'xenapi_torrent_max_seeder_processes_per_host', type='integer', default='1', - description="Maximum number of seeder processes to run concurrently within a given dom0.") + 'xenapi_torrent_max_seeder_processes_per_host', type='integer', + default='1', + description="Maximum number of seeder processes to run concurrently within" + " a given dom0.") nova.param('xenapi_running_timeout', type='integer', default='60', - description="number of seconds to wait for instance to go to running state") + description="number of seconds to wait for instance to go to " + "running state") nova.param( - 'xenapi_vif_driver', type='string', default='nova.virt.xenapi.vif.XenAPIBridgeDriver', + 'xenapi_vif_driver', type='string', + default='nova.virt.xenapi.vif.XenAPIBridgeDriver', description="The XenAPI VIF driver using XenServer Network APIs.") nova.param( - 'xenapi_image_upload_handler', type='string', default='nova.virt.xenapi.imageupload.glance.GlanceStore', + 'xenapi_image_upload_handler', type='string', + default='nova.virt.xenapi.imageupload.glance.GlanceStore', description="Object Store Driver used to handle image uploads.") nova.param( - 'novncproxy_base_url', type='string', default='http://127.0.0.1:6080/vnc_auto.html', - description="location of vnc console proxy, in the form 'http://127.0.0.1:6080/vnc_auto.html'") + 'novncproxy_base_url', type='string', + default='http://127.0.0.1:6080/vnc_auto.html', + description="location of vnc console proxy, in the form " + "'http://127.0.0.1:6080/vnc_auto.html'") nova.param( - 'xvpvncproxy_base_url', type='string', default='http://127.0.0.1:6081/console', - description="location of nova xvp vnc console proxy, in the form 'http://127.0.0.1:6081/console'") + 'xvpvncproxy_base_url', type='string', + default='http://127.0.0.1:6081/console', + description="location of nova xvp vnc console proxy, in the form " + "'http://127.0.0.1:6081/console'") nova.param('vncserver_listen', type='string', default='127.0.0.1', description="IP address on which instance vncservers should listen") nova.param('vncserver_proxyclient_address', type='string', - default='127.0.0.1', description="the address to which proxy clients") + default='127.0.0.1', + description="the address to which proxy clients") nova.param('vnc_enabled', type='boolean', default='true', description="enable vnc related features") @@ -1619,10 +1942,14 @@ nova.param('volume_api_class', type='string', default='nova.volume.cinder.API', nova.param( 'cinder_catalog_info', type='string', default='volume:cinder:publicURL', - description="Info to match when looking for cinder in the service catalog. Format is : separated values of the form: ::") + description="Info to match when looking for cinder in the service catalog." + " Format is : separated values of the form: " + "::") nova.param('cinder_endpoint_template', type='string', default='', - description="Override service catalog lookup with template for cinder endpoint e.g. http://localhost:8776/v1/%(project_id)s") + description="Override service catalog lookup with template for " + "cinder endpoint e.g. " + "http://localhost:8776/v1/%(project_id)s") nova.param('os_region_name', type='string', default='', description="region name of this node") @@ -1634,12 +1961,17 @@ nova.param('cinder_api_insecure', type='boolean', default='false', description="Allow to perform insecure SSL requests to cinder") nova.param('cinder_cross_az_attach', type='boolean', default='true', - description="Allow attach between instance and volume in different availability zones.") + description="Allow attach between instance and volume in different" + " availability zones.") nova.section('HYPERV') nova.param('instances_path_share', type='string', default='', - description="The name of a Windows share name mapped to the 'instances_path' dir and used by the resize feature to copy files to the target host. If left blank, an administrative share will be used, looking for the same 'instances_path' used locally") + description="The name of a Windows share name mapped to the " + "'instances_path' dir and used by the resize feature to" + " copy files to the target host. If left blank, an " + "administrative share will be used, looking for the " + "same 'instances_path' used locally") nova.section('conductor') @@ -1650,7 +1982,8 @@ nova.param('topic', type='string', default='conductor', description="the topic conductor nodes listen on") nova.param( - 'manager', type='string', default='nova.conductor.manager.ConductorManager', + 'manager', type='string', + default='nova.conductor.manager.ConductorManager', description="full class name for the Manager for conductor") nova.section('cells') @@ -1660,7 +1993,8 @@ nova.param( description="Cells communication driver to use") nova.param('instance_updated_at_threshold', type='integer', default='3600', - description="Number of seconds after an instance was updated or deleted to continue to update cells") + description="Number of seconds after an instance was updated or " + "deleted to continue to update cells") nova.param('instance_update_num_instances', type='integer', default='1', description="Number of instances to update per periodic task run") @@ -1669,7 +2003,8 @@ nova.param('max_hop_count', type='integer', default='10', description="Maximum number of hops for cells routing.") nova.param('scheduler', type='string', - default='nova.cells.scheduler.CellsScheduler', description="Cells scheduler to use") + default='nova.cells.scheduler.CellsScheduler', + description="Cells scheduler to use") nova.param('enable', type='boolean', default='false', description="Enable cell functionality") @@ -1678,26 +2013,31 @@ nova.param('topic', type='string', default='cells', description="the topic cells nodes listen on") nova.param('manager', type='string', - default='nova.cells.manager.CellsManager', description="Manager for cells") + default='nova.cells.manager.CellsManager', + description="Manager for cells") nova.param('name', type='string', default='nova', description="name of this cell") nova.param( - 'capabilities', type='list', default='hypervisorxenserver;kvm,oslinux;windows', + 'capabilities', type='list', + default='hypervisorxenserver;kvm,oslinux;windows', description="Key/Multi-value list with the capabilities of the cell") nova.param('call_timeout', type='integer', default='60', description="Seconds to wait for response from a call to a cell.") nova.param('rpc_driver_queue_base', type='string', default='cells.intercell', - description="Base queue name to use when communicating between cells. Various topics by message type will be appended to this.") + description="Base queue name to use when communicating between " + "cells. Various topics by message type will be appended" + " to this.") nova.param('scheduler_retries', type='integer', default='10', description="How many retries when no cells are available.") nova.param('scheduler_retry_delay', type='integer', default='2', - description="How often to retry in seconds when no cells are available.") + description="How often to retry in seconds when no cells are " + "available.") nova.param('db_check_interval', type='integer', default='60', description="Seconds between getting fresh cell info from db.") @@ -1705,7 +2045,8 @@ nova.param('db_check_interval', type='integer', default='60', nova.section('zookeeper') nova.param('address', type='string', default='', - description="The ZooKeeper addresses for servicegroup service in the format of host1:port,host2:port,host3:port") + description="The ZooKeeper addresses for servicegroup service in " + "the format of host1:port,host2:port,host3:port") nova.param('recv_timeout', type='integer', default='4000', description="recv_timeout parameter for the zk session") @@ -1714,7 +2055,8 @@ nova.param('sg_prefix', type='string', default='/servicegroups', description="The prefix used in ZooKeeper to store ephemeral nodes") nova.param('sg_retry_interval', type='integer', default='5', - description="Number of seconds to wait until retrying to join the session") + description="Number of seconds to wait until retrying to join the " + "session") nova.section('baremetal') @@ -1722,23 +2064,31 @@ nova.param('db_backend', type='string', default='sqlalchemy', description="The backend to use for bare-metal database") nova.param( - 'sql_connection', type='string', default='sqlite:///$state_path/baremetal_$sqlite_db', - description="The SQLAlchemy connection string used to connect to the bare-metal database") + 'sql_connection', type='string', + default='sqlite:///$state_path/baremetal_$sqlite_db', + description="The SQLAlchemy connection string used to connect to the " + "bare-metal database") nova.param('inject_password', type='boolean', default='true', description="Whether baremetal compute injects password or not") nova.param('injected_network_template', type='string', - default='$pybasedir/nova/virt/baremetal/interfaces.template', description="Template file for injected network") + default='$pybasedir/nova/virt/baremetal/interfaces.template', + description="Template file for injected network") nova.param('vif_driver', type='string', - default='nova.virt.baremetal.vif_driver.BareMetalVIFDriver', description="Baremetal VIF driver.") + default='nova.virt.baremetal.vif_driver.BareMetalVIFDriver', + description="Baremetal VIF driver.") nova.param('volume_driver', type='string', - default='nova.virt.baremetal.volume_driver.LibvirtVolumeDriver', description="Baremetal volume driver.") + default='nova.virt.baremetal.volume_driver.LibvirtVolumeDriver', + description="Baremetal volume driver.") nova.param('instance_type_extra_specs', type='list', default='', - description="a list of additional capabilities corresponding to instance_type_extra_specs for this compute host to advertise. Valid entries are name=value, pairs For example, 'key1:val1, key2:val2'") + description="a list of additional capabilities corresponding to " + "instance_type_extra_specs for this compute host to " + "advertise. Valid entries are name=value, pairs For " + "example, 'key1:val1, key2:val2'") nova.param('driver', type='string', default='nova.virt.baremetal.pxe.PXE', description="Baremetal driver back-end") @@ -1770,14 +2120,16 @@ nova.param('deploy_ramdisk', type='string', default='', description="Default ramdisk image ID used in deployment phase") nova.param( - 'net_config_template', type='string', default='$pybasedir/nova/virt/baremetal/net-dhcp.ubuntu.template', + 'net_config_template', type='string', + default='$pybasedir/nova/virt/baremetal/net-dhcp.ubuntu.template', description="Template file for injected network config") nova.param('pxe_append_params', type='string', default='', description="additional append parameters for baremetal PXE boot") nova.param( - 'pxe_config_template', type='string', default='$pybasedir/nova/virt/baremetal/pxe_config.template', + 'pxe_config_template', type='string', + default='$pybasedir/nova/virt/baremetal/pxe_config.template', description="Template file for PXE configuration") nova.param('pxe_deploy_timeout', type='integer', default='0', @@ -1796,10 +2148,13 @@ nova.param('virtual_power_host_pass', type='string', default='', description="password for virtual power host_user") nova.param('use_unsafe_iscsi', type='boolean', default='false', - description="Do not set this out of dev/test environments. If a node does not have a fixed PXE IP address, volumes are exported with globally opened ACL") + description="Do not set this out of dev/test environments. If a " + "node does not have a fixed PXE IP address, volumes are" + " exported with globally opened ACL") nova.param( - 'iscsi_iqn_prefix', type='string', default='iqn.2010-10.org.openstack.baremetal', + 'iscsi_iqn_prefix', type='string', + default='iqn.2010-10.org.openstack.baremetal', description="iSCSI IQN prefix used in baremetal volume connections.") nova.section('rpc_notifier2') @@ -1813,13 +2168,15 @@ nova.param('attestation_server', type='string', default='', description="attestation server http") nova.param('attestation_server_ca_file', type='string', default='', - description="attestation server Cert file for Identity verification") + description="attestation server Cert file for Identity " + "verification") nova.param('attestation_port', type='string', default='8443', description="attestation server port") nova.param('attestation_api_url', type='string', - default='/OpenAttestationWebServices/V1.0', description="attestation web API URL") + default='/OpenAttestationWebServices/V1.0', + description="attestation web API URL") nova.param('attestation_auth_blob', type='string', default='', description="attestation authorization blob - must change") @@ -1835,14 +2192,18 @@ nova.param('integration_bridge', type='string', nova.section('spice') nova.param( - 'html5proxy_base_url', type='string', default='http://127.0.0.1:6082/spice_auto.html', - description="location of spice html5 console proxy, in the form 'http://127.0.0.1:6082/spice_auto.html'") + 'html5proxy_base_url', type='string', + default='http://127.0.0.1:6082/spice_auto.html', + description="location of spice html5 console proxy, in the form " + "'http://127.0.0.1:6082/spice_auto.html'") nova.param('server_listen', type='string', default='127.0.0.1', - description="IP address on which instance spice server should listen") + description="IP address on which instance spice server should " + "listen") nova.param('server_proxyclient_address', type='string', - default='127.0.0.1', description="the address to which proxy clients") + default='127.0.0.1', + description="the address to which proxy clients") nova.param('enabled', type='boolean', default='false', description="enable spice related features") diff --git a/ostack_validator/schemas/schema_generator.py b/ostack_validator/schemas/schema_generator.py index 873e847..b230691 100644 --- a/ostack_validator/schemas/schema_generator.py +++ b/ostack_validator/schemas/schema_generator.py @@ -60,7 +60,8 @@ class SchemaParser(object): wrk_str = str(line).strip('#[]\n') f.write( - "%s.param('%s', type='%s', default='%s', description=\"%s\")\n\n" % ( + "%s.param('%s', type='%s', " + "default='%s', description=\"%s\")\n\n" % ( self.prj_name, wrk_str.split('=')[0].rstrip(' ').lstrip(' '), var_type.rstrip(' ').lstrip(' '),