|
@@ -0,0 +1,216 @@
|
|
1
|
+###
|
|
2
|
+# app configuration
|
|
3
|
+# https://docs.pylonsproject.org/projects/pyramid/en/latest/narr/environment.html
|
|
4
|
+###
|
|
5
|
+[app:main]
|
|
6
|
+use = egg:tracim
|
|
7
|
+
|
|
8
|
+pyramid.reload_templates = true
|
|
9
|
+pyramid.debug_authorization = false
|
|
10
|
+pyramid.debug_notfound = false
|
|
11
|
+pyramid.debug_routematch = false
|
|
12
|
+pyramid.default_locale_name = en
|
|
13
|
+pyramid.includes =
|
|
14
|
+ pyramid_debugtoolbar
|
|
15
|
+
|
|
16
|
+sqlalchemy.url = sqlite:///%(here)s/tracim.sqlite
|
|
17
|
+
|
|
18
|
+retry.attempts = 3
|
|
19
|
+
|
|
20
|
+# By default, the toolbar only appears for clients from IP addresses
|
|
21
|
+# '127.0.0.1' and '::1'.
|
|
22
|
+# debugtoolbar.hosts = 127.0.0.1 ::1
|
|
23
|
+
|
|
24
|
+###
|
|
25
|
+# TRACIM SPECIFIC CONF
|
|
26
|
+###
|
|
27
|
+
|
|
28
|
+### Global
|
|
29
|
+
|
|
30
|
+cache_dir = %(here)s/data
|
|
31
|
+# preview generator cache directory
|
|
32
|
+preview_cache_dir = /tmp/tracim/preview/
|
|
33
|
+# file depot storage
|
|
34
|
+depot_storage_name = tracim
|
|
35
|
+depot_storage_dir = %(here)s/depot/
|
|
36
|
+
|
|
37
|
+# The following parameters allow to personalize the home page
|
|
38
|
+# They are html ready (you can put html tags they will be interpreted)
|
|
39
|
+website.title = TRACIM
|
|
40
|
+website.title.color = #555
|
|
41
|
+website.home.subtitle = Default login: email: admin@admin.admin (password: admin@admin.admin)
|
|
42
|
+website.home.tag_line = <div class="text-center" style="font-weight: bold;">Collaboration, versionning and traceability</div>
|
|
43
|
+website.home.below_login_form = in case of problem, please contact the administrator.
|
|
44
|
+# Values may be 'all' or 'folders'
|
|
45
|
+website.treeview.content = all
|
|
46
|
+# The following base_url is used for links and icons
|
|
47
|
+# integrated in the email notifcations
|
|
48
|
+website.base_url = http://127.0.0.1:8080
|
|
49
|
+# If config not provided, it will be extracted from website.base_url
|
|
50
|
+website.server_name = 127.0.0.1
|
|
51
|
+
|
|
52
|
+# Specifies if the update of comments and attached files is allowed (by the owner only).
|
|
53
|
+# Examples:
|
|
54
|
+# 600 means 10 minutes (ie 600 seconds)
|
|
55
|
+# 3600 means 1 hour (60x60 seconds)
|
|
56
|
+#
|
|
57
|
+# Allowed values:
|
|
58
|
+# -1 means that content update is allowed for ever
|
|
59
|
+# 0 means that content update is not allowed
|
|
60
|
+# x means that content update is allowed for x seconds (with x>0)
|
|
61
|
+content.update.allowed.duration = 3600
|
|
62
|
+
|
|
63
|
+# Auth type (internal or ldap)
|
|
64
|
+auth_type = internal
|
|
65
|
+# If auth_type is ldap, uncomment following ldap_* parameters
|
|
66
|
+# LDAP server address
|
|
67
|
+# ldap_url = ldap://localhost:389
|
|
68
|
+# Base dn to make queries
|
|
69
|
+# ldap_base_dn = dc=directory,dc=fsf,dc=org
|
|
70
|
+# Bind dn to identify the search
|
|
71
|
+# ldap_bind_dn = cn=admin,dc=directory,dc=fsf,dc=org
|
|
72
|
+# The bind password
|
|
73
|
+# ldap_bind_pass = toor
|
|
74
|
+# Attribute name of user record who contain user login (email)
|
|
75
|
+# ldap_ldap_naming_attribute = uid
|
|
76
|
+# Matching between ldap attribute and ldap user field (ldap_attr1=user_field1,ldap_attr2=user_field2,...)
|
|
77
|
+# ldap_user_attributes = mail=email
|
|
78
|
+# TLS usage to communicate with your LDAP server
|
|
79
|
+# ldap_tls = False
|
|
80
|
+# If True, LDAP own tracim group managment (not available for now!)
|
|
81
|
+# ldap_group_enabled = False
|
|
82
|
+# User auth token validity in seconds (used to interfaces like web calendars)
|
|
83
|
+user.auth_token.validity = 604800
|
|
84
|
+
|
|
85
|
+### Mail
|
|
86
|
+
|
|
87
|
+# Reset password through email related configuration.
|
|
88
|
+# These emails will be sent through SMTP
|
|
89
|
+#
|
|
90
|
+resetpassword.email_sender = email@sender.com
|
|
91
|
+resetpassword.smtp_host = smtp.sender
|
|
92
|
+resetpassword.smtp_port = 25
|
|
93
|
+resetpassword.smtp_login = smtp.login
|
|
94
|
+resetpassword.smtp_passwd = smtp.password
|
|
95
|
+
|
|
96
|
+email.notification.activated = False
|
|
97
|
+# email.notification.log_file_path = /tmp/mail-notifications.log
|
|
98
|
+# email notifications can be sent with the user_id added as an identifier
|
|
99
|
+# this way email clients like Thunderbird will be able to distinguish
|
|
100
|
+# notifications generated by a user or another one
|
|
101
|
+email.notification.from.email = noreply+{user_id}@trac.im
|
|
102
|
+email.notification.from.default_label = Tracim Notifications
|
|
103
|
+email.notification.reply_to.email = reply+{content_id}@trac.im
|
|
104
|
+email.notification.references.email = thread+{content_id}@trac.im
|
|
105
|
+email.notification.content_update.template.html = %(here)s/tracim/templates/mail/content_update_body_html.mak
|
|
106
|
+email.notification.content_update.template.text = %(here)s/tracim/templates/mail/content_update_body_text.mak
|
|
107
|
+email.notification.created_account.template.html = %(here)s/tracim/templates/mail/created_account_body_html.mak
|
|
108
|
+email.notification.created_account.template.text = %(here)s/tracim/templates/mail/created_account_body_text.mak
|
|
109
|
+# Note: items between { and } are variable names. Do not remove / rename them
|
|
110
|
+email.notification.content_update.subject = [{website_title}] [{workspace_label}] {content_label} ({content_status_label})
|
|
111
|
+email.notification.created_account.subject = [{website_title}] Created account
|
|
112
|
+# processing_mode may be sync or async
|
|
113
|
+email.notification.processing_mode = sync
|
|
114
|
+email.notification.smtp.server = your_smtp_server
|
|
115
|
+email.notification.smtp.port = 25
|
|
116
|
+email.notification.smtp.user = your_smtp_user
|
|
117
|
+email.notification.smtp.password = your_smtp_password
|
|
118
|
+
|
|
119
|
+## Email sending configuration
|
|
120
|
+# processing_mode may be sync or async,
|
|
121
|
+# with async, please configure redis below
|
|
122
|
+email.processing_mode = sync
|
|
123
|
+# email.async.redis.host = localhost
|
|
124
|
+# email.async.redis.port = 6379
|
|
125
|
+# email.async.redis.db = 0
|
|
126
|
+
|
|
127
|
+# Email reply configuration
|
|
128
|
+email.reply.activated = False
|
|
129
|
+email.reply.imap.server = your_imap_server
|
|
130
|
+email.reply.imap.port = 993
|
|
131
|
+email.reply.imap.user = your_imap_user
|
|
132
|
+email.reply.imap.password = your_imap_password
|
|
133
|
+email.reply.imap.folder = INBOX
|
|
134
|
+email.reply.imap.use_ssl = true
|
|
135
|
+email.reply.imap.use_idle = true
|
|
136
|
+# Re-new connection each 10 minutes
|
|
137
|
+email.reply.connection.max_lifetime = 600
|
|
138
|
+# Token for communication between mail fetcher and tracim controller
|
|
139
|
+email.reply.token = mysecuretoken
|
|
140
|
+# Delay in seconds between each check
|
|
141
|
+email.reply.check.heartbeat = 60
|
|
142
|
+email.reply.use_html_parsing = true
|
|
143
|
+email.reply.use_txt_parsing = true
|
|
144
|
+# Lockfile path is required for email_reply feature,
|
|
145
|
+# it's just an empty file use to prevent concurrent access to imap unseen mail
|
|
146
|
+email.reply.lockfile_path = %(here)s/email_fetcher.lock
|
|
147
|
+
|
|
148
|
+### Radical (CalDav server) configuration
|
|
149
|
+
|
|
150
|
+# radicale.server.host = 0.0.0.0
|
|
151
|
+# radicale.server.port = 5232
|
|
152
|
+# radicale.server.ssl = false
|
|
153
|
+radicale.server.filesystem.folder = %(here)s/radicale/collections/
|
|
154
|
+# radicale.server.allow_origin = *
|
|
155
|
+# radicale.server.realm_message = Tracim Calendar - Password Required
|
|
156
|
+## url can be extended like http://127.0.0.1:5232/calendar
|
|
157
|
+## in this case, you have to create your own proxy behind this url.
|
|
158
|
+## and update following parameters
|
|
159
|
+# radicale.client.base_url.host = http://127.0.0.1:5232
|
|
160
|
+# radicale.client.base_url.prefix = /
|
|
161
|
+
|
|
162
|
+### WSGIDAV
|
|
163
|
+
|
|
164
|
+wsgidav.config_path = %(here)s/wsgidav.conf
|
|
165
|
+## url can be extended like 127.0.0.1/webdav
|
|
166
|
+## in this case, you have to create your own proxy behind this url.
|
|
167
|
+## Do not set http:// prefix.
|
|
168
|
+# wsgidav.client.base_url = 127.0.0.1:<WSGIDAV_PORT>
|
|
169
|
+
|
|
170
|
+###
|
|
171
|
+# wsgi server configuration
|
|
172
|
+###
|
|
173
|
+
|
|
174
|
+[server:main]
|
|
175
|
+use = egg:waitress#main
|
|
176
|
+listen = localhost:6543
|
|
177
|
+
|
|
178
|
+###
|
|
179
|
+# logging configuration
|
|
180
|
+# https://docs.pylonsproject.org/projects/pyramid/en/latest/narr/logging.html
|
|
181
|
+###
|
|
182
|
+
|
|
183
|
+[loggers]
|
|
184
|
+keys = root, tracim, sqlalchemy
|
|
185
|
+
|
|
186
|
+[handlers]
|
|
187
|
+keys = console
|
|
188
|
+
|
|
189
|
+[formatters]
|
|
190
|
+keys = generic
|
|
191
|
+
|
|
192
|
+[logger_root]
|
|
193
|
+level = INFO
|
|
194
|
+handlers = console
|
|
195
|
+
|
|
196
|
+[logger_tracim]
|
|
197
|
+level = DEBUG
|
|
198
|
+handlers =
|
|
199
|
+qualname = tracim
|
|
200
|
+
|
|
201
|
+[logger_sqlalchemy]
|
|
202
|
+level = INFO
|
|
203
|
+handlers =
|
|
204
|
+qualname = sqlalchemy.engine
|
|
205
|
+# "level = INFO" logs SQL queries.
|
|
206
|
+# "level = DEBUG" logs SQL queries and results.
|
|
207
|
+# "level = WARN" logs neither. (Recommended for production systems.)
|
|
208
|
+
|
|
209
|
+[handler_console]
|
|
210
|
+class = StreamHandler
|
|
211
|
+args = (sys.stderr,)
|
|
212
|
+level = NOTSET
|
|
213
|
+formatter = generic
|
|
214
|
+
|
|
215
|
+[formatter_generic]
|
|
216
|
+format = %(asctime)s %(levelname)-5.5s [%(name)s:%(lineno)s][%(threadName)s] %(message)s
|