Cleanup service templates

* Add attributes needed in most cases
* Cleanup clutter and old comments
* Cleanup unused old attributes

Change-Id: I19c3a0ed4f37371d0aa1886f1a7fd865e404c841
This commit is contained in:
Mark Vanderwiel 2015-01-13 14:15:58 -06:00
parent 66ee595cf6
commit 4f7405a2a3
10 changed files with 125 additions and 316 deletions

View File

@ -9,6 +9,7 @@ This file is used to list changes made in each version of cookbook-openstack-obj
* Add keystone registration support
* Use Common bind endpoint
* Add swift.conf template
* Cleanup service templates
## 9.0.3
* Bugfix run_command exitstatus

View File

@ -97,10 +97,6 @@ default['openstack']['object-storage']['max_account_name_length'] = 256
# of a container name
default['openstack']['object-storage']['max_container_name_length'] = 256
# the release only has any effect on ubuntu, and must be
# a valid release on http://ubuntu-cloud.archive.canonical.com/ubuntu
default['openstack']['object-storage']['release'] = 'juno'
# Use the openstack-common cookbook databags with the
# following keys:
# secret tokens
@ -255,17 +251,44 @@ default['openstack']['object-storage']['disk_test_filter'] = [
# template overrides
#-------------------
# account-server
# Use an integer to override the number of pre-forked processes that will
# accept connections. Should default to the number of effective cpu
# cores in the system. It's worth noting that individual workers will
# use many eventlet co-routines to service multiple concurrent requests.
default['openstack']['object-storage']['proxy-server']['workers'] = 'auto'
# accept connections. Zero means no fork. Should default to the number of
# effective cpu cores in the system. It's worth noting that individual
# workers will # use many eventlet co-routines to service multiple concurrent
# requests.
default['openstack']['object-storage']['account-server']['workers'] = 'auto'
default['openstack']['object-storage']['container-server']['workers'] = 'auto'
default['openstack']['object-storage']['object-server']['workers'] = 'auto'
# Maximum number of clients one worker can process simultaneously (it will
# actually accept(2) N + 1). Setting this to one (1) will only handle one request
# at a time, without accepting another request concurrently. The default is 1024.
default['openstack']['object-storage']['account-server']['max_clients'] = 1024
# Parent directory or where devices are mounted. Default is /srv/node
default['openstack']['object-storage']['account-server']['devices'] = '/srv/node'
# Whether or not check if the devices are mounted to prevent accidentally writing to
# the root device. The default is set to true.
default['openstack']['object-storage']['account-server']['mount_check'] = true
# proxy-server
# Use an integer to override the number of pre-forked processes that will
# accept connections. Zero means no fork. Should default to the number of
# effective cpu cores in the system. It's worth noting that individual
# workers will # use many eventlet co-routines to service multiple concurrent
# requests.
default['openstack']['object-storage']['proxy-server']['workers'] = 'auto'
# Maximum number of clients one worker can process simultaneously (it will
# actually accept(2) N + 1). Setting this to one (1) will only handle one request
# at a time, without accepting another request concurrently. The default is 1024.
default['openstack']['object-storage']['proxy-server']['max_clients'] = 1024
# Request timeout to external services. The default is 10 seconds.
default['openstack']['object-storage']['proxy-server']['node_timeout'] = 10
# enable or disable formpost
default['openstack']['object-storage']['formpost']['enabled'] = false
@ -334,6 +357,25 @@ default['openstack']['object-storage']['staticweb']['log_headers'] = 'False'
# container-server
# Use an integer to override the number of pre-forked processes that will
# accept connections. Zero means no fork. Should default to the number of
# effective cpu cores in the system. It's worth noting that individual
# workers will # use many eventlet co-routines to service multiple concurrent
# requests.
default['openstack']['object-storage']['container-server']['workers'] = 'auto'
# Maximum number of clients one worker can process simultaneously (it will
# actually accept(2) N + 1). Setting this to one (1) will only handle one request
# at a time, without accepting another request concurrently. The default is 1024.
default['openstack']['object-storage']['container-server']['max_clients'] = 1024
# Parent directory or where devices are mounted. Default is /srv/node
default['openstack']['object-storage']['container-server']['devices'] = '/srv/node'
# Whether or not check if the devices are mounted to prevent accidentally writing to
# the root device. The default is set to true.
default['openstack']['object-storage']['container-server']['mount_check'] = true
# Override this with an allowed list of your various swift clusters if you wish
# to enable container sync for your end-users between clusters. This should
# be an array of fqdn hostnames for the cluster end-points that your end-users
@ -354,6 +396,34 @@ default['openstack']['object-storage']['container-server']['container-sync']['in
# Maximum amount of time to spend syncing each container per pass (in seconds)
default['openstack']['object-storage']['container-server']['container-sync']['container_time'] = 60
# object-server
# Use an integer to override the number of pre-forked processes that will
# accept connections. Zero means no fork. Should default to the number of
# effective cpu cores in the system. It's worth noting that individual
# workers will # use many eventlet co-routines to service multiple concurrent
# requests.
default['openstack']['object-storage']['object-server']['workers'] = 'auto'
# Maximum number of clients one worker can process simultaneously (it will
# actually accept(2) N + 1). Setting this to one (1) will only handle one request
# at a time, without accepting another request concurrently. The default is 1024.
default['openstack']['object-storage']['object-server']['max_clients'] = 1024
# Parent directory or where devices are mounted. Default is /srv/node
default['openstack']['object-storage']['object-server']['devices'] = '/srv/node'
# Whether or not check if the devices are mounted to prevent accidentally writing to
# the root device. The default is set to true.
default['openstack']['object-storage']['object-server']['mount_check'] = true
# Time in seconds to wait between replication passes. The default is 30.
default['openstack']['object-storage']['object-server']['replicator']['run_pause'] = 30
# Time elapsed in seconds before an object can be reclaimed. The default is
# 604800 seconds.
default['openstack']['object-storage']['object-server']['replicator']['reclaim_age'] = 604800
#------------------
# swauth source
# -----------------

View File

@ -54,6 +54,8 @@ describe 'openstack-object-storage::account-server' do
end
it_behaves_like 'a common swift server configurator', 'account', '0.0.0.0', '6002'
it_behaves_like 'some common swift server values'
end
end
end

View File

@ -99,6 +99,8 @@ describe 'openstack-object-storage::container-server' do
describe 'template contents' do
it_behaves_like 'a common swift server configurator', 'container', '0.0.0.0', '6001'
it_behaves_like 'some common swift server values'
it 'sets allowed_sync_hosts when present' do
node.set['openstack']['object-storage']['container-server']['allowed_sync_hosts'] = %w(host1 host2)
expect(chef_run).to render_file(file.name).with_content(/^allowed_sync_hosts = host1,host2$/)

View File

@ -56,6 +56,17 @@ describe 'openstack-object-storage::object-server' do
end
it_behaves_like 'a common swift server configurator', 'object', '0.0.0.0', '6000'
it_behaves_like 'some common swift server values'
describe 'default replicator values' do
{ 'run_pause' => '30',
'reclaim_age' => '604800' }.each do |k, v|
it "sets the default for #{k}" do
expect(chef_run).to render_config_file(file.name).with_section_content('object-replicator', /^#{Regexp.quote("#{k} = #{v}")}$/)
end
end
end
end
end
end

View File

@ -116,16 +116,17 @@ shared_examples 'a common swift server configurator' do |server_type, bind_ip, b
'bind_port' => "#{bind_port}",
'log_statsd_default_sample_rate' => '1',
'log_statsd_metric_prefix' => 'openstack.swift.Fauxhai',
'max_clients' => '1024',
'workers' => 'auto' }.each do |k, v|
it "sets the default for #{k}" do
expect(chef_run).to render_file(file.name).with_content(/^#{Regexp.quote("#{k} = #{v}")}$/)
expect(chef_run).to render_config_file(file.name).with_section_content('DEFAULT', /^#{Regexp.quote("#{k} = #{v}")}$/)
end
end
%w(ip port).each do |attr|
it "sets the bind_#{attr} attr" do
node.set['openstack']['object-storage']['network']["#{server_type}-bind-#{attr}"] = "#{attr}_value"
expect(chef_run).to render_file(file.name).with_content(/^bind_#{attr} = #{attr}_value$/)
expect(chef_run).to render_config_file(file.name).with_section_content('DEFAULT', /^bind_#{attr} = #{attr}_value$/)
end
end
@ -136,19 +137,19 @@ shared_examples 'a common swift server configurator' do |server_type, bind_ip, b
it 'sets the log_statsd_default_sample_rate attribute' do
node.set['openstack']['object-storage']['statistics']['sample_rate'] = 'sample_rate_value'
expect(chef_run).to render_file(file.name).with_content(/^log_statsd_default_sample_rate = sample_rate_value$/)
expect(chef_run).to render_config_file(file.name).with_section_content('DEFAULT', /^log_statsd_default_sample_rate = sample_rate_value$/)
end
it 'sets the log_statsd_metric_prefix attribute' do
node.set['openstack']['object-storage']['statistics']['statsd_prefix'] = 'statsd_prefix_value'
chef_run.node.automatic['hostname'] = 'myhostname'
expect(chef_run).to render_file(file.name).with_content(/^log_statsd_metric_prefix = statsd_prefix_value\.myhostname$/)
expect(chef_run).to render_config_file(file.name).with_section_content('DEFAULT', /^log_statsd_metric_prefix = statsd_prefix_value\.myhostname$/)
end
end
it 'does not show statistic related attributed when disabled' do
node.set['openstack']['object-storage']['statistics']['enabled'] = false
expect(chef_run).not_to render_file(file.name).with_content(/^log_statsd_host = localhost$/)
expect(chef_run).not_to render_config_file(file.name).with_section_content('DEFAULT', /^log_statsd_host = localhost$/)
end
end
@ -184,3 +185,12 @@ shared_examples 'custom template banner displayer' do
expect(chef_run).to render_file(file_name).with_content(/^custom_template_banner_value$/)
end
end
shared_examples 'some common swift server values' do
{ 'devices' => '/srv/node',
'mount_check' => 'true' }.each do |k, v|
it "sets the default for #{k}" do
expect(chef_run).to render_config_file(file.name).with_section_content('DEFAULT', /^#{Regexp.quote("#{k} = #{v}")}$/)
end
end
end

View File

@ -1,22 +1,12 @@
<%= node['openstack']['object-storage']['custom_template_banner'] %>
[DEFAULT]
# bind_ip = 0.0.0.0
# bind_port = 6002
# backlog = 4096
# workers = 1
# user = swift
# swift_dir = /etc/swift
# devices = /srv/node
# mount_check = true
# You can specify default log routing here if you want:
# log_name = swift
# log_facility = LOG_LOCAL0
# log_level = INFO
#####
bind_ip = <%= @bind_ip %>
bind_port = <%= @bind_port %>
workers = <%= node['openstack']['object-storage']['account-server']['workers'] %>
max_clients = <%= node['openstack']['object-storage']['account-server']['max_clients'] %>
devices = <%= node['openstack']['object-storage']['account-server']['devices'] %>
mount_check = <%= node['openstack']['object-storage']['account-server']['mount_check'] %>
<% if node['openstack']['object-storage']['statistics']['enabled'] -%>
log_statsd_host = localhost
log_statsd_port = 8125
@ -29,52 +19,9 @@ pipeline = account-server
[app:account-server]
use = egg:swift#account
# You can override the default log routing for this app here:
# set log_name = account-server
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set log_requests = True
[account-replicator]
# You can override the default log routing for this app here (don't use set!):
# log_name = account-replicator
# log_facility = LOG_LOCAL0
# log_level = INFO
# vm_test_mode = no
# log_facility = LOG_LOCAL0
# log_level = INFO
# per_diff = 1000
# max_diffs = 100
# concurrency = 8
# interval = 30
# How long without an error before a node's error count is reset. This will
# also be how long before a node is reenabled after suppression is triggered.
# error_suppression_interval = 60
# How many errors can accumulate before a node is temporarily ignored.
# error_suppression_limit = 10
# node_timeout = 10
# conn_timeout = 0.5
# The replicator also performs reclamation
# reclaim_age = 86400
[account-auditor]
# You can override the default log routing for this app here (don't use set!):
# log_name = account-auditor
# log_facility = LOG_LOCAL0
# log_level = INFO
# Will audit, at most, 1 account per device per interval
# interval = 1800
# log_facility = LOG_LOCAL0
# log_level = INFO
[account-reaper]
# You can override the default log routing for this app here (don't use set!):
# log_name = account-reaper
# log_facility = LOG_LOCAL0
# log_level = INFO
# concurrency = 25
# interval = 3600
# node_timeout = 10
# conn_timeout = 0.5
# log_facility = LOG_LOCAL0
# log_level = INFO

View File

@ -4,6 +4,9 @@
bind_ip = <%= @bind_ip %>
bind_port = <%= @bind_port %>
workers = <%= node['openstack']['object-storage']['container-server']['workers'] %>
max_clients = <%= node['openstack']['object-storage']['container-server']['max_clients'] %>
devices = <%= node['openstack']['object-storage']['container-server']['devices'] %>
mount_check = <%= node['openstack']['object-storage']['container-server']['mount_check'] %>
<% if node['openstack']['object-storage']['statistics']['enabled'] -%>
log_statsd_host = localhost
log_statsd_port = 8125
@ -20,50 +23,12 @@ pipeline = container-server
[app:container-server]
use = egg:swift#container
# You can override the default log routing for this app here:
# set log_name = container-server
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set log_requests = True
# node_timeout = 3
# conn_timeout = 0.5
[container-replicator]
# You can override the default log routing for this app here (don't use set!):
# log_name = container-replicator
# log_facility = LOG_LOCAL0
# log_level = INFO
# vm_test_mode = no
# per_diff = 1000
# max_diffs = 100
# concurrency = 8
# interval = 30
# node_timeout = 10
# conn_timeout = 0.5
# The replicator also performs reclamation
# reclaim_age = 604800
[container-updater]
# You can override the default log routing for this app here (don't use set!):
# log_name = container-updater
# log_facility = LOG_LOCAL0
# log_level = INFO
# interval = 300
# concurrency = 4
# node_timeout = 3
# conn_timeout = 0.5
# slowdown will sleep that amount between containers
# slowdown = 0.01
# Seconds to suppress updating an account that has generated an error
# account_suppression_time = 60
[container-auditor]
# You can override the default log routing for this app here (don't use set!):
# log_name = container-auditor
# log_facility = LOG_LOCAL0
# log_level = INFO
# Will audit, at most, 1 container per device per interval
# interval = 1800
[container-sync]
# You can override the default log routing for this app here (don't use set!):

View File

@ -4,6 +4,9 @@
bind_ip = <%= @bind_ip %>
bind_port = <%= @bind_port %>
workers = <%= node['openstack']['object-storage']['object-server']['workers'] %>
max_clients = <%= node['openstack']['object-storage']['object-server']['max_clients'] %>
devices = <%= node['openstack']['object-storage']['object-server']['devices'] %>
mount_check = <%= node['openstack']['object-storage']['object-server']['mount_check'] %>
<% if node['openstack']['object-storage']['statistics']['enabled'] -%>
log_statsd_host = localhost
log_statsd_port = 8125
@ -16,77 +19,15 @@ pipeline = recon object-server
[app:object-server]
use = egg:swift#object
# You can override the default log routing for this app here:
# set log_name = object-server
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set log_requests = True
# node_timeout = 3
# conn_timeout = 0.5
# network_chunk_size = 65536
# disk_chunk_size = 65536
# max_upload_time = 86400
# slow = 1
# on PUTs, sync data every n MB
# mb_per_sync = 512
# Comma separated list of headers that can be set in metadata on an object.
# This list is in addition to X-Object-Meta-* headers and cannot include
# Content-Type, etag, Content-Length, or deleted
# allowed_headers = Content-Disposition, Content-Encoding, X-Delete-At, X-Object-Manifest
[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift
[object-replicator]
# You can override the default log routing for this app here (don't use set!):
# log_name = object-replicator
# log_facility = LOG_LOCAL0
# log_level = INFO
# vm_test_mode = no
# daemonize = on
# run_pause = 30
# concurrency = 1
# stats_interval = 300
# max duration of a partition rsync
# rsync_timeout = 900
# passed to rsync for io op timeout
# rsync_io_timeout = 30
# max duration of an http request
# http_timeout = 60
# attempts to kill all workers if nothing replicates for lockup_timeout seconds
# lockup_timeout = 1800
# The replicator also performs reclamation
# reclaim_age = 604800
# enable logging of replication stats for recon
# recon_enable = no
# recon_cache_path = /var/cache/swift
#####
recon_enable = yes
recon_cache_path = /var/cache/swift
concurrency = 2
run_pause = <%= node['openstack']['object-storage']['object-server']['replicator']['run_pause'] %>
reclaim_age = <%= node['openstack']['object-storage']['object-server']['replicator']['reclaim_age'] %>
[object-updater]
# You can override the default log routing for this app here (don't use set!):
# log_name = object-updater
# log_facility = LOG_LOCAL0
# log_level = INFO
# interval = 300
# concurrency = 1
# node_timeout = 10
# conn_timeout = 0.5
# slowdown will sleep that amount between objects
# slowdown = 0.01
concurrency = 2
[object-auditor]
# You can override the default log routing for this app here (don't use set!):
# log_name = object-auditor
# log_facility = LOG_LOCAL0
# log_level = INFO
# files_per_second = 20
# bytes_per_second = 10000000
# log_time = 3600
# zero_byte_files_per_second = 50

View File

@ -37,18 +37,12 @@ else
end
-%>
# This file is managed by chef. Do not edit it.
#
# Cluster info:
# Auth mode: <%= node['openstack']['object-storage']['authmode'] %>
# Management server: <%= node['roles'].include?(node['openstack']['object-storage']['management_server_chef_role']) %>
# Account management enabled: <%= account_management %>
# Auth pipeline: <%= pipeline %>
[DEFAULT]
bind_ip = <%= @bind_host %>
bind_port = <%= @bind_port %>
workers = <%= node['openstack']['object-storage']['proxy-server']['workers'] %>
max_clients = <%= node['openstack']['object-storage']['proxy-server']['max_clients'] %>
<% if node['openstack']['object-storage']['statistics']['enabled'] -%>
log_statsd_host = localhost
log_statsd_port = 8125
@ -56,45 +50,13 @@ log_statsd_default_sample_rate = <%= node['openstack']['object-storage']['statis
log_statsd_metric_prefix = <%= node['openstack']['object-storage']['statistics']['statsd_prefix'] %>.<%= node['hostname'] %>
<% end %>
[pipeline:main]
pipeline = catch_errors healthcheck cache ratelimit <%= pipeline.join(" ") %> proxy-logging proxy-server
[app:proxy-server]
use = egg:swift#proxy
# You can override the default log routing for this app here:
# set log_name = proxy-server
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set access_log_name = proxy-server
# set access_log_facility = LOG_LOCAL0
# set access_log_level = INFO
# set log_headers = False
# recheck_account_existence = 60
# recheck_container_existence = 60
# object_chunk_size = 8192
# client_chunk_size = 8192
# node_timeout = 10
# client_timeout = 60
# conn_timeout = 0.5
# How long without an error before a node's error count is reset. This will
# also be how long before a node is reenabled after suppression is triggered.
# error_suppression_interval = 60
# How many errors can accumulate before a node is temporarily ignored.
# error_suppression_limit = 10
# If set to 'true' any authorized user may create and delete accounts; if
# 'false' no one, even authorized, can.
# allow_account_management = false
# Set object_post_as_copy = false to turn on fast posts where only the metadata
# changes are stored anew and the original data file is kept in place. This
# makes for quicker posts; but since the container metadata isn't updated in
# this mode, features like container sync won't be able to sync posts.
# object_post_as_copy = true
# If set to 'true' authorized accounts that do not yet exist within the Swift
# cluster will be automatically created.
# account_autocreate = false
allow_account_management = <%= account_management %>
node_timeout = <%= node['openstack']['object-storage']['proxy-server']['node_timeout'] %>
<% if pipeline.include?("keystoneauth") -%>
account_autocreate = true
<% end %>
@ -102,9 +64,6 @@ account_autocreate = true
<% if pipeline.include?("swauth") -%>
[filter:swauth]
use = egg:swauth#swauth
# set log_name = swauth
# super_admin_key = <secret_key>
######
super_admin_key = <%= @authkey %>
default_swift_cluster = local#<%= node['openstack']['object-storage']['swift_url'] %>#<%= node['openstack']['object-storage']['swauth_url'] %>
<% if pipeline.include?("tempurl") -%>
@ -117,62 +76,16 @@ allowed_sync_hosts = <%= node['openstack']['object-storage']['container-server']
[filter:healthcheck]
use = egg:swift#healthcheck
# You can override the default log routing for this filter here:
# set log_name = healthcheck
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set log_headers = False
[filter:cache]
use = egg:swift#memcache
# You can override the default log routing for this filter here:
# set log_name = cache
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set log_headers = False
# Default for memcache_servers is to try to read the property from
# memcache.conf (see memcache.conf-sample) or lacking that file, it will
# default to the value below. You can specify multiple servers separated with
# commas, as in: 10.1.2.3:11211,10.1.2.4:11211
# memcache_servers = 127.0.0.1:11211
#####
memcache_servers = <%= @memcache_servers.join(",") %>
[filter:ratelimit]
use = egg:swift#ratelimit
# You can override the default log routing for this filter here:
# set log_name = ratelimit
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set log_headers = False
# clock_accuracy should represent how accurate the proxy servers' system clocks
# are with each other. 1000 means that all the proxies' clock are accurate to
# each other within 1 millisecond. No ratelimit should be higher than the
# clock accuracy.
# clock_accuracy = 1000
# max_sleep_time_seconds = 60
# log_sleep_time_seconds of 0 means disabled
# log_sleep_time_seconds = 0
# allows for slow rates (e.g. running up to 5 sec's behind) to catch up.
# rate_buffer_seconds = 5
# account_ratelimit of 0 means disabled
# account_ratelimit = 0
# these are comma separated lists of account names
# account_whitelist = a,b
# account_blacklist = c,d
# with container_limit_x = r
# for containers of size x limit requests per second to r. The container
# rate will be linearly interpolated from the values given. With the values
# below, a container of size 5 will get a rate of 75.
# container_ratelimit_0 = 100
# container_ratelimit_10 = 50
# container_ratelimit_50 = 20
[filter:domain_remap]
use = egg:swift#domain_remap
# You can override the default log routing for this filter here:
set log_name = <%= node['openstack']['object-storage']['domain_remap']['log_name'] %>
set log_facility = <%= node['openstack']['object-storage']['domain_remap']['log_facility'] %>
set log_level = <%= node['openstack']['object-storage']['domain_remap']['log_level'] %>
@ -183,29 +96,13 @@ reseller_prefixes = <%= node['openstack']['object-storage']['domain_remap']['res
[filter:catch_errors]
use = egg:swift#catch_errors
# You can override the default log routing for this filter here:
# set log_name = catch_errors
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set log_headers = False
[filter:cname_lookup]
# Note: this middleware requires python-dnspython
use = egg:swift#cname_lookup
# You can override the default log routing for this filter here:
# set log_name = cname_lookup
# set log_facility = LOG_LOCAL0
# set log_level = INFO
# set log_headers = False
# storage_domain = example.com
# lookup_depth = 1
# Note: Put staticweb just after your auth filter(s) in the pipeline
[filter:staticweb]
use = egg:swift#staticweb
# Seconds to cache container x-container-meta-web-* header values.
cache_timeout = <%= node['openstack']['object-storage']['staticweb']['cache_timeout'] %>
# You can override the default log routing for this filter here:
set log_name = <%= node['openstack']['object-storage']['staticweb']['log_name'] %>
set log_facility = <%= node['openstack']['object-storage']['staticweb']['log_facility'] %>
set log_level = <%= node['openstack']['object-storage']['staticweb']['log_level'] %>
@ -214,56 +111,19 @@ set access_log_facility = <%= node['openstack']['object-storage']['staticweb']['
set access_log_level = <%= node['openstack']['object-storage']['staticweb']['access_log_level'] %>
set log_headers = <%= node['openstack']['object-storage']['staticweb']['log_headers'] %>
# Note: Put tempurl just before your auth filter(s) in the pipeline
[filter:tempurl]
use = egg:swift#tempurl
#
# The headers to remove from incoming requests. Simply a whitespace delimited
# list of header names and names can optionally end with '*' to indicate a
# prefix match. incoming_allow_headers is a list of exceptions to these
# removals.
incoming_remove_headers = <%= node['openstack']['object-storage']['tempurl']['incoming_remove_headers'] %>
#
# The headers allowed as exceptions to incoming_remove_headers. Simply a
# whitespace delimited list of header names and names can optionally end with
# '*' to indicate a prefix match.
incoming_allow_headers = <%= node['openstack']['object-storage']['tempurl']['incoming_allow_headers'] %>
#
# The headers to remove from outgoing responses. Simply a whitespace delimited
# list of header names and names can optionally end with '*' to indicate a
# prefix match. outgoing_allow_headers is a list of exceptions to these
# removals.
outgoing_remove_headers = <%= node['openstack']['object-storage']['tempurl']['outgoing_remove_headers'] %>
#
# The headers allowed as exceptions to outgoing_remove_headers. Simply a
# whitespace delimited list of header names and names can optionally end with
# '*' to indicate a prefix match.
outgoing_allow_headers = <%= node['openstack']['object-storage']['tempurl']['outgoing_allow_headers'] %>
# Note: Put formpost just before your auth filter(s) in the pipeline
[filter:formpost]
use = egg:swift#formpost
[filter:keystoneauth]
operator_roles = Member,admin
use = egg:swift#keystoneauth
operator_roles = Member,admin
[filter:proxy-logging]
use = egg:swift#proxy_logging
# access_log_name = proxy
# access_log_facility = LOG_LOCAL0
# access_log_level = INFO
# access_log_address = /dev/log
# If set, access_log_udp_host will override access_log_address
# access_log_udp_host =
# access_log_udp_port = 514
# You can use log_statsd_* from [DEFAULT] or override them here:
# access_log_statsd_host = localhost
# access_log_statsd_port = 8125
# access_log_statsd_default_sample_rate = <%= node['openstack']['object-storage']['statistics']['sample_rate'] %>
# access_log_statsd_metric_prefix =
# access_log_headers = False
# What HTTP methods are allowed for StatsD logging (comma-sep); request methods
# not in this list will have "BAD_METHOD" for the <verb> portion of the metric.
# log_statsd_valid_http_methods = GET,HEAD,POST,PUT,DELETE,COPY