This sets up the HTTPProxyToWSGI middleware in front of Freezer. The purpose of this middleware is to set up the request URL correctly in case there is a proxy (For instance, a loadbalancer such as HAProxy) in front of Freezer. The HTTPProxyToWSGI is off by default and needs to be enabled via a configuration value. Depends-On: Iffd38a325204a3ec7380a7a56061866477d3d06e Change-Id: I44d60863eefeb52891474653aa9fcf1ba57d50a1 Closes-bug: #1590608
398 lines
14 KiB
Plaintext
398 lines
14 KiB
Plaintext
[DEFAULT]
|
|
|
|
#
|
|
# From freezer-api
|
|
#
|
|
|
|
# IP address to listen on. Default is 0.0.0.0 (IP address value)
|
|
#bind_host = 0.0.0.0
|
|
|
|
# Port number to listen on. Default is 9090 (port value)
|
|
# Minimum value: 0
|
|
# Maximum value: 65535
|
|
#bind_port = 9090
|
|
|
|
#
|
|
# From oslo.log
|
|
#
|
|
|
|
# If set to true, the logging level will be set to DEBUG instead of the default
|
|
# INFO level. (boolean value)
|
|
# Note: This option can be changed without restarting.
|
|
#debug = false
|
|
|
|
# DEPRECATED: If set to false, the logging level will be set to WARNING instead
|
|
# of the default INFO level. (boolean value)
|
|
# This option is deprecated for removal.
|
|
# Its value may be silently ignored in the future.
|
|
#verbose = true
|
|
|
|
# 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. Note that when logging
|
|
# configuration files are used then all logging configuration is set in the
|
|
# configuration file and other logging configuration options are ignored (for
|
|
# example, logging_context_format_string). (string value)
|
|
# Note: This option can be changed without restarting.
|
|
# Deprecated group/name - [DEFAULT]/log_config
|
|
#log_config_append = <None>
|
|
|
|
# Defines the format string for %%(asctime)s in log records. Default:
|
|
# %(default)s . This option is ignored if log_config_append is set. (string
|
|
# value)
|
|
#log_date_format = %Y-%m-%d %H:%M:%S
|
|
|
|
# (Optional) Name of log file to send logging output to. If no default is set,
|
|
# logging will go to stderr as defined by use_stderr. This option is ignored if
|
|
# log_config_append is set. (string value)
|
|
# Deprecated group/name - [DEFAULT]/logfile
|
|
#log_file = <None>
|
|
|
|
# (Optional) The base directory used for relative log_file paths. This option
|
|
# is ignored if log_config_append is set. (string value)
|
|
# Deprecated group/name - [DEFAULT]/logdir
|
|
#log_dir = <None>
|
|
|
|
# Uses logging handler designed to watch file system. When log file is moved or
|
|
# removed this handler will open a new log file with specified path
|
|
# instantaneously. It makes sense only if log_file option is specified and
|
|
# Linux platform is used. This option is ignored if log_config_append is set.
|
|
# (boolean value)
|
|
#watch_log_file = false
|
|
|
|
# Use syslog for logging. Existing syslog format is DEPRECATED and will be
|
|
# changed later to honor RFC5424. This option is ignored if log_config_append
|
|
# is set. (boolean value)
|
|
#use_syslog = false
|
|
|
|
# Syslog facility to receive log lines. This option is ignored if
|
|
# log_config_append is set. (string value)
|
|
#syslog_log_facility = LOG_USER
|
|
|
|
# Log output to standard error. This option is ignored if log_config_append is
|
|
# set. (boolean value)
|
|
#use_stderr = true
|
|
|
|
# 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 when context is undefined. (string
|
|
# value)
|
|
#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
|
|
|
|
# Additional data to append to log message when logging level for the message
|
|
# is DEBUG. (string value)
|
|
#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
|
|
|
|
# Prefix each line of exception output with this format. (string value)
|
|
#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
|
|
|
|
# Defines the format string for %(user_identity)s that is used in
|
|
# logging_context_format_string. (string value)
|
|
#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
|
|
|
|
# List of package logging levels in logger=LEVEL pairs. This option is ignored
|
|
# if log_config_append is set. (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,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
|
|
|
|
# Enables or disables publication of error events. (boolean value)
|
|
#publish_errors = false
|
|
|
|
# The format for an instance that is passed with the log message. (string
|
|
# value)
|
|
#instance_format = "[instance: %(uuid)s] "
|
|
|
|
# The format for an instance UUID that is passed with the log message. (string
|
|
# value)
|
|
#instance_uuid_format = "[instance: %(uuid)s] "
|
|
|
|
# Enables or disables fatal status of deprecations. (boolean value)
|
|
#fatal_deprecations = false
|
|
|
|
|
|
[cors]
|
|
|
|
#
|
|
# From oslo.middleware
|
|
#
|
|
|
|
# Indicate whether this resource may be shared with the domain received in the
|
|
# requests "origin" header. Format: "<protocol>://<host>[:<port>]", no trailing
|
|
# slash. Example: https://horizon.example.com (list value)
|
|
#allowed_origin = <None>
|
|
|
|
# Indicate that the actual request can include user credentials (boolean value)
|
|
#allow_credentials = true
|
|
|
|
# Indicate which headers are safe to expose to the API. Defaults to HTTP Simple
|
|
# Headers. (list value)
|
|
#expose_headers =
|
|
|
|
# Maximum cache age of CORS preflight requests. (integer value)
|
|
#max_age = 3600
|
|
|
|
# Indicate which methods can be used during the actual request. (list value)
|
|
#allow_methods = OPTIONS,GET,HEAD,POST,PUT,DELETE,TRACE,PATCH
|
|
|
|
# Indicate which header field names may be used during the actual request.
|
|
# (list value)
|
|
#allow_headers =
|
|
|
|
|
|
[cors.subdomain]
|
|
|
|
#
|
|
# From oslo.middleware
|
|
#
|
|
|
|
# Indicate whether this resource may be shared with the domain received in the
|
|
# requests "origin" header. Format: "<protocol>://<host>[:<port>]", no trailing
|
|
# slash. Example: https://horizon.example.com (list value)
|
|
#allowed_origin = <None>
|
|
|
|
# Indicate that the actual request can include user credentials (boolean value)
|
|
#allow_credentials = true
|
|
|
|
# Indicate which headers are safe to expose to the API. Defaults to HTTP Simple
|
|
# Headers. (list value)
|
|
#expose_headers =
|
|
|
|
# Maximum cache age of CORS preflight requests. (integer value)
|
|
#max_age = 3600
|
|
|
|
# Indicate which methods can be used during the actual request. (list value)
|
|
#allow_methods = OPTIONS,GET,HEAD,POST,PUT,DELETE,TRACE,PATCH
|
|
|
|
# Indicate which header field names may be used during the actual request.
|
|
# (list value)
|
|
#allow_headers =
|
|
|
|
|
|
[keystone_authtoken]
|
|
|
|
#
|
|
# From freezer-api
|
|
#
|
|
|
|
# Complete public Identity API endpoint. (string value)
|
|
#auth_uri = <None>
|
|
|
|
# API version of the admin Identity API endpoint. (string value)
|
|
#auth_version = <None>
|
|
|
|
# Do not handle authorization requests within the middleware, but delegate the
|
|
# authorization decision to downstream WSGI components. (boolean value)
|
|
#delay_auth_decision = false
|
|
|
|
# Request timeout value for communicating with Identity API server. (integer
|
|
# value)
|
|
#http_connect_timeout = <None>
|
|
|
|
# How many times are we trying to reconnect when communicating with Identity
|
|
# API Server. (integer value)
|
|
#http_request_max_retries = 3
|
|
|
|
# Env key for the swift cache. (string value)
|
|
#cache = <None>
|
|
|
|
# Required if identity server requires client certificate (string value)
|
|
#certfile = <None>
|
|
|
|
# Required if identity server requires client certificate (string value)
|
|
#keyfile = <None>
|
|
|
|
# A PEM encoded Certificate Authority to use when verifying HTTPs connections.
|
|
# Defaults to system CAs. (string value)
|
|
#cafile = <None>
|
|
|
|
# Verify HTTPS connections. (boolean value)
|
|
#insecure = false
|
|
|
|
# The region in which the identity server can be found. (string value)
|
|
#region_name = <None>
|
|
|
|
# Directory used to cache files related to PKI tokens. (string value)
|
|
#signing_dir = <None>
|
|
|
|
# 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 - [keystone_authtoken]/memcache_servers
|
|
#memcached_servers = <None>
|
|
|
|
# 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
|
|
|
|
# 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. If MAC, token data is authenticated (with HMAC)
|
|
# in the cache. If ENCRYPT, token data is encrypted and authenticated in the
|
|
# cache. If the value is not one of these options or empty, auth_token will
|
|
# raise an exception on initialization. (string value)
|
|
# Allowed values: None, MAC, ENCRYPT
|
|
#memcache_security_strategy = None
|
|
|
|
# (Optional, mandatory if memcache_security_strategy is defined) This string is
|
|
# used for key derivation. (string value)
|
|
#memcache_secret_key = <None>
|
|
|
|
# (Optional) Number of seconds memcached server is considered dead before it is
|
|
# tried again. (integer value)
|
|
#memcache_pool_dead_retry = 300
|
|
|
|
# (Optional) Maximum total number of open connections to every memcached
|
|
# server. (integer value)
|
|
#memcache_pool_maxsize = 10
|
|
|
|
# (Optional) Socket timeout in seconds for communicating with a memcached
|
|
# server. (integer value)
|
|
#memcache_pool_socket_timeout = 3
|
|
|
|
# (Optional) Number of seconds a connection to memcached is held unused in the
|
|
# pool before it is closed. (integer value)
|
|
#memcache_pool_unused_timeout = 60
|
|
|
|
# (Optional) Number of seconds that an operation will wait to get a memcached
|
|
# client connection from the pool. (integer value)
|
|
#memcache_pool_conn_get_timeout = 10
|
|
|
|
# (Optional) Use the advanced (eventlet safe) memcached client pool. The
|
|
# advanced pool will only work under python 2.x. (boolean value)
|
|
#memcache_use_advanced_pool = false
|
|
|
|
# (Optional) Indicate whether to set the X-Service-Catalog header. If False,
|
|
# middleware will not ask for service catalog on token validation and will not
|
|
# set the X-Service-Catalog header. (boolean value)
|
|
#include_service_catalog = true
|
|
|
|
# Used to control the use and type of token binding. Can be set to: "disabled"
|
|
# to not check token binding. "permissive" (default) to validate binding
|
|
# information if the bind type is of a form known to the server and ignore it
|
|
# if not. "strict" like "permissive" but if the bind type is unknown the token
|
|
# will be rejected. "required" any form of token binding is needed to be
|
|
# allowed. Finally the name of a binding method that must be present in tokens.
|
|
# (string 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 identity 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
|
|
|
|
# Authentication type to load (string value)
|
|
# Deprecated group/name - [keystone_authtoken]/auth_plugin
|
|
#auth_type = <None>
|
|
|
|
# Config Section from which to load plugin specific options (string value)
|
|
#auth_section = <None>
|
|
|
|
|
|
[oslo_middleware]
|
|
|
|
#
|
|
# From oslo.middleware
|
|
#
|
|
|
|
# The maximum body size for each request, in bytes. (integer value)
|
|
# Deprecated group/name - [DEFAULT]/osapi_max_request_body_size
|
|
# Deprecated group/name - [DEFAULT]/max_request_body_size
|
|
#max_request_body_size = 114688
|
|
|
|
# DEPRECATED: The HTTP Header that will be used to determine what the original
|
|
# request protocol scheme was, even if it was hidden by a SSL termination
|
|
# proxy. (string value)
|
|
# This option is deprecated for removal.
|
|
# Its value may be silently ignored in the future.
|
|
#secure_proxy_ssl_header = X-Forwarded-Proto
|
|
|
|
# Whether the application is behind a proxy or not. This determines if the
|
|
# middleware should parse the headers or not. (boolean value)
|
|
#enable_proxy_headers_parsing = false
|
|
|
|
|
|
[oslo_policy]
|
|
|
|
#
|
|
# From oslo.policy
|
|
#
|
|
|
|
# The file that defines policies. (string value)
|
|
# Deprecated group/name - [DEFAULT]/policy_file
|
|
#policy_file = policy.json
|
|
|
|
# Default rule. Enforced when a requested rule is not found. (string value)
|
|
# Deprecated group/name - [DEFAULT]/policy_default_rule
|
|
#policy_default_rule = default
|
|
|
|
# Directories where policy configuration files are stored. They can be relative
|
|
# to any directory in the search path defined by the config_dir option, or
|
|
# absolute paths. The file defined by policy_file must exist for these
|
|
# directories to be searched. Missing or empty directories are ignored. (multi
|
|
# valued)
|
|
# Deprecated group/name - [DEFAULT]/policy_dirs
|
|
#policy_dirs = policy.d
|
|
|
|
|
|
[paste_deploy]
|
|
|
|
#
|
|
# From freezer-api
|
|
#
|
|
|
|
# Name of the paste configuration file that defines the available pipelines.
|
|
# (string value)
|
|
#config_file = freezer-paste.ini
|
|
|
|
|
|
[storage]
|
|
|
|
#
|
|
# From freezer-api
|
|
#
|
|
|
|
# specify the storage db to use (default: elasticsearch (string value)
|
|
#db = elasticsearch
|
|
|
|
# specify the storage hosts (deprecated, use "hosts" (string value)
|
|
#endpoint =
|
|
|
|
# specify the storage hosts (string value)
|
|
#hosts = http://localhost:9200
|
|
|
|
# specify the name of the elasticsearch index (string value)
|
|
#index = freezer
|
|
|
|
# specify the connection timeout (integer value)
|
|
#timeout = 60
|
|
|
|
# number of retries to allow before raising and error (integer value)
|
|
#retries = 20
|
|
|
|
# explicitly turn on SSL (boolean value)
|
|
#use_ssl = false
|
|
|
|
# turn on SSL certs verification (boolean value)
|
|
#verify_certs = false
|
|
|
|
# path to CA certs on disk (string value)
|
|
#ca_certs = <None>
|
|
|
|
# Number of replicas for elk cluster. Default is 0. Use 0 for no replicas. This
|
|
# should be set to (number of node in the ES cluter -1). (integer value)
|
|
#number_of_replicas = 0
|