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