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