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