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