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