##// END OF EJS Templates
svn: Add settings to default configuration files.
Martin Bornhold -
r562:00d40be4 default
parent child Browse files
Show More
@@ -1,627 +1,645 b''
1 ################################################################################
1 ################################################################################
2 ################################################################################
2 ################################################################################
3 # RhodeCode Enterprise - configuration file #
3 # RhodeCode Enterprise - configuration file #
4 # Built-in functions and variables #
4 # Built-in functions and variables #
5 # The %(here)s variable will be replaced with the parent directory of this file#
5 # The %(here)s variable will be replaced with the parent directory of this file#
6 # #
6 # #
7 ################################################################################
7 ################################################################################
8
8
9 [DEFAULT]
9 [DEFAULT]
10 debug = true
10 debug = true
11 ################################################################################
11 ################################################################################
12 ## Uncomment and replace with the email address which should receive ##
12 ## Uncomment and replace with the email address which should receive ##
13 ## any error reports after an application crash ##
13 ## any error reports after an application crash ##
14 ## Additionally these settings will be used by the RhodeCode mailing system ##
14 ## Additionally these settings will be used by the RhodeCode mailing system ##
15 ################################################################################
15 ################################################################################
16 #email_to = admin@localhost
16 #email_to = admin@localhost
17 #error_email_from = paste_error@localhost
17 #error_email_from = paste_error@localhost
18 #app_email_from = rhodecode-noreply@localhost
18 #app_email_from = rhodecode-noreply@localhost
19 #error_message =
19 #error_message =
20 #email_prefix = [RhodeCode]
20 #email_prefix = [RhodeCode]
21
21
22 #smtp_server = mail.server.com
22 #smtp_server = mail.server.com
23 #smtp_username =
23 #smtp_username =
24 #smtp_password =
24 #smtp_password =
25 #smtp_port =
25 #smtp_port =
26 #smtp_use_tls = false
26 #smtp_use_tls = false
27 #smtp_use_ssl = true
27 #smtp_use_ssl = true
28 ## Specify available auth parameters here (e.g. LOGIN PLAIN CRAM-MD5, etc.)
28 ## Specify available auth parameters here (e.g. LOGIN PLAIN CRAM-MD5, etc.)
29 #smtp_auth =
29 #smtp_auth =
30
30
31 [server:main]
31 [server:main]
32 ## COMMON ##
32 ## COMMON ##
33 host = 127.0.0.1
33 host = 127.0.0.1
34 port = 5000
34 port = 5000
35
35
36 ##################################
36 ##################################
37 ## WAITRESS WSGI SERVER ##
37 ## WAITRESS WSGI SERVER ##
38 ## Recommended for Development ##
38 ## Recommended for Development ##
39 ##################################
39 ##################################
40 use = egg:waitress#main
40 use = egg:waitress#main
41 ## number of worker threads
41 ## number of worker threads
42 threads = 5
42 threads = 5
43 ## MAX BODY SIZE 100GB
43 ## MAX BODY SIZE 100GB
44 max_request_body_size = 107374182400
44 max_request_body_size = 107374182400
45 ## Use poll instead of select, fixes file descriptors limits problems.
45 ## Use poll instead of select, fixes file descriptors limits problems.
46 ## May not work on old windows systems.
46 ## May not work on old windows systems.
47 asyncore_use_poll = true
47 asyncore_use_poll = true
48
48
49
49
50 ##########################
50 ##########################
51 ## GUNICORN WSGI SERVER ##
51 ## GUNICORN WSGI SERVER ##
52 ##########################
52 ##########################
53 ## run with gunicorn --log-config <inifile.ini> --paste <inifile.ini>
53 ## run with gunicorn --log-config <inifile.ini> --paste <inifile.ini>
54 #use = egg:gunicorn#main
54 #use = egg:gunicorn#main
55 ## Sets the number of process workers. You must set `instance_id = *`
55 ## Sets the number of process workers. You must set `instance_id = *`
56 ## when this option is set to more than one worker, recommended
56 ## when this option is set to more than one worker, recommended
57 ## value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers
57 ## value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers
58 ## The `instance_id = *` must be set in the [app:main] section below
58 ## The `instance_id = *` must be set in the [app:main] section below
59 #workers = 2
59 #workers = 2
60 ## number of threads for each of the worker, must be set to 1 for gevent
60 ## number of threads for each of the worker, must be set to 1 for gevent
61 ## generally recommened to be at 1
61 ## generally recommened to be at 1
62 #threads = 1
62 #threads = 1
63 ## process name
63 ## process name
64 #proc_name = rhodecode
64 #proc_name = rhodecode
65 ## type of worker class, one of sync, gevent
65 ## type of worker class, one of sync, gevent
66 ## recommended for bigger setup is using of of other than sync one
66 ## recommended for bigger setup is using of of other than sync one
67 #worker_class = sync
67 #worker_class = sync
68 ## The maximum number of simultaneous clients. Valid only for Gevent
68 ## The maximum number of simultaneous clients. Valid only for Gevent
69 #worker_connections = 10
69 #worker_connections = 10
70 ## max number of requests that worker will handle before being gracefully
70 ## max number of requests that worker will handle before being gracefully
71 ## restarted, could prevent memory leaks
71 ## restarted, could prevent memory leaks
72 #max_requests = 1000
72 #max_requests = 1000
73 #max_requests_jitter = 30
73 #max_requests_jitter = 30
74 ## amount of time a worker can spend with handling a request before it
74 ## amount of time a worker can spend with handling a request before it
75 ## gets killed and restarted. Set to 6hrs
75 ## gets killed and restarted. Set to 6hrs
76 #timeout = 21600
76 #timeout = 21600
77
77
78
78
79 ## prefix middleware for RhodeCode, disables force_https flag.
79 ## prefix middleware for RhodeCode, disables force_https flag.
80 ## allows to set RhodeCode under a prefix in server.
80 ## allows to set RhodeCode under a prefix in server.
81 ## eg https://server.com/<prefix>. Enable `filter-with =` option below as well.
81 ## eg https://server.com/<prefix>. Enable `filter-with =` option below as well.
82 #[filter:proxy-prefix]
82 #[filter:proxy-prefix]
83 #use = egg:PasteDeploy#prefix
83 #use = egg:PasteDeploy#prefix
84 #prefix = /<your-prefix>
84 #prefix = /<your-prefix>
85
85
86 [app:main]
86 [app:main]
87 use = egg:rhodecode-enterprise-ce
87 use = egg:rhodecode-enterprise-ce
88 ## enable proxy prefix middleware, defined below
88 ## enable proxy prefix middleware, defined below
89 #filter-with = proxy-prefix
89 #filter-with = proxy-prefix
90
90
91 # During development the we want to have the debug toolbar enabled
91 # During development the we want to have the debug toolbar enabled
92 pyramid.includes =
92 pyramid.includes =
93 pyramid_debugtoolbar
93 pyramid_debugtoolbar
94 rhodecode.utils.debugtoolbar
94 rhodecode.utils.debugtoolbar
95 rhodecode.lib.middleware.request_wrapper
95 rhodecode.lib.middleware.request_wrapper
96
96
97 pyramid.reload_templates = true
97 pyramid.reload_templates = true
98
98
99 debugtoolbar.hosts = 0.0.0.0/0
99 debugtoolbar.hosts = 0.0.0.0/0
100 debugtoolbar.exclude_prefixes =
100 debugtoolbar.exclude_prefixes =
101 /css
101 /css
102 /fonts
102 /fonts
103 /images
103 /images
104 /js
104 /js
105
105
106 ## RHODECODE PLUGINS ##
106 ## RHODECODE PLUGINS ##
107 rhodecode.includes =
107 rhodecode.includes =
108 rhodecode.api
108 rhodecode.api
109
109
110
110
111 # api prefix url
111 # api prefix url
112 rhodecode.api.url = /_admin/api
112 rhodecode.api.url = /_admin/api
113
113
114
114
115 ## END RHODECODE PLUGINS ##
115 ## END RHODECODE PLUGINS ##
116
116
117 ## encryption key used to encrypt social plugin tokens,
117 ## encryption key used to encrypt social plugin tokens,
118 ## remote_urls with credentials etc, if not set it defaults to
118 ## remote_urls with credentials etc, if not set it defaults to
119 ## `beaker.session.secret`
119 ## `beaker.session.secret`
120 #rhodecode.encrypted_values.secret =
120 #rhodecode.encrypted_values.secret =
121
121
122 ## decryption strict mode (enabled by default). It controls if decryption raises
122 ## decryption strict mode (enabled by default). It controls if decryption raises
123 ## `SignatureVerificationError` in case of wrong key, or damaged encryption data.
123 ## `SignatureVerificationError` in case of wrong key, or damaged encryption data.
124 #rhodecode.encrypted_values.strict = false
124 #rhodecode.encrypted_values.strict = false
125
125
126 full_stack = true
126 full_stack = true
127
127
128 ## return gzipped responses from Rhodecode (static files/application)
128 ## return gzipped responses from Rhodecode (static files/application)
129 gzip_responses = true
129 gzip_responses = true
130
130
131 ## autogenerate javascript routes file on startup
131 ## autogenerate javascript routes file on startup
132 generate_js_files = false
132 generate_js_files = false
133
133
134 ## Optional Languages
134 ## Optional Languages
135 ## en(default), be, de, es, fr, it, ja, pl, pt, ru, zh
135 ## en(default), be, de, es, fr, it, ja, pl, pt, ru, zh
136 lang = en
136 lang = en
137
137
138 ## perform a full repository scan on each server start, this should be
138 ## perform a full repository scan on each server start, this should be
139 ## set to false after first startup, to allow faster server restarts.
139 ## set to false after first startup, to allow faster server restarts.
140 startup.import_repos = false
140 startup.import_repos = false
141
141
142 ## Uncomment and set this path to use archive download cache.
142 ## Uncomment and set this path to use archive download cache.
143 ## Once enabled, generated archives will be cached at this location
143 ## Once enabled, generated archives will be cached at this location
144 ## and served from the cache during subsequent requests for the same archive of
144 ## and served from the cache during subsequent requests for the same archive of
145 ## the repository.
145 ## the repository.
146 #archive_cache_dir = /tmp/tarballcache
146 #archive_cache_dir = /tmp/tarballcache
147
147
148 ## change this to unique ID for security
148 ## change this to unique ID for security
149 app_instance_uuid = rc-production
149 app_instance_uuid = rc-production
150
150
151 ## cut off limit for large diffs (size in bytes)
151 ## cut off limit for large diffs (size in bytes)
152 cut_off_limit_diff = 1024000
152 cut_off_limit_diff = 1024000
153 cut_off_limit_file = 256000
153 cut_off_limit_file = 256000
154
154
155 ## use cache version of scm repo everywhere
155 ## use cache version of scm repo everywhere
156 vcs_full_cache = true
156 vcs_full_cache = true
157
157
158 ## force https in RhodeCode, fixes https redirects, assumes it's always https
158 ## force https in RhodeCode, fixes https redirects, assumes it's always https
159 ## Normally this is controlled by proper http flags sent from http server
159 ## Normally this is controlled by proper http flags sent from http server
160 force_https = false
160 force_https = false
161
161
162 ## use Strict-Transport-Security headers
162 ## use Strict-Transport-Security headers
163 use_htsts = false
163 use_htsts = false
164
164
165 ## number of commits stats will parse on each iteration
165 ## number of commits stats will parse on each iteration
166 commit_parse_limit = 25
166 commit_parse_limit = 25
167
167
168 ## git rev filter option, --all is the default filter, if you need to
168 ## git rev filter option, --all is the default filter, if you need to
169 ## hide all refs in changelog switch this to --branches --tags
169 ## hide all refs in changelog switch this to --branches --tags
170 git_rev_filter = --branches --tags
170 git_rev_filter = --branches --tags
171
171
172 # Set to true if your repos are exposed using the dumb protocol
172 # Set to true if your repos are exposed using the dumb protocol
173 git_update_server_info = false
173 git_update_server_info = false
174
174
175 ## RSS/ATOM feed options
175 ## RSS/ATOM feed options
176 rss_cut_off_limit = 256000
176 rss_cut_off_limit = 256000
177 rss_items_per_page = 10
177 rss_items_per_page = 10
178 rss_include_diff = false
178 rss_include_diff = false
179
179
180 ## gist URL alias, used to create nicer urls for gist. This should be an
180 ## gist URL alias, used to create nicer urls for gist. This should be an
181 ## url that does rewrites to _admin/gists/<gistid>.
181 ## url that does rewrites to _admin/gists/<gistid>.
182 ## example: http://gist.rhodecode.org/{gistid}. Empty means use the internal
182 ## example: http://gist.rhodecode.org/{gistid}. Empty means use the internal
183 ## RhodeCode url, ie. http[s]://rhodecode.server/_admin/gists/<gistid>
183 ## RhodeCode url, ie. http[s]://rhodecode.server/_admin/gists/<gistid>
184 gist_alias_url =
184 gist_alias_url =
185
185
186 ## List of controllers (using glob pattern syntax) that AUTH TOKENS could be
186 ## List of controllers (using glob pattern syntax) that AUTH TOKENS could be
187 ## used for access.
187 ## used for access.
188 ## Adding ?auth_token = <token> to the url authenticates this request as if it
188 ## Adding ?auth_token = <token> to the url authenticates this request as if it
189 ## came from the the logged in user who own this authentication token.
189 ## came from the the logged in user who own this authentication token.
190 ##
190 ##
191 ## Syntax is <ControllerClass>:<function_pattern>.
191 ## Syntax is <ControllerClass>:<function_pattern>.
192 ## To enable access to raw_files put `FilesController:raw`.
192 ## To enable access to raw_files put `FilesController:raw`.
193 ## To enable access to patches add `ChangesetController:changeset_patch`.
193 ## To enable access to patches add `ChangesetController:changeset_patch`.
194 ## The list should be "," separated and on a single line.
194 ## The list should be "," separated and on a single line.
195 ##
195 ##
196 ## Recommended controllers to enable:
196 ## Recommended controllers to enable:
197 # ChangesetController:changeset_patch,
197 # ChangesetController:changeset_patch,
198 # ChangesetController:changeset_raw,
198 # ChangesetController:changeset_raw,
199 # FilesController:raw,
199 # FilesController:raw,
200 # FilesController:archivefile,
200 # FilesController:archivefile,
201 # GistsController:*,
201 # GistsController:*,
202 api_access_controllers_whitelist =
202 api_access_controllers_whitelist =
203
203
204 ## default encoding used to convert from and to unicode
204 ## default encoding used to convert from and to unicode
205 ## can be also a comma separated list of encoding in case of mixed encodings
205 ## can be also a comma separated list of encoding in case of mixed encodings
206 default_encoding = UTF-8
206 default_encoding = UTF-8
207
207
208 ## instance-id prefix
208 ## instance-id prefix
209 ## a prefix key for this instance used for cache invalidation when running
209 ## a prefix key for this instance used for cache invalidation when running
210 ## multiple instances of rhodecode, make sure it's globally unique for
210 ## multiple instances of rhodecode, make sure it's globally unique for
211 ## all running rhodecode instances. Leave empty if you don't use it
211 ## all running rhodecode instances. Leave empty if you don't use it
212 instance_id =
212 instance_id =
213
213
214 ## Fallback authentication plugin. Set this to a plugin ID to force the usage
214 ## Fallback authentication plugin. Set this to a plugin ID to force the usage
215 ## of an authentication plugin also if it is disabled by it's settings.
215 ## of an authentication plugin also if it is disabled by it's settings.
216 ## This could be useful if you are unable to log in to the system due to broken
216 ## This could be useful if you are unable to log in to the system due to broken
217 ## authentication settings. Then you can enable e.g. the internal rhodecode auth
217 ## authentication settings. Then you can enable e.g. the internal rhodecode auth
218 ## module to log in again and fix the settings.
218 ## module to log in again and fix the settings.
219 ##
219 ##
220 ## Available builtin plugin IDs (hash is part of the ID):
220 ## Available builtin plugin IDs (hash is part of the ID):
221 ## egg:rhodecode-enterprise-ce#rhodecode
221 ## egg:rhodecode-enterprise-ce#rhodecode
222 ## egg:rhodecode-enterprise-ce#pam
222 ## egg:rhodecode-enterprise-ce#pam
223 ## egg:rhodecode-enterprise-ce#ldap
223 ## egg:rhodecode-enterprise-ce#ldap
224 ## egg:rhodecode-enterprise-ce#jasig_cas
224 ## egg:rhodecode-enterprise-ce#jasig_cas
225 ## egg:rhodecode-enterprise-ce#headers
225 ## egg:rhodecode-enterprise-ce#headers
226 ## egg:rhodecode-enterprise-ce#crowd
226 ## egg:rhodecode-enterprise-ce#crowd
227 #rhodecode.auth_plugin_fallback = egg:rhodecode-enterprise-ce#rhodecode
227 #rhodecode.auth_plugin_fallback = egg:rhodecode-enterprise-ce#rhodecode
228
228
229 ## alternative return HTTP header for failed authentication. Default HTTP
229 ## alternative return HTTP header for failed authentication. Default HTTP
230 ## response is 401 HTTPUnauthorized. Currently HG clients have troubles with
230 ## response is 401 HTTPUnauthorized. Currently HG clients have troubles with
231 ## handling that causing a series of failed authentication calls.
231 ## handling that causing a series of failed authentication calls.
232 ## Set this variable to 403 to return HTTPForbidden, or any other HTTP code
232 ## Set this variable to 403 to return HTTPForbidden, or any other HTTP code
233 ## This will be served instead of default 401 on bad authnetication
233 ## This will be served instead of default 401 on bad authnetication
234 auth_ret_code =
234 auth_ret_code =
235
235
236 ## use special detection method when serving auth_ret_code, instead of serving
236 ## use special detection method when serving auth_ret_code, instead of serving
237 ## ret_code directly, use 401 initially (Which triggers credentials prompt)
237 ## ret_code directly, use 401 initially (Which triggers credentials prompt)
238 ## and then serve auth_ret_code to clients
238 ## and then serve auth_ret_code to clients
239 auth_ret_code_detection = false
239 auth_ret_code_detection = false
240
240
241 ## locking return code. When repository is locked return this HTTP code. 2XX
241 ## locking return code. When repository is locked return this HTTP code. 2XX
242 ## codes don't break the transactions while 4XX codes do
242 ## codes don't break the transactions while 4XX codes do
243 lock_ret_code = 423
243 lock_ret_code = 423
244
244
245 ## allows to change the repository location in settings page
245 ## allows to change the repository location in settings page
246 allow_repo_location_change = true
246 allow_repo_location_change = true
247
247
248 ## allows to setup custom hooks in settings page
248 ## allows to setup custom hooks in settings page
249 allow_custom_hooks_settings = true
249 allow_custom_hooks_settings = true
250
250
251 ## generated license token, goto license page in RhodeCode settings to obtain
251 ## generated license token, goto license page in RhodeCode settings to obtain
252 ## new token
252 ## new token
253 license_token =
253 license_token =
254
254
255 ## supervisor connection uri, for managing supervisor and logs.
255 ## supervisor connection uri, for managing supervisor and logs.
256 supervisor.uri =
256 supervisor.uri =
257 ## supervisord group name/id we only want this RC instance to handle
257 ## supervisord group name/id we only want this RC instance to handle
258 supervisor.group_id = dev
258 supervisor.group_id = dev
259
259
260 ## Display extended labs settings
260 ## Display extended labs settings
261 labs_settings_active = true
261 labs_settings_active = true
262
262
263 ####################################
263 ####################################
264 ### CELERY CONFIG ####
264 ### CELERY CONFIG ####
265 ####################################
265 ####################################
266 use_celery = false
266 use_celery = false
267 broker.host = localhost
267 broker.host = localhost
268 broker.vhost = rabbitmqhost
268 broker.vhost = rabbitmqhost
269 broker.port = 5672
269 broker.port = 5672
270 broker.user = rabbitmq
270 broker.user = rabbitmq
271 broker.password = qweqwe
271 broker.password = qweqwe
272
272
273 celery.imports = rhodecode.lib.celerylib.tasks
273 celery.imports = rhodecode.lib.celerylib.tasks
274
274
275 celery.result.backend = amqp
275 celery.result.backend = amqp
276 celery.result.dburi = amqp://
276 celery.result.dburi = amqp://
277 celery.result.serialier = json
277 celery.result.serialier = json
278
278
279 #celery.send.task.error.emails = true
279 #celery.send.task.error.emails = true
280 #celery.amqp.task.result.expires = 18000
280 #celery.amqp.task.result.expires = 18000
281
281
282 celeryd.concurrency = 2
282 celeryd.concurrency = 2
283 #celeryd.log.file = celeryd.log
283 #celeryd.log.file = celeryd.log
284 celeryd.log.level = debug
284 celeryd.log.level = debug
285 celeryd.max.tasks.per.child = 1
285 celeryd.max.tasks.per.child = 1
286
286
287 ## tasks will never be sent to the queue, but executed locally instead.
287 ## tasks will never be sent to the queue, but executed locally instead.
288 celery.always.eager = false
288 celery.always.eager = false
289
289
290 ####################################
290 ####################################
291 ### BEAKER CACHE ####
291 ### BEAKER CACHE ####
292 ####################################
292 ####################################
293 # default cache dir for templates. Putting this into a ramdisk
293 # default cache dir for templates. Putting this into a ramdisk
294 ## can boost performance, eg. %(here)s/data_ramdisk
294 ## can boost performance, eg. %(here)s/data_ramdisk
295 cache_dir = %(here)s/data
295 cache_dir = %(here)s/data
296
296
297 ## locking and default file storage for Beaker. Putting this into a ramdisk
297 ## locking and default file storage for Beaker. Putting this into a ramdisk
298 ## can boost performance, eg. %(here)s/data_ramdisk/cache/beaker_data
298 ## can boost performance, eg. %(here)s/data_ramdisk/cache/beaker_data
299 beaker.cache.data_dir = %(here)s/data/cache/beaker_data
299 beaker.cache.data_dir = %(here)s/data/cache/beaker_data
300 beaker.cache.lock_dir = %(here)s/data/cache/beaker_lock
300 beaker.cache.lock_dir = %(here)s/data/cache/beaker_lock
301
301
302 beaker.cache.regions = super_short_term, short_term, long_term, sql_cache_short, auth_plugins, repo_cache_long
302 beaker.cache.regions = super_short_term, short_term, long_term, sql_cache_short, auth_plugins, repo_cache_long
303
303
304 beaker.cache.super_short_term.type = memory
304 beaker.cache.super_short_term.type = memory
305 beaker.cache.super_short_term.expire = 10
305 beaker.cache.super_short_term.expire = 10
306 beaker.cache.super_short_term.key_length = 256
306 beaker.cache.super_short_term.key_length = 256
307
307
308 beaker.cache.short_term.type = memory
308 beaker.cache.short_term.type = memory
309 beaker.cache.short_term.expire = 60
309 beaker.cache.short_term.expire = 60
310 beaker.cache.short_term.key_length = 256
310 beaker.cache.short_term.key_length = 256
311
311
312 beaker.cache.long_term.type = memory
312 beaker.cache.long_term.type = memory
313 beaker.cache.long_term.expire = 36000
313 beaker.cache.long_term.expire = 36000
314 beaker.cache.long_term.key_length = 256
314 beaker.cache.long_term.key_length = 256
315
315
316 beaker.cache.sql_cache_short.type = memory
316 beaker.cache.sql_cache_short.type = memory
317 beaker.cache.sql_cache_short.expire = 10
317 beaker.cache.sql_cache_short.expire = 10
318 beaker.cache.sql_cache_short.key_length = 256
318 beaker.cache.sql_cache_short.key_length = 256
319
319
320 ## default is memory cache, configure only if required
320 ## default is memory cache, configure only if required
321 ## using multi-node or multi-worker setup
321 ## using multi-node or multi-worker setup
322 #beaker.cache.auth_plugins.type = ext:database
322 #beaker.cache.auth_plugins.type = ext:database
323 #beaker.cache.auth_plugins.lock_dir = %(here)s/data/cache/auth_plugin_lock
323 #beaker.cache.auth_plugins.lock_dir = %(here)s/data/cache/auth_plugin_lock
324 #beaker.cache.auth_plugins.url = postgresql://postgres:secret@localhost/rhodecode
324 #beaker.cache.auth_plugins.url = postgresql://postgres:secret@localhost/rhodecode
325 #beaker.cache.auth_plugins.url = mysql://root:secret@127.0.0.1/rhodecode
325 #beaker.cache.auth_plugins.url = mysql://root:secret@127.0.0.1/rhodecode
326 #beaker.cache.auth_plugins.sa.pool_recycle = 3600
326 #beaker.cache.auth_plugins.sa.pool_recycle = 3600
327 #beaker.cache.auth_plugins.sa.pool_size = 10
327 #beaker.cache.auth_plugins.sa.pool_size = 10
328 #beaker.cache.auth_plugins.sa.max_overflow = 0
328 #beaker.cache.auth_plugins.sa.max_overflow = 0
329
329
330 beaker.cache.repo_cache_long.type = memorylru_base
330 beaker.cache.repo_cache_long.type = memorylru_base
331 beaker.cache.repo_cache_long.max_items = 4096
331 beaker.cache.repo_cache_long.max_items = 4096
332 beaker.cache.repo_cache_long.expire = 2592000
332 beaker.cache.repo_cache_long.expire = 2592000
333
333
334 ## default is memorylru_base cache, configure only if required
334 ## default is memorylru_base cache, configure only if required
335 ## using multi-node or multi-worker setup
335 ## using multi-node or multi-worker setup
336 #beaker.cache.repo_cache_long.type = ext:memcached
336 #beaker.cache.repo_cache_long.type = ext:memcached
337 #beaker.cache.repo_cache_long.url = localhost:11211
337 #beaker.cache.repo_cache_long.url = localhost:11211
338 #beaker.cache.repo_cache_long.expire = 1209600
338 #beaker.cache.repo_cache_long.expire = 1209600
339 #beaker.cache.repo_cache_long.key_length = 256
339 #beaker.cache.repo_cache_long.key_length = 256
340
340
341 ####################################
341 ####################################
342 ### BEAKER SESSION ####
342 ### BEAKER SESSION ####
343 ####################################
343 ####################################
344
344
345 ## .session.type is type of storage options for the session, current allowed
345 ## .session.type is type of storage options for the session, current allowed
346 ## types are file, ext:memcached, ext:database, and memory (default).
346 ## types are file, ext:memcached, ext:database, and memory (default).
347 beaker.session.type = file
347 beaker.session.type = file
348 beaker.session.data_dir = %(here)s/data/sessions/data
348 beaker.session.data_dir = %(here)s/data/sessions/data
349
349
350 ## db based session, fast, and allows easy management over logged in users ##
350 ## db based session, fast, and allows easy management over logged in users ##
351 #beaker.session.type = ext:database
351 #beaker.session.type = ext:database
352 #beaker.session.table_name = db_session
352 #beaker.session.table_name = db_session
353 #beaker.session.sa.url = postgresql://postgres:secret@localhost/rhodecode
353 #beaker.session.sa.url = postgresql://postgres:secret@localhost/rhodecode
354 #beaker.session.sa.url = mysql://root:secret@127.0.0.1/rhodecode
354 #beaker.session.sa.url = mysql://root:secret@127.0.0.1/rhodecode
355 #beaker.session.sa.pool_recycle = 3600
355 #beaker.session.sa.pool_recycle = 3600
356 #beaker.session.sa.echo = false
356 #beaker.session.sa.echo = false
357
357
358 beaker.session.key = rhodecode
358 beaker.session.key = rhodecode
359 beaker.session.secret = develop-rc-uytcxaz
359 beaker.session.secret = develop-rc-uytcxaz
360 beaker.session.lock_dir = %(here)s/data/sessions/lock
360 beaker.session.lock_dir = %(here)s/data/sessions/lock
361
361
362 ## Secure encrypted cookie. Requires AES and AES python libraries
362 ## Secure encrypted cookie. Requires AES and AES python libraries
363 ## you must disable beaker.session.secret to use this
363 ## you must disable beaker.session.secret to use this
364 #beaker.session.encrypt_key = <key_for_encryption>
364 #beaker.session.encrypt_key = <key_for_encryption>
365 #beaker.session.validate_key = <validation_key>
365 #beaker.session.validate_key = <validation_key>
366
366
367 ## sets session as invalid(also logging out user) if it haven not been
367 ## sets session as invalid(also logging out user) if it haven not been
368 ## accessed for given amount of time in seconds
368 ## accessed for given amount of time in seconds
369 beaker.session.timeout = 2592000
369 beaker.session.timeout = 2592000
370 beaker.session.httponly = true
370 beaker.session.httponly = true
371 #beaker.session.cookie_path = /<your-prefix>
371 #beaker.session.cookie_path = /<your-prefix>
372
372
373 ## uncomment for https secure cookie
373 ## uncomment for https secure cookie
374 beaker.session.secure = false
374 beaker.session.secure = false
375
375
376 ## auto save the session to not to use .save()
376 ## auto save the session to not to use .save()
377 beaker.session.auto = false
377 beaker.session.auto = false
378
378
379 ## default cookie expiration time in seconds, set to `true` to set expire
379 ## default cookie expiration time in seconds, set to `true` to set expire
380 ## at browser close
380 ## at browser close
381 #beaker.session.cookie_expires = 3600
381 #beaker.session.cookie_expires = 3600
382
382
383 ###################################
383 ###################################
384 ## SEARCH INDEXING CONFIGURATION ##
384 ## SEARCH INDEXING CONFIGURATION ##
385 ###################################
385 ###################################
386 ## Full text search indexer is available in rhodecode-tools under
386 ## Full text search indexer is available in rhodecode-tools under
387 ## `rhodecode-tools index` command
387 ## `rhodecode-tools index` command
388
388
389 # WHOOSH Backend, doesn't require additional services to run
389 # WHOOSH Backend, doesn't require additional services to run
390 # it works good with few dozen repos
390 # it works good with few dozen repos
391 search.module = rhodecode.lib.index.whoosh
391 search.module = rhodecode.lib.index.whoosh
392 search.location = %(here)s/data/index
392 search.location = %(here)s/data/index
393
393
394 ########################################
394 ########################################
395 ### CHANNELSTREAM CONFIG ####
395 ### CHANNELSTREAM CONFIG ####
396 ########################################
396 ########################################
397 ## channelstream enables persistent connections and live notification
397 ## channelstream enables persistent connections and live notification
398 ## in the system. It's also used by the chat system
398 ## in the system. It's also used by the chat system
399
399
400 channelstream.enabled = true
400 channelstream.enabled = true
401 # location of channelstream server on the backend
401 # location of channelstream server on the backend
402 channelstream.server = 127.0.0.1:9800
402 channelstream.server = 127.0.0.1:9800
403 # location of the channelstream server from outside world
403 # location of the channelstream server from outside world
404 channelstream.ws_url = ws://127.0.0.1:9800
404 channelstream.ws_url = ws://127.0.0.1:9800
405 channelstream.secret = secret
405 channelstream.secret = secret
406 channelstream.history.location = %(here)s/channelstream_history
406 channelstream.history.location = %(here)s/channelstream_history
407
407
408
408
409 ###################################
409 ###################################
410 ## APPENLIGHT CONFIG ##
410 ## APPENLIGHT CONFIG ##
411 ###################################
411 ###################################
412
412
413 ## Appenlight is tailored to work with RhodeCode, see
413 ## Appenlight is tailored to work with RhodeCode, see
414 ## http://appenlight.com for details how to obtain an account
414 ## http://appenlight.com for details how to obtain an account
415
415
416 ## appenlight integration enabled
416 ## appenlight integration enabled
417 appenlight = false
417 appenlight = false
418
418
419 appenlight.server_url = https://api.appenlight.com
419 appenlight.server_url = https://api.appenlight.com
420 appenlight.api_key = YOUR_API_KEY
420 appenlight.api_key = YOUR_API_KEY
421 #appenlight.transport_config = https://api.appenlight.com?threaded=1&timeout=5
421 #appenlight.transport_config = https://api.appenlight.com?threaded=1&timeout=5
422
422
423 # used for JS client
423 # used for JS client
424 appenlight.api_public_key = YOUR_API_PUBLIC_KEY
424 appenlight.api_public_key = YOUR_API_PUBLIC_KEY
425
425
426 ## TWEAK AMOUNT OF INFO SENT HERE
426 ## TWEAK AMOUNT OF INFO SENT HERE
427
427
428 ## enables 404 error logging (default False)
428 ## enables 404 error logging (default False)
429 appenlight.report_404 = false
429 appenlight.report_404 = false
430
430
431 ## time in seconds after request is considered being slow (default 1)
431 ## time in seconds after request is considered being slow (default 1)
432 appenlight.slow_request_time = 1
432 appenlight.slow_request_time = 1
433
433
434 ## record slow requests in application
434 ## record slow requests in application
435 ## (needs to be enabled for slow datastore recording and time tracking)
435 ## (needs to be enabled for slow datastore recording and time tracking)
436 appenlight.slow_requests = true
436 appenlight.slow_requests = true
437
437
438 ## enable hooking to application loggers
438 ## enable hooking to application loggers
439 appenlight.logging = true
439 appenlight.logging = true
440
440
441 ## minimum log level for log capture
441 ## minimum log level for log capture
442 appenlight.logging.level = WARNING
442 appenlight.logging.level = WARNING
443
443
444 ## send logs only from erroneous/slow requests
444 ## send logs only from erroneous/slow requests
445 ## (saves API quota for intensive logging)
445 ## (saves API quota for intensive logging)
446 appenlight.logging_on_error = false
446 appenlight.logging_on_error = false
447
447
448 ## list of additonal keywords that should be grabbed from environ object
448 ## list of additonal keywords that should be grabbed from environ object
449 ## can be string with comma separated list of words in lowercase
449 ## can be string with comma separated list of words in lowercase
450 ## (by default client will always send following info:
450 ## (by default client will always send following info:
451 ## 'REMOTE_USER', 'REMOTE_ADDR', 'SERVER_NAME', 'CONTENT_TYPE' + all keys that
451 ## 'REMOTE_USER', 'REMOTE_ADDR', 'SERVER_NAME', 'CONTENT_TYPE' + all keys that
452 ## start with HTTP* this list be extended with additional keywords here
452 ## start with HTTP* this list be extended with additional keywords here
453 appenlight.environ_keys_whitelist =
453 appenlight.environ_keys_whitelist =
454
454
455 ## list of keywords that should be blanked from request object
455 ## list of keywords that should be blanked from request object
456 ## can be string with comma separated list of words in lowercase
456 ## can be string with comma separated list of words in lowercase
457 ## (by default client will always blank keys that contain following words
457 ## (by default client will always blank keys that contain following words
458 ## 'password', 'passwd', 'pwd', 'auth_tkt', 'secret', 'csrf'
458 ## 'password', 'passwd', 'pwd', 'auth_tkt', 'secret', 'csrf'
459 ## this list be extended with additional keywords set here
459 ## this list be extended with additional keywords set here
460 appenlight.request_keys_blacklist =
460 appenlight.request_keys_blacklist =
461
461
462 ## list of namespaces that should be ignores when gathering log entries
462 ## list of namespaces that should be ignores when gathering log entries
463 ## can be string with comma separated list of namespaces
463 ## can be string with comma separated list of namespaces
464 ## (by default the client ignores own entries: appenlight_client.client)
464 ## (by default the client ignores own entries: appenlight_client.client)
465 appenlight.log_namespace_blacklist =
465 appenlight.log_namespace_blacklist =
466
466
467
467
468 ################################################################################
468 ################################################################################
469 ## WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT* ##
469 ## WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT* ##
470 ## Debug mode will enable the interactive debugging tool, allowing ANYONE to ##
470 ## Debug mode will enable the interactive debugging tool, allowing ANYONE to ##
471 ## execute malicious code after an exception is raised. ##
471 ## execute malicious code after an exception is raised. ##
472 ################################################################################
472 ################################################################################
473 #set debug = false
473 #set debug = false
474
474
475
475
476 ##############
476 ##############
477 ## STYLING ##
477 ## STYLING ##
478 ##############
478 ##############
479 debug_style = true
479 debug_style = true
480
480
481 #########################################################
481 #########################################################
482 ### DB CONFIGS - EACH DB WILL HAVE IT'S OWN CONFIG ###
482 ### DB CONFIGS - EACH DB WILL HAVE IT'S OWN CONFIG ###
483 #########################################################
483 #########################################################
484 sqlalchemy.db1.url = sqlite:///%(here)s/rhodecode.db?timeout=30
484 sqlalchemy.db1.url = sqlite:///%(here)s/rhodecode.db?timeout=30
485 #sqlalchemy.db1.url = postgresql://postgres:qweqwe@localhost/rhodecode
485 #sqlalchemy.db1.url = postgresql://postgres:qweqwe@localhost/rhodecode
486 #sqlalchemy.db1.url = mysql://root:qweqwe@localhost/rhodecode
486 #sqlalchemy.db1.url = mysql://root:qweqwe@localhost/rhodecode
487
487
488 # see sqlalchemy docs for other advanced settings
488 # see sqlalchemy docs for other advanced settings
489
489
490 ## print the sql statements to output
490 ## print the sql statements to output
491 sqlalchemy.db1.echo = false
491 sqlalchemy.db1.echo = false
492 ## recycle the connections after this ammount of seconds
492 ## recycle the connections after this ammount of seconds
493 sqlalchemy.db1.pool_recycle = 3600
493 sqlalchemy.db1.pool_recycle = 3600
494 sqlalchemy.db1.convert_unicode = true
494 sqlalchemy.db1.convert_unicode = true
495
495
496 ## the number of connections to keep open inside the connection pool.
496 ## the number of connections to keep open inside the connection pool.
497 ## 0 indicates no limit
497 ## 0 indicates no limit
498 #sqlalchemy.db1.pool_size = 5
498 #sqlalchemy.db1.pool_size = 5
499
499
500 ## the number of connections to allow in connection pool "overflow", that is
500 ## the number of connections to allow in connection pool "overflow", that is
501 ## connections that can be opened above and beyond the pool_size setting,
501 ## connections that can be opened above and beyond the pool_size setting,
502 ## which defaults to five.
502 ## which defaults to five.
503 #sqlalchemy.db1.max_overflow = 10
503 #sqlalchemy.db1.max_overflow = 10
504
504
505
505
506 ##################
506 ##################
507 ### VCS CONFIG ###
507 ### VCS CONFIG ###
508 ##################
508 ##################
509 vcs.server.enable = true
509 vcs.server.enable = true
510 vcs.server = localhost:9900
510 vcs.server = localhost:9900
511
511
512 ## Web server connectivity protocol, responsible for web based VCS operatations
512 ## Web server connectivity protocol, responsible for web based VCS operatations
513 ## Available protocols are:
513 ## Available protocols are:
514 ## `pyro4` - using pyro4 server
514 ## `pyro4` - using pyro4 server
515 ## `http` - using http-rpc backend
515 ## `http` - using http-rpc backend
516 vcs.server.protocol = http
516 vcs.server.protocol = http
517
517
518 ## Push/Pull operations protocol, available options are:
518 ## Push/Pull operations protocol, available options are:
519 ## `pyro4` - using pyro4 server
519 ## `pyro4` - using pyro4 server
520 ## `rhodecode.lib.middleware.utils.scm_app_http` - Http based, recommended
520 ## `rhodecode.lib.middleware.utils.scm_app_http` - Http based, recommended
521 ## `vcsserver.scm_app` - internal app (EE only)
521 ## `vcsserver.scm_app` - internal app (EE only)
522 vcs.scm_app_implementation = rhodecode.lib.middleware.utils.scm_app_http
522 vcs.scm_app_implementation = rhodecode.lib.middleware.utils.scm_app_http
523
523
524 ## Push/Pull operations hooks protocol, available options are:
524 ## Push/Pull operations hooks protocol, available options are:
525 ## `pyro4` - using pyro4 server
525 ## `pyro4` - using pyro4 server
526 ## `http` - using http-rpc backend
526 ## `http` - using http-rpc backend
527 vcs.hooks.protocol = http
527 vcs.hooks.protocol = http
528
528
529 vcs.server.log_level = debug
529 vcs.server.log_level = debug
530 ## Start VCSServer with this instance as a subprocess, usefull for development
530 ## Start VCSServer with this instance as a subprocess, usefull for development
531 vcs.start_server = true
531 vcs.start_server = true
532 vcs.backends = hg, git, svn
532 vcs.backends = hg, git, svn
533 vcs.connection_timeout = 3600
533 vcs.connection_timeout = 3600
534 ## Compatibility version when creating SVN repositories. Defaults to newest version when commented out.
534 ## Compatibility version when creating SVN repositories. Defaults to newest version when commented out.
535 ## Available options are: pre-1.4-compatible, pre-1.5-compatible, pre-1.6-compatible, pre-1.8-compatible
535 ## Available options are: pre-1.4-compatible, pre-1.5-compatible, pre-1.6-compatible, pre-1.8-compatible
536 #vcs.svn.compatible_version = pre-1.8-compatible
536 #vcs.svn.compatible_version = pre-1.8-compatible
537
537
538
539 ##############################################
540 ### Subversion proxy support (mod_dav_svn) ###
541 ##############################################
542 ## Enable or disable the config file generation.
543 svn.proxy.generate_config = false
544 ## Generate config file with `SVNListParentPath` set to `On`.
545 svn.proxy.list_parent_path = true
546 ## Set location and file name of generated config file.
547 svn.proxy.config_file_path = %(here)s/mod_dav_svn.conf
548 ## File system path to the directory containing the repositories served by
549 ## RhodeCode.
550 svn.proxy.parent_path_root = /path/to/repo_store
551 ## Used as a prefix to the <Location> block in the generated config file. In
552 ## most cases it should be set to `/`.
553 svn.proxy.location_root = /
554
555
538 ################################
556 ################################
539 ### LOGGING CONFIGURATION ####
557 ### LOGGING CONFIGURATION ####
540 ################################
558 ################################
541 [loggers]
559 [loggers]
542 keys = root, routes, rhodecode, sqlalchemy, beaker, pyro4, templates
560 keys = root, routes, rhodecode, sqlalchemy, beaker, pyro4, templates
543
561
544 [handlers]
562 [handlers]
545 keys = console, console_sql
563 keys = console, console_sql
546
564
547 [formatters]
565 [formatters]
548 keys = generic, color_formatter, color_formatter_sql
566 keys = generic, color_formatter, color_formatter_sql
549
567
550 #############
568 #############
551 ## LOGGERS ##
569 ## LOGGERS ##
552 #############
570 #############
553 [logger_root]
571 [logger_root]
554 level = NOTSET
572 level = NOTSET
555 handlers = console
573 handlers = console
556
574
557 [logger_routes]
575 [logger_routes]
558 level = DEBUG
576 level = DEBUG
559 handlers =
577 handlers =
560 qualname = routes.middleware
578 qualname = routes.middleware
561 ## "level = DEBUG" logs the route matched and routing variables.
579 ## "level = DEBUG" logs the route matched and routing variables.
562 propagate = 1
580 propagate = 1
563
581
564 [logger_beaker]
582 [logger_beaker]
565 level = DEBUG
583 level = DEBUG
566 handlers =
584 handlers =
567 qualname = beaker.container
585 qualname = beaker.container
568 propagate = 1
586 propagate = 1
569
587
570 [logger_pyro4]
588 [logger_pyro4]
571 level = DEBUG
589 level = DEBUG
572 handlers =
590 handlers =
573 qualname = Pyro4
591 qualname = Pyro4
574 propagate = 1
592 propagate = 1
575
593
576 [logger_templates]
594 [logger_templates]
577 level = INFO
595 level = INFO
578 handlers =
596 handlers =
579 qualname = pylons.templating
597 qualname = pylons.templating
580 propagate = 1
598 propagate = 1
581
599
582 [logger_rhodecode]
600 [logger_rhodecode]
583 level = DEBUG
601 level = DEBUG
584 handlers =
602 handlers =
585 qualname = rhodecode
603 qualname = rhodecode
586 propagate = 1
604 propagate = 1
587
605
588 [logger_sqlalchemy]
606 [logger_sqlalchemy]
589 level = INFO
607 level = INFO
590 handlers = console_sql
608 handlers = console_sql
591 qualname = sqlalchemy.engine
609 qualname = sqlalchemy.engine
592 propagate = 0
610 propagate = 0
593
611
594 ##############
612 ##############
595 ## HANDLERS ##
613 ## HANDLERS ##
596 ##############
614 ##############
597
615
598 [handler_console]
616 [handler_console]
599 class = StreamHandler
617 class = StreamHandler
600 args = (sys.stderr,)
618 args = (sys.stderr,)
601 level = DEBUG
619 level = DEBUG
602 formatter = color_formatter
620 formatter = color_formatter
603
621
604 [handler_console_sql]
622 [handler_console_sql]
605 class = StreamHandler
623 class = StreamHandler
606 args = (sys.stderr,)
624 args = (sys.stderr,)
607 level = DEBUG
625 level = DEBUG
608 formatter = color_formatter_sql
626 formatter = color_formatter_sql
609
627
610 ################
628 ################
611 ## FORMATTERS ##
629 ## FORMATTERS ##
612 ################
630 ################
613
631
614 [formatter_generic]
632 [formatter_generic]
615 class = rhodecode.lib.logging_formatter.Pyro4AwareFormatter
633 class = rhodecode.lib.logging_formatter.Pyro4AwareFormatter
616 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
634 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
617 datefmt = %Y-%m-%d %H:%M:%S
635 datefmt = %Y-%m-%d %H:%M:%S
618
636
619 [formatter_color_formatter]
637 [formatter_color_formatter]
620 class = rhodecode.lib.logging_formatter.ColorFormatter
638 class = rhodecode.lib.logging_formatter.ColorFormatter
621 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
639 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
622 datefmt = %Y-%m-%d %H:%M:%S
640 datefmt = %Y-%m-%d %H:%M:%S
623
641
624 [formatter_color_formatter_sql]
642 [formatter_color_formatter_sql]
625 class = rhodecode.lib.logging_formatter.ColorFormatterSql
643 class = rhodecode.lib.logging_formatter.ColorFormatterSql
626 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
644 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
627 datefmt = %Y-%m-%d %H:%M:%S
645 datefmt = %Y-%m-%d %H:%M:%S
@@ -1,596 +1,614 b''
1 ################################################################################
1 ################################################################################
2 ################################################################################
2 ################################################################################
3 # RhodeCode Enterprise - configuration file #
3 # RhodeCode Enterprise - configuration file #
4 # Built-in functions and variables #
4 # Built-in functions and variables #
5 # The %(here)s variable will be replaced with the parent directory of this file#
5 # The %(here)s variable will be replaced with the parent directory of this file#
6 # #
6 # #
7 ################################################################################
7 ################################################################################
8
8
9 [DEFAULT]
9 [DEFAULT]
10 debug = true
10 debug = true
11 ################################################################################
11 ################################################################################
12 ## Uncomment and replace with the email address which should receive ##
12 ## Uncomment and replace with the email address which should receive ##
13 ## any error reports after an application crash ##
13 ## any error reports after an application crash ##
14 ## Additionally these settings will be used by the RhodeCode mailing system ##
14 ## Additionally these settings will be used by the RhodeCode mailing system ##
15 ################################################################################
15 ################################################################################
16 #email_to = admin@localhost
16 #email_to = admin@localhost
17 #error_email_from = paste_error@localhost
17 #error_email_from = paste_error@localhost
18 #app_email_from = rhodecode-noreply@localhost
18 #app_email_from = rhodecode-noreply@localhost
19 #error_message =
19 #error_message =
20 #email_prefix = [RhodeCode]
20 #email_prefix = [RhodeCode]
21
21
22 #smtp_server = mail.server.com
22 #smtp_server = mail.server.com
23 #smtp_username =
23 #smtp_username =
24 #smtp_password =
24 #smtp_password =
25 #smtp_port =
25 #smtp_port =
26 #smtp_use_tls = false
26 #smtp_use_tls = false
27 #smtp_use_ssl = true
27 #smtp_use_ssl = true
28 ## Specify available auth parameters here (e.g. LOGIN PLAIN CRAM-MD5, etc.)
28 ## Specify available auth parameters here (e.g. LOGIN PLAIN CRAM-MD5, etc.)
29 #smtp_auth =
29 #smtp_auth =
30
30
31 [server:main]
31 [server:main]
32 ## COMMON ##
32 ## COMMON ##
33 host = 127.0.0.1
33 host = 127.0.0.1
34 port = 5000
34 port = 5000
35
35
36 ##################################
36 ##################################
37 ## WAITRESS WSGI SERVER ##
37 ## WAITRESS WSGI SERVER ##
38 ## Recommended for Development ##
38 ## Recommended for Development ##
39 ##################################
39 ##################################
40 #use = egg:waitress#main
40 #use = egg:waitress#main
41 ## number of worker threads
41 ## number of worker threads
42 #threads = 5
42 #threads = 5
43 ## MAX BODY SIZE 100GB
43 ## MAX BODY SIZE 100GB
44 #max_request_body_size = 107374182400
44 #max_request_body_size = 107374182400
45 ## Use poll instead of select, fixes file descriptors limits problems.
45 ## Use poll instead of select, fixes file descriptors limits problems.
46 ## May not work on old windows systems.
46 ## May not work on old windows systems.
47 #asyncore_use_poll = true
47 #asyncore_use_poll = true
48
48
49
49
50 ##########################
50 ##########################
51 ## GUNICORN WSGI SERVER ##
51 ## GUNICORN WSGI SERVER ##
52 ##########################
52 ##########################
53 ## run with gunicorn --log-config <inifile.ini> --paste <inifile.ini>
53 ## run with gunicorn --log-config <inifile.ini> --paste <inifile.ini>
54 use = egg:gunicorn#main
54 use = egg:gunicorn#main
55 ## Sets the number of process workers. You must set `instance_id = *`
55 ## Sets the number of process workers. You must set `instance_id = *`
56 ## when this option is set to more than one worker, recommended
56 ## when this option is set to more than one worker, recommended
57 ## value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers
57 ## value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers
58 ## The `instance_id = *` must be set in the [app:main] section below
58 ## The `instance_id = *` must be set in the [app:main] section below
59 workers = 2
59 workers = 2
60 ## number of threads for each of the worker, must be set to 1 for gevent
60 ## number of threads for each of the worker, must be set to 1 for gevent
61 ## generally recommened to be at 1
61 ## generally recommened to be at 1
62 #threads = 1
62 #threads = 1
63 ## process name
63 ## process name
64 proc_name = rhodecode
64 proc_name = rhodecode
65 ## type of worker class, one of sync, gevent
65 ## type of worker class, one of sync, gevent
66 ## recommended for bigger setup is using of of other than sync one
66 ## recommended for bigger setup is using of of other than sync one
67 worker_class = sync
67 worker_class = sync
68 ## The maximum number of simultaneous clients. Valid only for Gevent
68 ## The maximum number of simultaneous clients. Valid only for Gevent
69 #worker_connections = 10
69 #worker_connections = 10
70 ## max number of requests that worker will handle before being gracefully
70 ## max number of requests that worker will handle before being gracefully
71 ## restarted, could prevent memory leaks
71 ## restarted, could prevent memory leaks
72 max_requests = 1000
72 max_requests = 1000
73 max_requests_jitter = 30
73 max_requests_jitter = 30
74 ## amount of time a worker can spend with handling a request before it
74 ## amount of time a worker can spend with handling a request before it
75 ## gets killed and restarted. Set to 6hrs
75 ## gets killed and restarted. Set to 6hrs
76 timeout = 21600
76 timeout = 21600
77
77
78
78
79 ## prefix middleware for RhodeCode, disables force_https flag.
79 ## prefix middleware for RhodeCode, disables force_https flag.
80 ## allows to set RhodeCode under a prefix in server.
80 ## allows to set RhodeCode under a prefix in server.
81 ## eg https://server.com/<prefix>. Enable `filter-with =` option below as well.
81 ## eg https://server.com/<prefix>. Enable `filter-with =` option below as well.
82 #[filter:proxy-prefix]
82 #[filter:proxy-prefix]
83 #use = egg:PasteDeploy#prefix
83 #use = egg:PasteDeploy#prefix
84 #prefix = /<your-prefix>
84 #prefix = /<your-prefix>
85
85
86 [app:main]
86 [app:main]
87 use = egg:rhodecode-enterprise-ce
87 use = egg:rhodecode-enterprise-ce
88 ## enable proxy prefix middleware, defined below
88 ## enable proxy prefix middleware, defined below
89 #filter-with = proxy-prefix
89 #filter-with = proxy-prefix
90
90
91 ## encryption key used to encrypt social plugin tokens,
91 ## encryption key used to encrypt social plugin tokens,
92 ## remote_urls with credentials etc, if not set it defaults to
92 ## remote_urls with credentials etc, if not set it defaults to
93 ## `beaker.session.secret`
93 ## `beaker.session.secret`
94 #rhodecode.encrypted_values.secret =
94 #rhodecode.encrypted_values.secret =
95
95
96 ## decryption strict mode (enabled by default). It controls if decryption raises
96 ## decryption strict mode (enabled by default). It controls if decryption raises
97 ## `SignatureVerificationError` in case of wrong key, or damaged encryption data.
97 ## `SignatureVerificationError` in case of wrong key, or damaged encryption data.
98 #rhodecode.encrypted_values.strict = false
98 #rhodecode.encrypted_values.strict = false
99
99
100 full_stack = true
100 full_stack = true
101
101
102 ## return gzipped responses from Rhodecode (static files/application)
102 ## return gzipped responses from Rhodecode (static files/application)
103 gzip_responses = true
103 gzip_responses = true
104
104
105 ## autogenerate javascript routes file on startup
105 ## autogenerate javascript routes file on startup
106 generate_js_files = false
106 generate_js_files = false
107
107
108 ## Optional Languages
108 ## Optional Languages
109 ## en(default), be, de, es, fr, it, ja, pl, pt, ru, zh
109 ## en(default), be, de, es, fr, it, ja, pl, pt, ru, zh
110 lang = en
110 lang = en
111
111
112 ## perform a full repository scan on each server start, this should be
112 ## perform a full repository scan on each server start, this should be
113 ## set to false after first startup, to allow faster server restarts.
113 ## set to false after first startup, to allow faster server restarts.
114 startup.import_repos = false
114 startup.import_repos = false
115
115
116 ## Uncomment and set this path to use archive download cache.
116 ## Uncomment and set this path to use archive download cache.
117 ## Once enabled, generated archives will be cached at this location
117 ## Once enabled, generated archives will be cached at this location
118 ## and served from the cache during subsequent requests for the same archive of
118 ## and served from the cache during subsequent requests for the same archive of
119 ## the repository.
119 ## the repository.
120 #archive_cache_dir = /tmp/tarballcache
120 #archive_cache_dir = /tmp/tarballcache
121
121
122 ## change this to unique ID for security
122 ## change this to unique ID for security
123 app_instance_uuid = rc-production
123 app_instance_uuid = rc-production
124
124
125 ## cut off limit for large diffs (size in bytes)
125 ## cut off limit for large diffs (size in bytes)
126 cut_off_limit_diff = 1024000
126 cut_off_limit_diff = 1024000
127 cut_off_limit_file = 256000
127 cut_off_limit_file = 256000
128
128
129 ## use cache version of scm repo everywhere
129 ## use cache version of scm repo everywhere
130 vcs_full_cache = true
130 vcs_full_cache = true
131
131
132 ## force https in RhodeCode, fixes https redirects, assumes it's always https
132 ## force https in RhodeCode, fixes https redirects, assumes it's always https
133 ## Normally this is controlled by proper http flags sent from http server
133 ## Normally this is controlled by proper http flags sent from http server
134 force_https = false
134 force_https = false
135
135
136 ## use Strict-Transport-Security headers
136 ## use Strict-Transport-Security headers
137 use_htsts = false
137 use_htsts = false
138
138
139 ## number of commits stats will parse on each iteration
139 ## number of commits stats will parse on each iteration
140 commit_parse_limit = 25
140 commit_parse_limit = 25
141
141
142 ## git rev filter option, --all is the default filter, if you need to
142 ## git rev filter option, --all is the default filter, if you need to
143 ## hide all refs in changelog switch this to --branches --tags
143 ## hide all refs in changelog switch this to --branches --tags
144 git_rev_filter = --branches --tags
144 git_rev_filter = --branches --tags
145
145
146 # Set to true if your repos are exposed using the dumb protocol
146 # Set to true if your repos are exposed using the dumb protocol
147 git_update_server_info = false
147 git_update_server_info = false
148
148
149 ## RSS/ATOM feed options
149 ## RSS/ATOM feed options
150 rss_cut_off_limit = 256000
150 rss_cut_off_limit = 256000
151 rss_items_per_page = 10
151 rss_items_per_page = 10
152 rss_include_diff = false
152 rss_include_diff = false
153
153
154 ## gist URL alias, used to create nicer urls for gist. This should be an
154 ## gist URL alias, used to create nicer urls for gist. This should be an
155 ## url that does rewrites to _admin/gists/<gistid>.
155 ## url that does rewrites to _admin/gists/<gistid>.
156 ## example: http://gist.rhodecode.org/{gistid}. Empty means use the internal
156 ## example: http://gist.rhodecode.org/{gistid}. Empty means use the internal
157 ## RhodeCode url, ie. http[s]://rhodecode.server/_admin/gists/<gistid>
157 ## RhodeCode url, ie. http[s]://rhodecode.server/_admin/gists/<gistid>
158 gist_alias_url =
158 gist_alias_url =
159
159
160 ## List of controllers (using glob pattern syntax) that AUTH TOKENS could be
160 ## List of controllers (using glob pattern syntax) that AUTH TOKENS could be
161 ## used for access.
161 ## used for access.
162 ## Adding ?auth_token = <token> to the url authenticates this request as if it
162 ## Adding ?auth_token = <token> to the url authenticates this request as if it
163 ## came from the the logged in user who own this authentication token.
163 ## came from the the logged in user who own this authentication token.
164 ##
164 ##
165 ## Syntax is <ControllerClass>:<function_pattern>.
165 ## Syntax is <ControllerClass>:<function_pattern>.
166 ## To enable access to raw_files put `FilesController:raw`.
166 ## To enable access to raw_files put `FilesController:raw`.
167 ## To enable access to patches add `ChangesetController:changeset_patch`.
167 ## To enable access to patches add `ChangesetController:changeset_patch`.
168 ## The list should be "," separated and on a single line.
168 ## The list should be "," separated and on a single line.
169 ##
169 ##
170 ## Recommended controllers to enable:
170 ## Recommended controllers to enable:
171 # ChangesetController:changeset_patch,
171 # ChangesetController:changeset_patch,
172 # ChangesetController:changeset_raw,
172 # ChangesetController:changeset_raw,
173 # FilesController:raw,
173 # FilesController:raw,
174 # FilesController:archivefile,
174 # FilesController:archivefile,
175 # GistsController:*,
175 # GistsController:*,
176 api_access_controllers_whitelist =
176 api_access_controllers_whitelist =
177
177
178 ## default encoding used to convert from and to unicode
178 ## default encoding used to convert from and to unicode
179 ## can be also a comma separated list of encoding in case of mixed encodings
179 ## can be also a comma separated list of encoding in case of mixed encodings
180 default_encoding = UTF-8
180 default_encoding = UTF-8
181
181
182 ## instance-id prefix
182 ## instance-id prefix
183 ## a prefix key for this instance used for cache invalidation when running
183 ## a prefix key for this instance used for cache invalidation when running
184 ## multiple instances of rhodecode, make sure it's globally unique for
184 ## multiple instances of rhodecode, make sure it's globally unique for
185 ## all running rhodecode instances. Leave empty if you don't use it
185 ## all running rhodecode instances. Leave empty if you don't use it
186 instance_id =
186 instance_id =
187
187
188 ## Fallback authentication plugin. Set this to a plugin ID to force the usage
188 ## Fallback authentication plugin. Set this to a plugin ID to force the usage
189 ## of an authentication plugin also if it is disabled by it's settings.
189 ## of an authentication plugin also if it is disabled by it's settings.
190 ## This could be useful if you are unable to log in to the system due to broken
190 ## This could be useful if you are unable to log in to the system due to broken
191 ## authentication settings. Then you can enable e.g. the internal rhodecode auth
191 ## authentication settings. Then you can enable e.g. the internal rhodecode auth
192 ## module to log in again and fix the settings.
192 ## module to log in again and fix the settings.
193 ##
193 ##
194 ## Available builtin plugin IDs (hash is part of the ID):
194 ## Available builtin plugin IDs (hash is part of the ID):
195 ## egg:rhodecode-enterprise-ce#rhodecode
195 ## egg:rhodecode-enterprise-ce#rhodecode
196 ## egg:rhodecode-enterprise-ce#pam
196 ## egg:rhodecode-enterprise-ce#pam
197 ## egg:rhodecode-enterprise-ce#ldap
197 ## egg:rhodecode-enterprise-ce#ldap
198 ## egg:rhodecode-enterprise-ce#jasig_cas
198 ## egg:rhodecode-enterprise-ce#jasig_cas
199 ## egg:rhodecode-enterprise-ce#headers
199 ## egg:rhodecode-enterprise-ce#headers
200 ## egg:rhodecode-enterprise-ce#crowd
200 ## egg:rhodecode-enterprise-ce#crowd
201 #rhodecode.auth_plugin_fallback = egg:rhodecode-enterprise-ce#rhodecode
201 #rhodecode.auth_plugin_fallback = egg:rhodecode-enterprise-ce#rhodecode
202
202
203 ## alternative return HTTP header for failed authentication. Default HTTP
203 ## alternative return HTTP header for failed authentication. Default HTTP
204 ## response is 401 HTTPUnauthorized. Currently HG clients have troubles with
204 ## response is 401 HTTPUnauthorized. Currently HG clients have troubles with
205 ## handling that causing a series of failed authentication calls.
205 ## handling that causing a series of failed authentication calls.
206 ## Set this variable to 403 to return HTTPForbidden, or any other HTTP code
206 ## Set this variable to 403 to return HTTPForbidden, or any other HTTP code
207 ## This will be served instead of default 401 on bad authnetication
207 ## This will be served instead of default 401 on bad authnetication
208 auth_ret_code =
208 auth_ret_code =
209
209
210 ## use special detection method when serving auth_ret_code, instead of serving
210 ## use special detection method when serving auth_ret_code, instead of serving
211 ## ret_code directly, use 401 initially (Which triggers credentials prompt)
211 ## ret_code directly, use 401 initially (Which triggers credentials prompt)
212 ## and then serve auth_ret_code to clients
212 ## and then serve auth_ret_code to clients
213 auth_ret_code_detection = false
213 auth_ret_code_detection = false
214
214
215 ## locking return code. When repository is locked return this HTTP code. 2XX
215 ## locking return code. When repository is locked return this HTTP code. 2XX
216 ## codes don't break the transactions while 4XX codes do
216 ## codes don't break the transactions while 4XX codes do
217 lock_ret_code = 423
217 lock_ret_code = 423
218
218
219 ## allows to change the repository location in settings page
219 ## allows to change the repository location in settings page
220 allow_repo_location_change = true
220 allow_repo_location_change = true
221
221
222 ## allows to setup custom hooks in settings page
222 ## allows to setup custom hooks in settings page
223 allow_custom_hooks_settings = true
223 allow_custom_hooks_settings = true
224
224
225 ## generated license token, goto license page in RhodeCode settings to obtain
225 ## generated license token, goto license page in RhodeCode settings to obtain
226 ## new token
226 ## new token
227 license_token =
227 license_token =
228
228
229 ## supervisor connection uri, for managing supervisor and logs.
229 ## supervisor connection uri, for managing supervisor and logs.
230 supervisor.uri =
230 supervisor.uri =
231 ## supervisord group name/id we only want this RC instance to handle
231 ## supervisord group name/id we only want this RC instance to handle
232 supervisor.group_id = prod
232 supervisor.group_id = prod
233
233
234 ## Display extended labs settings
234 ## Display extended labs settings
235 labs_settings_active = true
235 labs_settings_active = true
236
236
237 ####################################
237 ####################################
238 ### CELERY CONFIG ####
238 ### CELERY CONFIG ####
239 ####################################
239 ####################################
240 use_celery = false
240 use_celery = false
241 broker.host = localhost
241 broker.host = localhost
242 broker.vhost = rabbitmqhost
242 broker.vhost = rabbitmqhost
243 broker.port = 5672
243 broker.port = 5672
244 broker.user = rabbitmq
244 broker.user = rabbitmq
245 broker.password = qweqwe
245 broker.password = qweqwe
246
246
247 celery.imports = rhodecode.lib.celerylib.tasks
247 celery.imports = rhodecode.lib.celerylib.tasks
248
248
249 celery.result.backend = amqp
249 celery.result.backend = amqp
250 celery.result.dburi = amqp://
250 celery.result.dburi = amqp://
251 celery.result.serialier = json
251 celery.result.serialier = json
252
252
253 #celery.send.task.error.emails = true
253 #celery.send.task.error.emails = true
254 #celery.amqp.task.result.expires = 18000
254 #celery.amqp.task.result.expires = 18000
255
255
256 celeryd.concurrency = 2
256 celeryd.concurrency = 2
257 #celeryd.log.file = celeryd.log
257 #celeryd.log.file = celeryd.log
258 celeryd.log.level = debug
258 celeryd.log.level = debug
259 celeryd.max.tasks.per.child = 1
259 celeryd.max.tasks.per.child = 1
260
260
261 ## tasks will never be sent to the queue, but executed locally instead.
261 ## tasks will never be sent to the queue, but executed locally instead.
262 celery.always.eager = false
262 celery.always.eager = false
263
263
264 ####################################
264 ####################################
265 ### BEAKER CACHE ####
265 ### BEAKER CACHE ####
266 ####################################
266 ####################################
267 # default cache dir for templates. Putting this into a ramdisk
267 # default cache dir for templates. Putting this into a ramdisk
268 ## can boost performance, eg. %(here)s/data_ramdisk
268 ## can boost performance, eg. %(here)s/data_ramdisk
269 cache_dir = %(here)s/data
269 cache_dir = %(here)s/data
270
270
271 ## locking and default file storage for Beaker. Putting this into a ramdisk
271 ## locking and default file storage for Beaker. Putting this into a ramdisk
272 ## can boost performance, eg. %(here)s/data_ramdisk/cache/beaker_data
272 ## can boost performance, eg. %(here)s/data_ramdisk/cache/beaker_data
273 beaker.cache.data_dir = %(here)s/data/cache/beaker_data
273 beaker.cache.data_dir = %(here)s/data/cache/beaker_data
274 beaker.cache.lock_dir = %(here)s/data/cache/beaker_lock
274 beaker.cache.lock_dir = %(here)s/data/cache/beaker_lock
275
275
276 beaker.cache.regions = super_short_term, short_term, long_term, sql_cache_short, auth_plugins, repo_cache_long
276 beaker.cache.regions = super_short_term, short_term, long_term, sql_cache_short, auth_plugins, repo_cache_long
277
277
278 beaker.cache.super_short_term.type = memory
278 beaker.cache.super_short_term.type = memory
279 beaker.cache.super_short_term.expire = 10
279 beaker.cache.super_short_term.expire = 10
280 beaker.cache.super_short_term.key_length = 256
280 beaker.cache.super_short_term.key_length = 256
281
281
282 beaker.cache.short_term.type = memory
282 beaker.cache.short_term.type = memory
283 beaker.cache.short_term.expire = 60
283 beaker.cache.short_term.expire = 60
284 beaker.cache.short_term.key_length = 256
284 beaker.cache.short_term.key_length = 256
285
285
286 beaker.cache.long_term.type = memory
286 beaker.cache.long_term.type = memory
287 beaker.cache.long_term.expire = 36000
287 beaker.cache.long_term.expire = 36000
288 beaker.cache.long_term.key_length = 256
288 beaker.cache.long_term.key_length = 256
289
289
290 beaker.cache.sql_cache_short.type = memory
290 beaker.cache.sql_cache_short.type = memory
291 beaker.cache.sql_cache_short.expire = 10
291 beaker.cache.sql_cache_short.expire = 10
292 beaker.cache.sql_cache_short.key_length = 256
292 beaker.cache.sql_cache_short.key_length = 256
293
293
294 ## default is memory cache, configure only if required
294 ## default is memory cache, configure only if required
295 ## using multi-node or multi-worker setup
295 ## using multi-node or multi-worker setup
296 #beaker.cache.auth_plugins.type = ext:database
296 #beaker.cache.auth_plugins.type = ext:database
297 #beaker.cache.auth_plugins.lock_dir = %(here)s/data/cache/auth_plugin_lock
297 #beaker.cache.auth_plugins.lock_dir = %(here)s/data/cache/auth_plugin_lock
298 #beaker.cache.auth_plugins.url = postgresql://postgres:secret@localhost/rhodecode
298 #beaker.cache.auth_plugins.url = postgresql://postgres:secret@localhost/rhodecode
299 #beaker.cache.auth_plugins.url = mysql://root:secret@127.0.0.1/rhodecode
299 #beaker.cache.auth_plugins.url = mysql://root:secret@127.0.0.1/rhodecode
300 #beaker.cache.auth_plugins.sa.pool_recycle = 3600
300 #beaker.cache.auth_plugins.sa.pool_recycle = 3600
301 #beaker.cache.auth_plugins.sa.pool_size = 10
301 #beaker.cache.auth_plugins.sa.pool_size = 10
302 #beaker.cache.auth_plugins.sa.max_overflow = 0
302 #beaker.cache.auth_plugins.sa.max_overflow = 0
303
303
304 beaker.cache.repo_cache_long.type = memorylru_base
304 beaker.cache.repo_cache_long.type = memorylru_base
305 beaker.cache.repo_cache_long.max_items = 4096
305 beaker.cache.repo_cache_long.max_items = 4096
306 beaker.cache.repo_cache_long.expire = 2592000
306 beaker.cache.repo_cache_long.expire = 2592000
307
307
308 ## default is memorylru_base cache, configure only if required
308 ## default is memorylru_base cache, configure only if required
309 ## using multi-node or multi-worker setup
309 ## using multi-node or multi-worker setup
310 #beaker.cache.repo_cache_long.type = ext:memcached
310 #beaker.cache.repo_cache_long.type = ext:memcached
311 #beaker.cache.repo_cache_long.url = localhost:11211
311 #beaker.cache.repo_cache_long.url = localhost:11211
312 #beaker.cache.repo_cache_long.expire = 1209600
312 #beaker.cache.repo_cache_long.expire = 1209600
313 #beaker.cache.repo_cache_long.key_length = 256
313 #beaker.cache.repo_cache_long.key_length = 256
314
314
315 ####################################
315 ####################################
316 ### BEAKER SESSION ####
316 ### BEAKER SESSION ####
317 ####################################
317 ####################################
318
318
319 ## .session.type is type of storage options for the session, current allowed
319 ## .session.type is type of storage options for the session, current allowed
320 ## types are file, ext:memcached, ext:database, and memory (default).
320 ## types are file, ext:memcached, ext:database, and memory (default).
321 beaker.session.type = file
321 beaker.session.type = file
322 beaker.session.data_dir = %(here)s/data/sessions/data
322 beaker.session.data_dir = %(here)s/data/sessions/data
323
323
324 ## db based session, fast, and allows easy management over logged in users ##
324 ## db based session, fast, and allows easy management over logged in users ##
325 #beaker.session.type = ext:database
325 #beaker.session.type = ext:database
326 #beaker.session.table_name = db_session
326 #beaker.session.table_name = db_session
327 #beaker.session.sa.url = postgresql://postgres:secret@localhost/rhodecode
327 #beaker.session.sa.url = postgresql://postgres:secret@localhost/rhodecode
328 #beaker.session.sa.url = mysql://root:secret@127.0.0.1/rhodecode
328 #beaker.session.sa.url = mysql://root:secret@127.0.0.1/rhodecode
329 #beaker.session.sa.pool_recycle = 3600
329 #beaker.session.sa.pool_recycle = 3600
330 #beaker.session.sa.echo = false
330 #beaker.session.sa.echo = false
331
331
332 beaker.session.key = rhodecode
332 beaker.session.key = rhodecode
333 beaker.session.secret = production-rc-uytcxaz
333 beaker.session.secret = production-rc-uytcxaz
334 beaker.session.lock_dir = %(here)s/data/sessions/lock
334 beaker.session.lock_dir = %(here)s/data/sessions/lock
335
335
336 ## Secure encrypted cookie. Requires AES and AES python libraries
336 ## Secure encrypted cookie. Requires AES and AES python libraries
337 ## you must disable beaker.session.secret to use this
337 ## you must disable beaker.session.secret to use this
338 #beaker.session.encrypt_key = <key_for_encryption>
338 #beaker.session.encrypt_key = <key_for_encryption>
339 #beaker.session.validate_key = <validation_key>
339 #beaker.session.validate_key = <validation_key>
340
340
341 ## sets session as invalid(also logging out user) if it haven not been
341 ## sets session as invalid(also logging out user) if it haven not been
342 ## accessed for given amount of time in seconds
342 ## accessed for given amount of time in seconds
343 beaker.session.timeout = 2592000
343 beaker.session.timeout = 2592000
344 beaker.session.httponly = true
344 beaker.session.httponly = true
345 #beaker.session.cookie_path = /<your-prefix>
345 #beaker.session.cookie_path = /<your-prefix>
346
346
347 ## uncomment for https secure cookie
347 ## uncomment for https secure cookie
348 beaker.session.secure = false
348 beaker.session.secure = false
349
349
350 ## auto save the session to not to use .save()
350 ## auto save the session to not to use .save()
351 beaker.session.auto = false
351 beaker.session.auto = false
352
352
353 ## default cookie expiration time in seconds, set to `true` to set expire
353 ## default cookie expiration time in seconds, set to `true` to set expire
354 ## at browser close
354 ## at browser close
355 #beaker.session.cookie_expires = 3600
355 #beaker.session.cookie_expires = 3600
356
356
357 ###################################
357 ###################################
358 ## SEARCH INDEXING CONFIGURATION ##
358 ## SEARCH INDEXING CONFIGURATION ##
359 ###################################
359 ###################################
360 ## Full text search indexer is available in rhodecode-tools under
360 ## Full text search indexer is available in rhodecode-tools under
361 ## `rhodecode-tools index` command
361 ## `rhodecode-tools index` command
362
362
363 # WHOOSH Backend, doesn't require additional services to run
363 # WHOOSH Backend, doesn't require additional services to run
364 # it works good with few dozen repos
364 # it works good with few dozen repos
365 search.module = rhodecode.lib.index.whoosh
365 search.module = rhodecode.lib.index.whoosh
366 search.location = %(here)s/data/index
366 search.location = %(here)s/data/index
367
367
368 ########################################
368 ########################################
369 ### CHANNELSTREAM CONFIG ####
369 ### CHANNELSTREAM CONFIG ####
370 ########################################
370 ########################################
371 ## channelstream enables persistent connections and live notification
371 ## channelstream enables persistent connections and live notification
372 ## in the system. It's also used by the chat system
372 ## in the system. It's also used by the chat system
373
373
374 channelstream.enabled = true
374 channelstream.enabled = true
375 # location of channelstream server on the backend
375 # location of channelstream server on the backend
376 channelstream.server = 127.0.0.1:9800
376 channelstream.server = 127.0.0.1:9800
377 # location of the channelstream server from outside world
377 # location of the channelstream server from outside world
378 channelstream.ws_url = ws://127.0.0.1:9800
378 channelstream.ws_url = ws://127.0.0.1:9800
379 channelstream.secret = secret
379 channelstream.secret = secret
380 channelstream.history.location = %(here)s/channelstream_history
380 channelstream.history.location = %(here)s/channelstream_history
381
381
382
382
383 ###################################
383 ###################################
384 ## APPENLIGHT CONFIG ##
384 ## APPENLIGHT CONFIG ##
385 ###################################
385 ###################################
386
386
387 ## Appenlight is tailored to work with RhodeCode, see
387 ## Appenlight is tailored to work with RhodeCode, see
388 ## http://appenlight.com for details how to obtain an account
388 ## http://appenlight.com for details how to obtain an account
389
389
390 ## appenlight integration enabled
390 ## appenlight integration enabled
391 appenlight = false
391 appenlight = false
392
392
393 appenlight.server_url = https://api.appenlight.com
393 appenlight.server_url = https://api.appenlight.com
394 appenlight.api_key = YOUR_API_KEY
394 appenlight.api_key = YOUR_API_KEY
395 #appenlight.transport_config = https://api.appenlight.com?threaded=1&timeout=5
395 #appenlight.transport_config = https://api.appenlight.com?threaded=1&timeout=5
396
396
397 # used for JS client
397 # used for JS client
398 appenlight.api_public_key = YOUR_API_PUBLIC_KEY
398 appenlight.api_public_key = YOUR_API_PUBLIC_KEY
399
399
400 ## TWEAK AMOUNT OF INFO SENT HERE
400 ## TWEAK AMOUNT OF INFO SENT HERE
401
401
402 ## enables 404 error logging (default False)
402 ## enables 404 error logging (default False)
403 appenlight.report_404 = false
403 appenlight.report_404 = false
404
404
405 ## time in seconds after request is considered being slow (default 1)
405 ## time in seconds after request is considered being slow (default 1)
406 appenlight.slow_request_time = 1
406 appenlight.slow_request_time = 1
407
407
408 ## record slow requests in application
408 ## record slow requests in application
409 ## (needs to be enabled for slow datastore recording and time tracking)
409 ## (needs to be enabled for slow datastore recording and time tracking)
410 appenlight.slow_requests = true
410 appenlight.slow_requests = true
411
411
412 ## enable hooking to application loggers
412 ## enable hooking to application loggers
413 appenlight.logging = true
413 appenlight.logging = true
414
414
415 ## minimum log level for log capture
415 ## minimum log level for log capture
416 appenlight.logging.level = WARNING
416 appenlight.logging.level = WARNING
417
417
418 ## send logs only from erroneous/slow requests
418 ## send logs only from erroneous/slow requests
419 ## (saves API quota for intensive logging)
419 ## (saves API quota for intensive logging)
420 appenlight.logging_on_error = false
420 appenlight.logging_on_error = false
421
421
422 ## list of additonal keywords that should be grabbed from environ object
422 ## list of additonal keywords that should be grabbed from environ object
423 ## can be string with comma separated list of words in lowercase
423 ## can be string with comma separated list of words in lowercase
424 ## (by default client will always send following info:
424 ## (by default client will always send following info:
425 ## 'REMOTE_USER', 'REMOTE_ADDR', 'SERVER_NAME', 'CONTENT_TYPE' + all keys that
425 ## 'REMOTE_USER', 'REMOTE_ADDR', 'SERVER_NAME', 'CONTENT_TYPE' + all keys that
426 ## start with HTTP* this list be extended with additional keywords here
426 ## start with HTTP* this list be extended with additional keywords here
427 appenlight.environ_keys_whitelist =
427 appenlight.environ_keys_whitelist =
428
428
429 ## list of keywords that should be blanked from request object
429 ## list of keywords that should be blanked from request object
430 ## can be string with comma separated list of words in lowercase
430 ## can be string with comma separated list of words in lowercase
431 ## (by default client will always blank keys that contain following words
431 ## (by default client will always blank keys that contain following words
432 ## 'password', 'passwd', 'pwd', 'auth_tkt', 'secret', 'csrf'
432 ## 'password', 'passwd', 'pwd', 'auth_tkt', 'secret', 'csrf'
433 ## this list be extended with additional keywords set here
433 ## this list be extended with additional keywords set here
434 appenlight.request_keys_blacklist =
434 appenlight.request_keys_blacklist =
435
435
436 ## list of namespaces that should be ignores when gathering log entries
436 ## list of namespaces that should be ignores when gathering log entries
437 ## can be string with comma separated list of namespaces
437 ## can be string with comma separated list of namespaces
438 ## (by default the client ignores own entries: appenlight_client.client)
438 ## (by default the client ignores own entries: appenlight_client.client)
439 appenlight.log_namespace_blacklist =
439 appenlight.log_namespace_blacklist =
440
440
441
441
442 ################################################################################
442 ################################################################################
443 ## WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT* ##
443 ## WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT* ##
444 ## Debug mode will enable the interactive debugging tool, allowing ANYONE to ##
444 ## Debug mode will enable the interactive debugging tool, allowing ANYONE to ##
445 ## execute malicious code after an exception is raised. ##
445 ## execute malicious code after an exception is raised. ##
446 ################################################################################
446 ################################################################################
447 set debug = false
447 set debug = false
448
448
449
449
450 #########################################################
450 #########################################################
451 ### DB CONFIGS - EACH DB WILL HAVE IT'S OWN CONFIG ###
451 ### DB CONFIGS - EACH DB WILL HAVE IT'S OWN CONFIG ###
452 #########################################################
452 #########################################################
453 #sqlalchemy.db1.url = sqlite:///%(here)s/rhodecode.db?timeout=30
453 #sqlalchemy.db1.url = sqlite:///%(here)s/rhodecode.db?timeout=30
454 sqlalchemy.db1.url = postgresql://postgres:qweqwe@localhost/rhodecode
454 sqlalchemy.db1.url = postgresql://postgres:qweqwe@localhost/rhodecode
455 #sqlalchemy.db1.url = mysql://root:qweqwe@localhost/rhodecode
455 #sqlalchemy.db1.url = mysql://root:qweqwe@localhost/rhodecode
456
456
457 # see sqlalchemy docs for other advanced settings
457 # see sqlalchemy docs for other advanced settings
458
458
459 ## print the sql statements to output
459 ## print the sql statements to output
460 sqlalchemy.db1.echo = false
460 sqlalchemy.db1.echo = false
461 ## recycle the connections after this ammount of seconds
461 ## recycle the connections after this ammount of seconds
462 sqlalchemy.db1.pool_recycle = 3600
462 sqlalchemy.db1.pool_recycle = 3600
463 sqlalchemy.db1.convert_unicode = true
463 sqlalchemy.db1.convert_unicode = true
464
464
465 ## the number of connections to keep open inside the connection pool.
465 ## the number of connections to keep open inside the connection pool.
466 ## 0 indicates no limit
466 ## 0 indicates no limit
467 #sqlalchemy.db1.pool_size = 5
467 #sqlalchemy.db1.pool_size = 5
468
468
469 ## the number of connections to allow in connection pool "overflow", that is
469 ## the number of connections to allow in connection pool "overflow", that is
470 ## connections that can be opened above and beyond the pool_size setting,
470 ## connections that can be opened above and beyond the pool_size setting,
471 ## which defaults to five.
471 ## which defaults to five.
472 #sqlalchemy.db1.max_overflow = 10
472 #sqlalchemy.db1.max_overflow = 10
473
473
474
474
475 ##################
475 ##################
476 ### VCS CONFIG ###
476 ### VCS CONFIG ###
477 ##################
477 ##################
478 vcs.server.enable = true
478 vcs.server.enable = true
479 vcs.server = localhost:9900
479 vcs.server = localhost:9900
480
480
481 ## Web server connectivity protocol, responsible for web based VCS operatations
481 ## Web server connectivity protocol, responsible for web based VCS operatations
482 ## Available protocols are:
482 ## Available protocols are:
483 ## `pyro4` - using pyro4 server
483 ## `pyro4` - using pyro4 server
484 ## `http` - using http-rpc backend
484 ## `http` - using http-rpc backend
485 #vcs.server.protocol = http
485 #vcs.server.protocol = http
486
486
487 ## Push/Pull operations protocol, available options are:
487 ## Push/Pull operations protocol, available options are:
488 ## `pyro4` - using pyro4 server
488 ## `pyro4` - using pyro4 server
489 ## `rhodecode.lib.middleware.utils.scm_app_http` - Http based, recommended
489 ## `rhodecode.lib.middleware.utils.scm_app_http` - Http based, recommended
490 ## `vcsserver.scm_app` - internal app (EE only)
490 ## `vcsserver.scm_app` - internal app (EE only)
491 #vcs.scm_app_implementation = rhodecode.lib.middleware.utils.scm_app_http
491 #vcs.scm_app_implementation = rhodecode.lib.middleware.utils.scm_app_http
492
492
493 ## Push/Pull operations hooks protocol, available options are:
493 ## Push/Pull operations hooks protocol, available options are:
494 ## `pyro4` - using pyro4 server
494 ## `pyro4` - using pyro4 server
495 ## `http` - using http-rpc backend
495 ## `http` - using http-rpc backend
496 #vcs.hooks.protocol = http
496 #vcs.hooks.protocol = http
497
497
498 vcs.server.log_level = info
498 vcs.server.log_level = info
499 ## Start VCSServer with this instance as a subprocess, usefull for development
499 ## Start VCSServer with this instance as a subprocess, usefull for development
500 vcs.start_server = false
500 vcs.start_server = false
501 vcs.backends = hg, git, svn
501 vcs.backends = hg, git, svn
502 vcs.connection_timeout = 3600
502 vcs.connection_timeout = 3600
503 ## Compatibility version when creating SVN repositories. Defaults to newest version when commented out.
503 ## Compatibility version when creating SVN repositories. Defaults to newest version when commented out.
504 ## Available options are: pre-1.4-compatible, pre-1.5-compatible, pre-1.6-compatible, pre-1.8-compatible
504 ## Available options are: pre-1.4-compatible, pre-1.5-compatible, pre-1.6-compatible, pre-1.8-compatible
505 #vcs.svn.compatible_version = pre-1.8-compatible
505 #vcs.svn.compatible_version = pre-1.8-compatible
506
506
507
508 ##############################################
509 ### Subversion proxy support (mod_dav_svn) ###
510 ##############################################
511 ## Enable or disable the config file generation.
512 svn.proxy.generate_config = false
513 ## Generate config file with `SVNListParentPath` set to `On`.
514 svn.proxy.list_parent_path = true
515 ## Set location and file name of generated config file.
516 svn.proxy.config_file_path = %(here)s/mod_dav_svn.conf
517 ## File system path to the directory containing the repositories served by
518 ## RhodeCode.
519 svn.proxy.parent_path_root = /path/to/repo_store
520 ## Used as a prefix to the <Location> block in the generated config file. In
521 ## most cases it should be set to `/`.
522 svn.proxy.location_root = /
523
524
507 ################################
525 ################################
508 ### LOGGING CONFIGURATION ####
526 ### LOGGING CONFIGURATION ####
509 ################################
527 ################################
510 [loggers]
528 [loggers]
511 keys = root, routes, rhodecode, sqlalchemy, beaker, pyro4, templates
529 keys = root, routes, rhodecode, sqlalchemy, beaker, pyro4, templates
512
530
513 [handlers]
531 [handlers]
514 keys = console, console_sql
532 keys = console, console_sql
515
533
516 [formatters]
534 [formatters]
517 keys = generic, color_formatter, color_formatter_sql
535 keys = generic, color_formatter, color_formatter_sql
518
536
519 #############
537 #############
520 ## LOGGERS ##
538 ## LOGGERS ##
521 #############
539 #############
522 [logger_root]
540 [logger_root]
523 level = NOTSET
541 level = NOTSET
524 handlers = console
542 handlers = console
525
543
526 [logger_routes]
544 [logger_routes]
527 level = DEBUG
545 level = DEBUG
528 handlers =
546 handlers =
529 qualname = routes.middleware
547 qualname = routes.middleware
530 ## "level = DEBUG" logs the route matched and routing variables.
548 ## "level = DEBUG" logs the route matched and routing variables.
531 propagate = 1
549 propagate = 1
532
550
533 [logger_beaker]
551 [logger_beaker]
534 level = DEBUG
552 level = DEBUG
535 handlers =
553 handlers =
536 qualname = beaker.container
554 qualname = beaker.container
537 propagate = 1
555 propagate = 1
538
556
539 [logger_pyro4]
557 [logger_pyro4]
540 level = DEBUG
558 level = DEBUG
541 handlers =
559 handlers =
542 qualname = Pyro4
560 qualname = Pyro4
543 propagate = 1
561 propagate = 1
544
562
545 [logger_templates]
563 [logger_templates]
546 level = INFO
564 level = INFO
547 handlers =
565 handlers =
548 qualname = pylons.templating
566 qualname = pylons.templating
549 propagate = 1
567 propagate = 1
550
568
551 [logger_rhodecode]
569 [logger_rhodecode]
552 level = DEBUG
570 level = DEBUG
553 handlers =
571 handlers =
554 qualname = rhodecode
572 qualname = rhodecode
555 propagate = 1
573 propagate = 1
556
574
557 [logger_sqlalchemy]
575 [logger_sqlalchemy]
558 level = INFO
576 level = INFO
559 handlers = console_sql
577 handlers = console_sql
560 qualname = sqlalchemy.engine
578 qualname = sqlalchemy.engine
561 propagate = 0
579 propagate = 0
562
580
563 ##############
581 ##############
564 ## HANDLERS ##
582 ## HANDLERS ##
565 ##############
583 ##############
566
584
567 [handler_console]
585 [handler_console]
568 class = StreamHandler
586 class = StreamHandler
569 args = (sys.stderr,)
587 args = (sys.stderr,)
570 level = INFO
588 level = INFO
571 formatter = generic
589 formatter = generic
572
590
573 [handler_console_sql]
591 [handler_console_sql]
574 class = StreamHandler
592 class = StreamHandler
575 args = (sys.stderr,)
593 args = (sys.stderr,)
576 level = WARN
594 level = WARN
577 formatter = generic
595 formatter = generic
578
596
579 ################
597 ################
580 ## FORMATTERS ##
598 ## FORMATTERS ##
581 ################
599 ################
582
600
583 [formatter_generic]
601 [formatter_generic]
584 class = rhodecode.lib.logging_formatter.Pyro4AwareFormatter
602 class = rhodecode.lib.logging_formatter.Pyro4AwareFormatter
585 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
603 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
586 datefmt = %Y-%m-%d %H:%M:%S
604 datefmt = %Y-%m-%d %H:%M:%S
587
605
588 [formatter_color_formatter]
606 [formatter_color_formatter]
589 class = rhodecode.lib.logging_formatter.ColorFormatter
607 class = rhodecode.lib.logging_formatter.ColorFormatter
590 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
608 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
591 datefmt = %Y-%m-%d %H:%M:%S
609 datefmt = %Y-%m-%d %H:%M:%S
592
610
593 [formatter_color_formatter_sql]
611 [formatter_color_formatter_sql]
594 class = rhodecode.lib.logging_formatter.ColorFormatterSql
612 class = rhodecode.lib.logging_formatter.ColorFormatterSql
595 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
613 format = %(asctime)s.%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s
596 datefmt = %Y-%m-%d %H:%M:%S
614 datefmt = %Y-%m-%d %H:%M:%S
General Comments 0
You need to be logged in to leave comments. Login now