diff --git a/etc/zaqar.conf.sample b/etc/zaqar.conf.sample index a8cc0576e..218be7f53 100644 --- a/etc/zaqar.conf.sample +++ b/etc/zaqar.conf.sample @@ -1,7 +1,22 @@ [DEFAULT] # -# Options defined in zaqar.transport.base +# Options defined in zaqar.queues.bootstrap +# + +# ('Enable pooling across multiple storage backends. ', 'If +# pooling is enabled, the storage driver ', 'configuration is +# used to determine where the ', 'catalogue/control plane data +# is kept.') (boolean value) +# Deprecated group/name - [DEFAULT]/pooling +#pooling=false + +# Activate endpoints to manage pool registry. (boolean value) +#admin_mode=false + + +# +# Options defined in zaqar.queues.transport.base # # Backend to use for authentication. For no auth, keep it @@ -10,25 +25,11 @@ #auth_strategy= -# -# Options defined in zaqar.bootstrap -# - -# Enable pooling across multiple storage backends. If -# pooling is enabled, the storage driver configuration is -# used to determine where the catalogue/control plane data -# is kept. (boolean value) -#pooling=false - -# Activate endpoints to manage pool registry. (boolean value) -#admin_mode=false - - # # Options defined in zaqar.openstack.common.lockutils # -# Whether to disable inter-process locks (boolean value) +# Enables or disables inter-process locks. (boolean value) #disable_process_locking=false # Directory to use for lock files. (string value) @@ -47,47 +48,48 @@ # of default WARNING level). (boolean value) #verbose=false -# Log output to standard error (boolean value) +# Log output to standard error. (boolean value) #use_stderr=true -# Format string to use for log messages with context (string +# Format string to use for log messages with context. (string # value) #logging_context_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s -# Format string to use for log messages without context +# Format string to use for log messages without context. # (string value) #logging_default_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s -# Data to append to log format when level is DEBUG (string +# Data to append to log format when level is DEBUG. (string # value) #logging_debug_format_suffix=%(funcName)s %(pathname)s:%(lineno)d -# Prefix each line of exception output with this format +# Prefix each line of exception output with this format. # (string value) #logging_exception_prefix=%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s -# List of logger=LEVEL pairs (list value) -#default_log_levels=amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN +# List of logger=LEVEL pairs. (list value) +#default_log_levels=amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN -# Publish error events (boolean value) +# Enables or disables publication of error events. (boolean +# value) #publish_errors=false -# Make deprecations fatal (boolean value) +# Enables or disables fatal status of deprecations. (boolean +# value) #fatal_deprecations=false -# If an instance is passed with the log message, format it -# like this (string value) +# The format for an instance that is passed with the log +# message. (string value) #instance_format="[instance: %(uuid)s] " -# If an instance UUID is passed with the log message, format -# it like this (string value) +# The format for an instance UUID that is passed with the log +# message. (string value) #instance_uuid_format="[instance: %(uuid)s] " -# The name of logging configuration file. It does not disable -# existing loggers, but just appends specified logging -# configuration to any other existing logging options. Please -# see the Python logging module documentation for details on -# logging configuration files. (string value) +# The name of a logging configuration file. This file is +# appended to any existing logging configuration files. For +# details about logging configuration files, see the Python +# logging module documentation. (string value) # Deprecated group/name - [DEFAULT]/log_config #log_config_append= @@ -99,7 +101,7 @@ #log_format= # Format string for %%(asctime)s in log records. Default: -# %(default)s (string value) +# %(default)s . (string value) #log_date_format=%Y-%m-%d %H:%M:%S # (Optional) Name of log file to output to. If no default is @@ -108,29 +110,30 @@ #log_file= # (Optional) The base directory used for relative --log-file -# paths (string value) +# paths. (string value) # Deprecated group/name - [DEFAULT]/logdir #log_dir= # Use syslog for logging. Existing syslog format is DEPRECATED -# during I, and then will be changed in J to honor RFC5424 -# (boolean value) +# during I, and will change in J to honor RFC5424. (boolean +# value) #use_syslog=false -# (Optional) Use syslog rfc5424 format for logging. If -# enabled, will add APP-NAME (RFC5424) before the MSG part of -# the syslog message. The old format without APP-NAME is -# deprecated in I, and will be removed in J. (boolean value) +# (Optional) Enables or disables syslog rfc5424 format for +# logging. If enabled, prefixes the MSG part of the syslog +# message with APP-NAME (RFC5424). The format without the APP- +# NAME is deprecated in I, and will be removed in J. (boolean +# value) #use_syslog_rfc_format=false -# Syslog facility to receive log lines (string value) +# Syslog facility to receive log lines. (string value) #syslog_log_facility=LOG_USER [drivers] # -# Options defined in zaqar.bootstrap +# Options defined in zaqar.queues.bootstrap # # Transport driver to use. (string value) @@ -143,18 +146,12 @@ [drivers:storage:mongodb] # -# Options defined in zaqar.storage.mongodb +# Options defined in zaqar.queues.storage.mongodb # -# Mongodb Connection URI. If ssl connection enabled, -# then the following 'ssl_keyfile', 'ssl_certfile', -# 'ssl_cert_reqs', 'ssl_ca_certs' need to be set accordingly. -# (string value) -#uri= - # The private keyfile used to identify the local connection -# against mongod. If included with the 'certifle' then only -# the ssl_certfile is needed. (string value) +# against mongod. If included with the ``certifle`` then only +# the ``ssl_certfile`` is needed. (string value) #ssl_keyfile= # The certificate file used to identify the local connection @@ -162,20 +159,27 @@ #ssl_certfile= # Specifies whether a certificate is required from the other -# side of the connection, and whether it will be validated -# if provided. It must be one of the three values 'CERT_NONE' -# (certificates ignored), 'CERT_OPTIONAL'(not required, but -# validated if provided), or 'CERT_REQUIRED'(required and validated). -# If the value of this parameter is not 'CERT_NONE', then the -# 'ssl_ca_certs' parameter must point to a file of CA certificates. -# (string value) +# side of the connection, and whether it will be validated if +# provided. It must be one of the three values +# ``CERT_NONE``(certificates ignored), ``CERT_OPTIONAL``(not +# required, but validated if provided), or +# ``CERT_REQUIRED``(required and validated). If the value of +# this parameter is not ``CERT_NONE``, then the +# ``ssl_ca_cert`` parameter must point to a file of CA +# certificates. (string value) #ssl_cert_reqs=CERT_REQUIRED -# The ca_certs file contains a set of concatenated certification -# authority certificates, which are used to validate certificates -# passed from the other end of the connection. (string value) +# The ca_certs file contains a set of concatenated +# "certification authority" certificates, which are used to +# validate certificates passed from the other end of the +# connection. (string value) #ssl_ca_certs= +# Mongodb Connection URI. If ssl connection enabled, then +# ``ssl_keyfile``, ``ssl_certfile``, ``ssl_cert_reqs``, +# ``ssl_ca_certs`` need to be set accordingly. (string value) +#uri= + # Database name. (string value) #database=zaqar @@ -216,37 +220,58 @@ [drivers:storage:sqlalchemy] # -# Options defined in zaqar.storage.sqlalchemy +# Options defined in zaqar.queues.storage.sqlalchemy # # An sqlalchemy URL (string value) #uri=sqlite:///:memory: +[drivers:transport:wsgi] + +# +# Options defined in zaqar.queues.transport.wsgi +# + +# Address on which the self-hosting server will listen. +# (string value) +#bind=127.0.0.1 + +# Port on which the self-hosting server will listen. (integer +# value) +#port=8888 + + [keystone_authtoken] # -# Options defined in keystoneclient.middleware.auth_token +# Options defined in keystonemiddleware.auth_token # -# Prefix to prepend at the beginning of the path (string -# value) +# Prefix to prepend at the beginning of the path. Deprecated, +# use identity_uri. (string value) #auth_admin_prefix= -# Host providing the admin Identity API endpoint (string -# value) +# Host providing the admin Identity API endpoint. Deprecated, +# use identity_uri. (string value) #auth_host=127.0.0.1 -# Port of the admin Identity API endpoint (integer value) +# Port of the admin Identity API endpoint. Deprecated, use +# identity_uri. (integer value) #auth_port=35357 -# Protocol of the admin Identity API endpoint(http or https) -# (string value) +# Protocol of the admin Identity API endpoint (http or https). +# Deprecated, use identity_uri. (string value) #auth_protocol=https # Complete public Identity API endpoint (string value) #auth_uri= +# Complete admin Identity API endpoint. This should specify +# the unversioned root endpoint e.g. https://localhost:35357/ +# (string value) +#identity_uri= + # API version of the admin Identity API endpoint (string # value) #auth_version= @@ -264,15 +289,12 @@ # with Identity API Server. (integer value) #http_request_max_retries=3 -# Allows to pass in the name of a fake http_handler callback -# function used instead of httplib.HTTPConnection or -# httplib.HTTPSConnection. Useful for unit testing where -# network is not available. (string value) -#http_handler= - -# Single shared secret with the Keystone configuration used -# for bootstrapping a Keystone installation, or otherwise -# bypassing the normal authentication process. (string value) +# This option is deprecated and may be removed in a future +# release. Single shared secret with the Keystone +# configuration used for bootstrapping a Keystone +# installation, or otherwise bypassing the normal +# authentication process. This option should not be used, use +# `admin_user` and `admin_password` instead. (string value) #admin_token= # Keystone account username (string value) @@ -307,20 +329,24 @@ # value) #signing_dir= -# If defined, the memcache server(s) to use for caching (list -# value) +# Optionally specify a list of memcached server(s) to use for +# caching. If left undefined, tokens will instead be cached +# in-process. (list value) # Deprecated group/name - [DEFAULT]/memcache_servers #memcached_servers= -# In order to prevent excessive requests and validations, the -# middleware uses an in-memory cache for the tokens the -# Keystone API returns. This is only valid if memcache_servers -# is defined. Set to -1 to disable caching completely. -# (integer value) +# In order to prevent excessive effort spent validating +# tokens, the middleware caches previously-seen tokens for a +# configurable duration (in seconds). Set to -1 to disable +# caching completely. (integer value) #token_cache_time=300 -# Value only used for unit testing (integer value) -#revocation_cache_time=1 +# Determines the frequency at which the list of revoked tokens +# is retrieved from the Identity service (in seconds). A high +# number of revocation events combined with a low cache +# duration may significantly reduce performance. (integer +# value) +#revocation_cache_time=10 # (optional) if defined, indicate whether token data should be # authenticated or authenticated and encrypted. Acceptable @@ -353,11 +379,110 @@ # value) #enforce_token_bind=permissive +# If true, the revocation list will be checked for cached +# tokens. This requires that PKI tokens are configured on the +# Keystone server. (boolean value) +#check_revocations_for_cached=false + +# Hash algorithms to use for hashing PKI tokens. This may be a +# single algorithm or multiple. The algorithms are those +# supported by Python standard hashlib.new(). The hashes will +# be tried in the order given, so put the preferred one first +# for performance. The result of the first hash will be stored +# in the cache. This will typically be set to multiple values +# only while migrating from a less secure algorithm to a more +# secure one. Once all the old tokens are expired this option +# should be set to a single value for better performance. +# (list value) +#hash_algorithms=md5 + [pooling:catalog] # -# Options defined in zaqar.storage.pooling +# Options defined in zaqar.queues.storage.pooling # -# Catalog storage driver. (integer value) +# Catalog storage driver. (string value) +#storage=sqlite + + +[storage] + +# +# Options defined in zaqar.queues.storage.pipeline +# + +# Pipeline to use for processing queue operations. This +# pipeline will be consumed before calling the storage +# driver's controller methods, which will always be appended +# to this pipeline. (list value) +#queue_pipeline= + +# Pipeline to use for processing message operations. This +# pipeline will be consumed before calling the storage +# driver's controller methods, which will always be appended +# to this pipeline. (list value) +#message_pipeline= + +# Pipeline to use for processing claim operations. This +# pipeline will be consumed before calling the storage +# driver's controller methods, which will always be appended +# to this pipeline. (list value) +#claim_pipeline= + + +[transport] + +# +# Options defined in zaqar.queues.transport.base +# + +# (integer value) +#default_message_ttl=3600 + +# (integer value) +#default_claim_ttl=300 + +# (integer value) +#default_claim_grace=60 + + +# +# Options defined in zaqar.queues.transport.validation +# + +# (integer value) +# Deprecated group/name - [limits:transport]/queue_paging_uplimit +#max_queues_per_page=20 + +# (integer value) +# Deprecated group/name - [limits:transport]/message_paging_uplimit +#max_messages_per_page=20 + +# The maximum number of messages that can be claimed (OR) +# popped in a single request (integer value) +# Deprecated group/name - [DEFAULT]/max_messages_per_claim +#max_messages_per_claim_or_pop=20 + +# (integer value) +# Deprecated group/name - [limits:transport]/metadata_size_uplimit +#max_queue_metadata=65536 + +# (integer value) +# Deprecated group/name - [limits:transport]/message_size_uplimit +#max_message_size=262144 + +# (integer value) +# Deprecated group/name - [limits:transport]/message_ttl_max +#max_message_ttl=1209600 + +# (integer value) +# Deprecated group/name - [limits:transport]/claim_ttl_max +#max_claim_ttl=43200 + +# (integer value) +# Deprecated group/name - [limits:transport]/claim_grace_max +#max_claim_grace=43200 + + diff --git a/setup.cfg b/setup.cfg index f0da8256d..ac53d0c05 100644 --- a/setup.cfg +++ b/setup.cfg @@ -56,18 +56,14 @@ zaqar.openstack.common.cache.backends = memory = zaqar.openstack.common.cache._backends.memory:MemoryBackend oslo.config.opts = - zaqar.bootstrap = zaqar.queues.bootstrap:_config_options - zaqar.storage.base = zaqar.queues.storage.base:_config_options - zaqar.storage.pipeline = zaqar.queues.storage.pipeline:_config_options - zaqar.storage.pooling = zaqar.queues.storage.pooling:_config_options - zaqar.storage.mongodb = zaqar.queues.storage.mongodb.options:_config_options - - # NOTE(flaper87): sqlite points to sqla for backwards compatibility - zaqar.storage.sqlite = zaqar.queues.storage.sqlalchemy.options:_config_options - zaqar.storage.sqlalchemy = zaqar.queues.storage.sqlalchemy.options:_config_options - zaqar.transport.wsgi = zaqar.queues.transport.wsgi.v1_0.driver:_config_options - zaqar.transport.base = zaqar.queues.transport.base:_config_options - zaqar.transport.validation = zaqar.queues.transport.validation:_config_options + zaqar.queues.bootstrap = zaqar.queues.bootstrap:_config_options + zaqar.queues.storage.pipeline = zaqar.queues.storage.pipeline:_config_options + zaqar.queues.storage.pooling = zaqar.queues.storage.pooling:_config_options + zaqar.queues.storage.mongodb = zaqar.queues.storage.mongodb.options:_config_options + zaqar.queues.storage.sqlalchemy = zaqar.queues.storage.sqlalchemy.options:_config_options + zaqar.queues.transport.wsgi = zaqar.queues.transport.wsgi.driver:_config_options + zaqar.queues.transport.base = zaqar.queues.transport.base:_config_options + zaqar.queues.transport.validation = zaqar.queues.transport.validation:_config_options [nosetests] where=tests diff --git a/tools/config/oslo.config.generator.rc b/tools/config/oslo.config.generator.rc index a67fc8b21..5fa9f6cd0 100644 --- a/tools/config/oslo.config.generator.rc +++ b/tools/config/oslo.config.generator.rc @@ -1,6 +1,5 @@ export OSLO_CONFIG_GENERATOR_EXTRA_MODULES="keystonemiddleware.auth_token" export OSLO_CONFIG_GENERATOR_EXTRA_LIBRARIES="zaqar.queues.bootstrap - zaqar.queues.storage.base zaqar.queues.storage.pipeline zaqar.queues.storage.pooling zaqar.queues.storage.mongodb