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