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