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