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