Mercurial > p > roundup > code
comparison doc/tracker_config.txt @ 7920:6aa0525187cd
doc: use generated config.ini in reference.txt
Deleted the manually maintained config.ini reference items.
Lost a few nice index references along the way but...
Updated configuration.py with longer descriptions from the manually
maintained items where appropriate.
Checking in the generated tracker_config.txt and the Makefile used
to generate the config and the man pages and then generate local
documentation using setup.py build_docs.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Mon, 29 Apr 2024 04:17:10 -0400 |
| parents | |
| children | 83a531e72e3e |
comparison
equal
deleted
inserted
replaced
| 7919:e3b34d02c61a | 7920:6aa0525187cd |
|---|---|
| 1 | |
| 2 .. index:: config.ini; sections main | |
| 3 | |
| 4 .. code:: ini | |
| 5 | |
| 6 [main] | |
| 7 | |
| 8 # Database directory path. | |
| 9 # The path may be either absolute or relative | |
| 10 # to the directory containing this config file. | |
| 11 # Default: db | |
| 12 database = db | |
| 13 | |
| 14 # Templating engine to use. | |
| 15 # Possible values are: | |
| 16 # 'zopetal' for the old TAL engine ported from Zope, | |
| 17 # 'chameleon' for Chameleon, | |
| 18 # 'jinja2' for jinja2 templating. | |
| 19 # Available found jinja2 module. | |
| 20 # Default: zopetal | |
| 21 template_engine = zopetal | |
| 22 | |
| 23 # Path to the HTML templates directory. | |
| 24 # The path may be either absolute or relative | |
| 25 # to the directory containing this config file. | |
| 26 # Default: html | |
| 27 templates = html | |
| 28 | |
| 29 # A list of space separated directory paths (or a single | |
| 30 # directory). These directories hold additional public | |
| 31 # static files available via Web UI. These directories | |
| 32 # may contain sitewide images, CSS stylesheets etc. If a | |
| 33 # '-' is included, the list processing ends and the | |
| 34 # TEMPLATES directory is not searched after the specified | |
| 35 # directories. If this option is not set, all static | |
| 36 # files are taken from the TEMPLATES directory. Access to | |
| 37 # these files is public, it is not checked against | |
| 38 # registered users. So do not put any sensitive data in | |
| 39 # the files in these directories. | |
| 40 # The space separated paths may be either absolute | |
| 41 # or relative to the directory containing this config file. | |
| 42 # Default: | |
| 43 static_files = | |
| 44 | |
| 45 # Email address that roundup will complain to if it runs | |
| 46 # into trouble. | |
| 47 # If no domain is specified then the config item | |
| 48 # mail -> domain is added. | |
| 49 # Default: roundup-admin | |
| 50 admin_email = roundup-admin | |
| 51 | |
| 52 # The 'dispatcher' is a role that can get notified | |
| 53 # when errors occur while sending email to a user. | |
| 54 # It is used by the ERROR_MESSAGES_TO config setting. | |
| 55 # If no domain is specified then the config item | |
| 56 # mail -> domain is added. | |
| 57 # Default: roundup-admin | |
| 58 dispatcher_email = roundup-admin | |
| 59 | |
| 60 # Additional text to include in the "name" part | |
| 61 # of the From: address used in nosy messages. | |
| 62 # If the sending user is "Foo Bar", the From: line | |
| 63 # is usually: "Foo Bar" <issue_tracker@tracker.example> | |
| 64 # the EMAIL_FROM_TAG goes inside the "Foo Bar" quotes like so: | |
| 65 # "Foo Bar EMAIL_FROM_TAG" <issue_tracker@tracker.example> | |
| 66 # Default: | |
| 67 email_from_tag = | |
| 68 | |
| 69 # Roles that a user gets when they register | |
| 70 # with Web User Interface. | |
| 71 # This is a comma-separated string of role names | |
| 72 # (e.g. 'Admin,User'). | |
| 73 # Default: User | |
| 74 new_web_user_roles = User | |
| 75 | |
| 76 # Roles that a user gets when they register | |
| 77 # with Email Gateway. | |
| 78 # This is a comma-separated string of role names | |
| 79 # (e.g. 'Admin,User'). | |
| 80 # Default: User | |
| 81 new_email_user_roles = User | |
| 82 | |
| 83 # On schema changes, properties or classes in the history may | |
| 84 # become obsolete. Since normal access permissions do not apply | |
| 85 # (we don't know if a user should see such a property or class) | |
| 86 # a list of roles is specified here that are allowed to see | |
| 87 # these obsolete properties in the history. By default only the | |
| 88 # admin role may see these history entries, you can make them | |
| 89 # visible to all users by adding, e.g., the 'User' role here. | |
| 90 # Default: Admin | |
| 91 obsolete_history_roles = Admin | |
| 92 | |
| 93 # Send error message emails to the "dispatcher", "user", | |
| 94 # or "both" (these are the three allowed values). | |
| 95 # The dispatcher is configured using the DISPATCHER_EMAIL | |
| 96 # setting. | |
| 97 # Default: user | |
| 98 error_messages_to = user | |
| 99 | |
| 100 # This setting should be left at the default value of html4. | |
| 101 # Support is ending for xhtml mode. | |
| 102 # HTML version to generate. The templates are html4 by default. | |
| 103 # If you wish to make them xhtml, then you'll need to change | |
| 104 # this setting to 'xhtml' too so all auto-generated HTML | |
| 105 # is compliant. | |
| 106 # Allowed values: html4, xhtml | |
| 107 # Default: html4 | |
| 108 html_version = html4 | |
| 109 | |
| 110 # Default timezone offset, | |
| 111 # applied when user's timezone is not set. | |
| 112 # If pytz module is installed, value may be any valid | |
| 113 # timezone specification (e.g. EET or Europe/Warsaw). | |
| 114 # If pytz is not installed, value must be integer number | |
| 115 # giving local timezone offset from UTC in hours. | |
| 116 # Default: UTC | |
| 117 timezone = UTC | |
| 118 | |
| 119 # Register new users instantly, or require confirmation via | |
| 120 # email? | |
| 121 # Allowed values: yes, no | |
| 122 # Default: no | |
| 123 instant_registration = no | |
| 124 | |
| 125 # Offer registration confirmation by email or only | |
| 126 # through the web? | |
| 127 # Allowed values: yes, no | |
| 128 # Default: yes | |
| 129 email_registration_confirmation = yes | |
| 130 | |
| 131 # Force Roundup to use a particular text indexer. | |
| 132 # If no indexer is supplied, the first available indexer | |
| 133 # will be used in the following order: | |
| 134 # Possible values: xapian, whoosh, native (internal), native-fts. | |
| 135 # Note 'native-fts' will only be used if set. | |
| 136 # Allowed values: '', 'xapian', 'whoosh', 'native', 'native-fts' | |
| 137 # Default: | |
| 138 indexer = | |
| 139 | |
| 140 # Used to determine what language should be used by the | |
| 141 # indexer above. Applies to Xapian and PostgreSQL native-fts | |
| 142 # indexer. It sets the language for the stemmer, and PostgreSQL | |
| 143 # native-fts stopwords and other dictionaries. | |
| 144 # Possible values: must be a valid language for the indexer, | |
| 145 # see indexer documentation for details. | |
| 146 # Default: english | |
| 147 indexer_language = english | |
| 148 | |
| 149 # Additional stop-words for the full-text indexer specific to | |
| 150 # your tracker. See the indexer source for the default list of | |
| 151 # stop-words (eg. A,AND,ARE,AS,AT,BE,BUT,BY, ...). This is | |
| 152 # not used by the postgres native-fts indexer. But is used to | |
| 153 # filter search terms with the sqlite native-fts indexer. | |
| 154 # Allowed values: comma-separated list of words | |
| 155 # Default: | |
| 156 indexer_stopwords = | |
| 157 | |
| 158 # Defines the file creation mode mask. | |
| 159 # Default: 0o2 | |
| 160 umask = 0o2 | |
| 161 | |
| 162 # Maximum size of a csv-field during import. Roundups export | |
| 163 # format is a csv (comma separated values) variant. The csv | |
| 164 # reader has a limit on the size of individual fields | |
| 165 # starting with python 2.5. Set this to a higher value if you | |
| 166 # get the error 'Error: field larger than field limit' during | |
| 167 # import. | |
| 168 # Default: 131072 | |
| 169 csv_field_size = 131072 | |
| 170 | |
| 171 # Sets the default number of rounds used when encoding passwords | |
| 172 # using the PBKDF2 scheme. Set this to a higher value on faster | |
| 173 # systems which want more security. | |
| 174 # PBKDF2 (Password-Based Key Derivation Function) is a | |
| 175 # password hashing mechanism that derives hash from the | |
| 176 # password and a random salt. For authentication this process | |
| 177 # is repeated with the same salt as in the stored hash. | |
| 178 # If both hashes match, the authentication succeeds. | |
| 179 # PBKDF2 supports a variable 'rounds' parameter which varies | |
| 180 # the time-cost of calculating the hash - doubling the number | |
| 181 # of rounds doubles the cpu time required to calculate it. The | |
| 182 # purpose of this is to periodically adjust the rounds as CPUs | |
| 183 # become faster. The currently enforced minimum number of | |
| 184 # rounds is 1000. | |
| 185 # See: http://en.wikipedia.org/wiki/PBKDF2 and RFC2898 | |
| 186 # Default: 2000000 | |
| 187 password_pbkdf2_default_rounds = 2000000 | |
| 188 | |
| 189 .. index:: config.ini; sections tracker | |
| 190 | |
| 191 .. code:: ini | |
| 192 | |
| 193 [tracker] | |
| 194 | |
| 195 # A descriptive name for your roundup instance. | |
| 196 # Default: Roundup issue tracker | |
| 197 name = Roundup issue tracker | |
| 198 | |
| 199 # The web address that the tracker is viewable at. | |
| 200 # This will be included in information | |
| 201 # sent to users of the tracker. | |
| 202 # The URL MUST include the cgi-bin part or anything else | |
| 203 # that is required to get to the home page of the tracker. | |
| 204 # URL MUST start with http/https scheme and end with '/' | |
| 205 # Default: NO DEFAULT | |
| 206 #web = NO DEFAULT | |
| 207 | |
| 208 # Email address that mail to roundup should go to. | |
| 209 # If no domain is specified then mail_domain is added. | |
| 210 # Default: issue_tracker | |
| 211 email = issue_tracker | |
| 212 | |
| 213 # Controls the reply-to header address used when sending | |
| 214 # nosy messages. | |
| 215 # If the value is unset (default) the roundup tracker's | |
| 216 # email address (above) is used. | |
| 217 # If set to "AUTHOR" then the primary email address of the | |
| 218 # author of the change will be used as the reply-to | |
| 219 # address. This allows email exchanges to occur outside of | |
| 220 # the view of roundup and exposes the address of the person | |
| 221 # who updated the issue, but it could be useful in some | |
| 222 # unusual circumstances. | |
| 223 # If set to some other value, the value is used as the reply-to | |
| 224 # address. It must be a valid RFC2822 address or people will not | |
| 225 # be able to reply. | |
| 226 # Default: | |
| 227 replyto_address = | |
| 228 | |
| 229 # Default locale name for this tracker. | |
| 230 # If this option is not set, the language is determined | |
| 231 # by OS environment variable LANGUAGE, LC_ALL, LC_MESSAGES, | |
| 232 # or LANG, in that order of preference. | |
| 233 # Default: | |
| 234 language = | |
| 235 | |
| 236 .. index:: config.ini; sections web | |
| 237 | |
| 238 .. code:: ini | |
| 239 | |
| 240 [web] | |
| 241 | |
| 242 # Setting this option enables Roundup to serve uploaded HTML | |
| 243 # file content *as HTML*. This is a potential security risk | |
| 244 # and is therefore disabled by default. Set to 'yes' if you | |
| 245 # trust *all* users uploading content to your tracker. | |
| 246 # Allowed values: yes, no | |
| 247 # Default: no | |
| 248 allow_html_file = no | |
| 249 | |
| 250 # Whether to use HTTP Basic Authentication, if present. | |
| 251 # Roundup will use either the REMOTE_USER (the value set | |
| 252 # by http_auth_header) or HTTP_AUTHORIZATION | |
| 253 # variables supplied by your web server (in that order). | |
| 254 # Set this option to 'no' if you do not wish to use HTTP Basic | |
| 255 # Authentication in your web interface. | |
| 256 # Allowed values: yes, no | |
| 257 # Default: yes | |
| 258 http_auth = yes | |
| 259 | |
| 260 # The HTTP header that holds the user authentication information. | |
| 261 # If empty (default) the REMOTE_USER header is used. | |
| 262 # This is used when the upstream HTTP server authenticates | |
| 263 # the user and passes the username using this HTTP header. | |
| 264 # Default: | |
| 265 http_auth_header = | |
| 266 | |
| 267 # Setting this option makes roundup look at the Accept-Encoding | |
| 268 # header supplied by the client. It will compress the response | |
| 269 # on the fly using a common encoding. Disable it if your | |
| 270 # upstream server does compression of dynamic data. | |
| 271 # Allowed values: yes, no | |
| 272 # Default: yes | |
| 273 dynamic_compression = yes | |
| 274 | |
| 275 # Setting this option enables Roundup to serve precompressed | |
| 276 # static files. The admin must create the compressed files with | |
| 277 # proper extension (.gzip, .br, .zstd) in the same directory as | |
| 278 # the uncompressed file. If a precompressed file doesn't | |
| 279 # exist, the uncompressed file will be served possibly with | |
| 280 # dynamic compression. | |
| 281 # Allowed values: yes, no | |
| 282 # Default: no | |
| 283 use_precompressed_files = no | |
| 284 | |
| 285 # If usernames consist of a name and a domain/realm part of | |
| 286 # the form user@realm and we're using REMOTE_USER for | |
| 287 # authentication (e.g. via Kerberos), convert the realm part | |
| 288 # of the incoming REMOTE_USER to lowercase before matching | |
| 289 # against the roundup username. This allows roundup usernames | |
| 290 # to be lowercase (including the realm) and still follow the | |
| 291 # Kerberos convention of using an uppercase realm. In | |
| 292 # addition this is compatible with Active Directory which | |
| 293 # stores the username with realm as UserPrincipalName in | |
| 294 # lowercase. | |
| 295 # Allowed values: yes, no | |
| 296 # Default: no | |
| 297 http_auth_convert_realm_to_lowercase = no | |
| 298 | |
| 299 # If the http_auth option is in effect (see above) | |
| 300 # we're accepting a REMOTE_USER variable resulting from | |
| 301 # an authentication mechanism implemented in the web-server, | |
| 302 # e.g., Kerberos login or similar. To override the mechanism | |
| 303 # provided by the web-server (e.g. for enabling sub-login as | |
| 304 # another user) we tell roundup that the cookie takes | |
| 305 # precedence over a REMOTE_USER or HTTP_AUTHORIZATION | |
| 306 # variable. So if both, a cookie and a REMOTE_USER is | |
| 307 # present, the cookie wins. | |
| 308 # | |
| 309 # Allowed values: yes, no | |
| 310 # Default: no | |
| 311 cookie_takes_precedence = no | |
| 312 | |
| 313 # Limit login attempts per user per minute to this number. | |
| 314 # By default the 4th login attempt in a minute will notify | |
| 315 # the user that they need to wait 20 seconds before trying to | |
| 316 # log in again. This limits password guessing attacks and | |
| 317 # shouldn't need to be changed. Rate limiting on login can | |
| 318 # be disabled by setting the value to 0. | |
| 319 # Default: 3 | |
| 320 login_attempts_min = 3 | |
| 321 | |
| 322 # The number of seconds needed to complete the new user | |
| 323 # registration form. This limits the rate at which bots | |
| 324 # can attempt to sign up. Limit can be disabled by setting | |
| 325 # the value to 0. | |
| 326 # Default: 4 | |
| 327 registration_delay = 4 | |
| 328 | |
| 329 # When registering a user, check that the username | |
| 330 # is available before sending confirmation email. | |
| 331 # Usually a username conflict is detected when | |
| 332 # confirming the registration. Disabled by default as | |
| 333 # it can be used for guessing existing usernames. | |
| 334 # | |
| 335 # Allowed values: yes, no | |
| 336 # Default: no | |
| 337 registration_prevalidate_username = no | |
| 338 | |
| 339 # Set the mode of the SameSite cookie option for | |
| 340 # the session cookie. Choices are 'Lax' or | |
| 341 # 'Strict'. 'None' can be used to suppress the | |
| 342 # option. Strict mode provides additional security | |
| 343 # against CSRF attacks, but may confuse users who | |
| 344 # are logged into roundup and open a roundup link | |
| 345 # from a source other than roundup (e.g. link in | |
| 346 # email). | |
| 347 # Allowed values: Strict, Lax, None | |
| 348 # Default: Lax | |
| 349 samesite_cookie_setting = Lax | |
| 350 | |
| 351 # Whether to enable the XMLRPC API in the roundup web | |
| 352 # interface. By default the XMLRPC endpoint is the string | |
| 353 # 'xmlrpc' after the roundup web url configured in the | |
| 354 # 'tracker' section. If this variable is set to 'no', the | |
| 355 # xmlrpc path has no special meaning and will yield an | |
| 356 # error message. | |
| 357 # Allowed values: yes, no | |
| 358 # Default: yes | |
| 359 enable_xmlrpc = yes | |
| 360 | |
| 361 # Whether to enable i18n for the xmlrpc endpoint. Enable it if | |
| 362 # you want to enable translation based on browsers lang | |
| 363 # (if enabled), trackers lang (if set) or environment. | |
| 364 # Allowed values: yes, no | |
| 365 # Default: no | |
| 366 translate_xmlrpc = no | |
| 367 | |
| 368 # Whether to enable the REST API in the roundup web | |
| 369 # interface. By default the REST endpoint is the string | |
| 370 # 'rest' plus any additional REST-API parameters after the | |
| 371 # roundup web url configured in the tracker section. If this | |
| 372 # variable is set to 'no', the rest path has no special meaning | |
| 373 # and will yield an error message. | |
| 374 # Allowed values: yes, no | |
| 375 # Default: yes | |
| 376 enable_rest = yes | |
| 377 | |
| 378 # Whether to enable i18n for the rest endpoint. Enable it if | |
| 379 # you want to enable translation based on browsers lang | |
| 380 # (if enabled), trackers lang (if set) or environment. | |
| 381 # Allowed values: yes, no | |
| 382 # Default: no | |
| 383 translate_rest = no | |
| 384 | |
| 385 # Log-Level for REST errors. | |
| 386 # Allowed values: none, debug, info, warning, error, critical | |
| 387 # Default: none | |
| 388 rest_logging = none | |
| 389 | |
| 390 # Limit API calls per api_interval_in_sec seconds to | |
| 391 # this number. | |
| 392 # Determines the burst rate and the rate that new api | |
| 393 # calls will be made available. If set to 360 and | |
| 394 # api_intervals_in_sec is set to 3600, the 361st call in | |
| 395 # 10 seconds results in a 429 error to the caller. It | |
| 396 # tells them to wait 10 seconds (3600/360) before making | |
| 397 # another api request. A value of 0 turns off rate | |
| 398 # limiting in the API. Tune this as needed. See rest | |
| 399 # documentation for more info. | |
| 400 # | |
| 401 # Default: 0 | |
| 402 api_calls_per_interval = 0 | |
| 403 | |
| 404 # Defines the interval in seconds over which an api client can | |
| 405 # make api_calls_per_interval api calls. Tune this as needed. | |
| 406 # | |
| 407 # Default: 3600 | |
| 408 api_interval_in_sec = 3600 | |
| 409 | |
| 410 # Limit login failure to the API per api_failed_login_interval_in_sec | |
| 411 # seconds. | |
| 412 # A value of 0 turns off failed login rate | |
| 413 # limiting in the API. You should not disable this. See rest | |
| 414 # documentation for more info. | |
| 415 # | |
| 416 # Default: 4 | |
| 417 api_failed_login_limit = 4 | |
| 418 | |
| 419 # Defines the interval in seconds over which api login failures | |
| 420 # are recorded. It allows api_failed_login_limit login failures | |
| 421 # in this time interval. Tune this as needed. | |
| 422 # | |
| 423 # Default: 600 | |
| 424 api_failed_login_interval_in_sec = 600 | |
| 425 | |
| 426 # How do we deal with @csrf fields in posted forms. | |
| 427 # Set this to 'required' to block the post and notify | |
| 428 # the user if the field is missing or invalid. | |
| 429 # Set this to 'yes' to block the post and notify the user | |
| 430 # if the token is invalid, but accept the form if | |
| 431 # the field is missing. | |
| 432 # Set this to 'logfailure' to log a notice to the roundup | |
| 433 # log if the field is invalid or missing, but accept | |
| 434 # the post. | |
| 435 # Set this to 'no' to ignore the field and accept the post. | |
| 436 # | |
| 437 # Allowed values: required, yes, logfailure, no | |
| 438 # Default: yes | |
| 439 csrf_enforce_token = yes | |
| 440 | |
| 441 # csrf_tokens have a limited lifetime. If they are not | |
| 442 # used they are purged from the database after this | |
| 443 # number of minutes. Default (20160) is 2 weeks. | |
| 444 # Default: 20160 | |
| 445 csrf_token_lifetime = 20160 | |
| 446 | |
| 447 # This is only used for xmlrpc and rest requests. This test is | |
| 448 # done after Origin and Referer headers are checked. It only | |
| 449 # verifies that the X-Requested-With header exists. The value | |
| 450 # is ignored. | |
| 451 # Set this to 'required' to block the post and notify | |
| 452 # the user if the header is missing or invalid. | |
| 453 # Set this to 'yes' is the same as required. | |
| 454 # Set this to 'logfailure' is the same as 'no'. | |
| 455 # Set this to 'no' to ignore the header and accept the post. | |
| 456 # Allowed values: required, yes, logfailure, no | |
| 457 # Default: yes | |
| 458 csrf_enforce_header_x-requested-with = yes | |
| 459 | |
| 460 # Verify that the Referer http header matches the | |
| 461 # tracker.web setting in config.ini. | |
| 462 # Set this to 'required' to block the post and notify | |
| 463 # the user if the header is missing or invalid. | |
| 464 # Set this to 'yes' to block the post and notify the user | |
| 465 # if the header is invalid, but accept the form if | |
| 466 # the field is missing. | |
| 467 # Set this to 'logfailure' to log a notice to the roundup | |
| 468 # log if the header is invalid or missing, but accept | |
| 469 # the post. | |
| 470 # Set this to 'no' to ignore the header and accept the post. | |
| 471 # Allowed values: required, yes, logfailure, no | |
| 472 # Default: yes | |
| 473 csrf_enforce_header_referer = yes | |
| 474 | |
| 475 # Verify that the Origin http header matches the | |
| 476 # tracker.web setting in config.ini. | |
| 477 # Set this to 'required' to block the post and notify | |
| 478 # the user if the header is missing or invalid. | |
| 479 # Set this to 'yes' to block the post and notify the user | |
| 480 # if the header is invalid, but accept the form if | |
| 481 # the field is missing. | |
| 482 # Set this to 'logfailure' to log a notice to the roundup | |
| 483 # log if the header is invalid or missing, but accept | |
| 484 # the post. | |
| 485 # Set this to 'no' to ignore the header and accept the post. | |
| 486 # Allowed values: required, yes, logfailure, no | |
| 487 # Default: yes | |
| 488 csrf_enforce_header_origin = yes | |
| 489 | |
| 490 # A comma separated list of additonal valid Origin header | |
| 491 # values used when enforcing the header origin. They are used | |
| 492 # only for the api URL's (/rest and /xmlrpc). They are not | |
| 493 # used for the usual html URL's. These strings must match the | |
| 494 # value of the Origin header exactly. So 'https://bar.edu' and | |
| 495 # 'https://Bar.edu' are two different Origin values. Note that | |
| 496 # the origin value is scheme://host. There is no path | |
| 497 # component. So 'https://bar.edu/' would never be valid. | |
| 498 # The value '*' can be used to match any origin. It must be | |
| 499 # first in the list if used. Note that this value allows | |
| 500 # any web page on the internet to make anonymous requests | |
| 501 # against your Roundup tracker. | |
| 502 # | |
| 503 # You need to set these if you have a web application on a | |
| 504 # different origin accessing your Roundup instance. | |
| 505 # | |
| 506 # (The origin from the tracker.web setting in config.ini is | |
| 507 # always valid and does not need to be specified.) | |
| 508 # A list of space separated case sensitive | |
| 509 # origin headers 'scheme://host'. | |
| 510 # Default: | |
| 511 allowed_api_origins = | |
| 512 | |
| 513 # Verify that the X-Forwarded-Host http header matches | |
| 514 # the host part of the tracker.web setting in config.ini. | |
| 515 # Set this to 'required' to block the post and notify | |
| 516 # the user if the header is missing or invalid. | |
| 517 # Set this to 'yes' to block the post and notify the user | |
| 518 # if the header is invalid, but accept the form if | |
| 519 # the field is missing. | |
| 520 # Set this to 'logfailure' to log a notice to the roundup | |
| 521 # log if the header is invalid or missing, but accept | |
| 522 # the post. | |
| 523 # Set this to 'no' to ignore the header and accept the post. | |
| 524 # Allowed values: required, yes, logfailure, no | |
| 525 # Default: yes | |
| 526 csrf_enforce_header_x-forwarded-host = yes | |
| 527 | |
| 528 # "If there is no X-Forward-Host header, verify that | |
| 529 # the Host http header matches the host part of the | |
| 530 # tracker.web setting in config.ini. | |
| 531 # Set this to 'required' to block the post and notify | |
| 532 # the user if the header is missing or invalid. | |
| 533 # Set this to 'yes' to block the post and notify the user | |
| 534 # if the header is invalid, but accept the form if | |
| 535 # the field is missing. | |
| 536 # Set this to 'logfailure' to log a notice to the roundup | |
| 537 # log if the header is invalid or missing, but accept | |
| 538 # the post. | |
| 539 # Set this to 'no' to ignore the header and accept the post. | |
| 540 # Allowed values: required, yes, logfailure, no | |
| 541 # Default: yes | |
| 542 csrf_enforce_header_host = yes | |
| 543 | |
| 544 # Minimum number of header checks that must pass | |
| 545 # to accept the request. Set to 0 to accept post | |
| 546 # even if no header checks pass. Usually the Host header check | |
| 547 # always passes, so setting it less than 1 is not recommended. | |
| 548 # Default: 1 | |
| 549 csrf_header_min_count = 1 | |
| 550 | |
| 551 # Whether to use HTTP Accept-Language, if present. | |
| 552 # Browsers send a language-region preference list. | |
| 553 # It's usually set in the client's browser or in their | |
| 554 # Operating System. | |
| 555 # Set this option to 'no' if you want to ignore it. | |
| 556 # Allowed values: yes, no | |
| 557 # Default: yes | |
| 558 use_browser_language = yes | |
| 559 | |
| 560 # Setting this option makes Roundup display error tracebacks | |
| 561 # in the user's browser rather than emailing them to the | |
| 562 # tracker admin. | |
| 563 # Allowed values: yes, no | |
| 564 # Default: no | |
| 565 debug = no | |
| 566 | |
| 567 # Setting this option to yes/true allows users with | |
| 568 # an empty/blank password to login to the | |
| 569 # web/http interfaces. | |
| 570 # Allowed values: yes, no | |
| 571 # Default: no | |
| 572 login_empty_passwords = no | |
| 573 | |
| 574 # Setting this option makes Roundup migrate passwords with | |
| 575 # an insecure password-scheme to a more secure scheme | |
| 576 # when the user logs in via the web-interface. | |
| 577 # Allowed values: yes, no | |
| 578 # Default: yes | |
| 579 migrate_passwords = yes | |
| 580 | |
| 581 # A per tracker secret used in etag calculations for | |
| 582 # an object. It must not be empty. | |
| 583 # It prevents reverse engineering hidden data in an object | |
| 584 # by calculating the etag for a sample object. Then modifying | |
| 585 # hidden properties until the sample object's etag matches | |
| 586 # the one returned by roundup. | |
| 587 # Changing this changes the etag and invalidates updates by | |
| 588 # clients. It must be persistent across application restarts. | |
| 589 # (Note the default value changes every time | |
| 590 # roundup-admin updateconfig | |
| 591 # is run, so it must be explicitly set to a non-empty string. | |
| 592 # | |
| 593 # A string that starts with 'file://' is interpreted | |
| 594 # as a file path relative to the tracker home. Using | |
| 595 # 'file:///' defines an absolute path. The first | |
| 596 # line of the file will be used as the value. Any | |
| 597 # string that does not start with 'file://' is used | |
| 598 # as is. It removes any whitespace at the end of the | |
| 599 # line, so a newline can be put in the file. | |
| 600 # | |
| 601 # Default: 3CpCdT9GrdQv7SCn24DTIQTwAoBguqhAopZnXRZA38w= | |
| 602 secret_key = 3CpCdT9GrdQv7SCn24DTIQTwAoBguqhAopZnXRZA38w= | |
| 603 | |
| 604 # This is used to sign/validate json web tokens | |
| 605 # (JWT). Even if you don't use JWTs it must not be | |
| 606 # empty. You can use multiple secrets separated by a | |
| 607 # comma ','. This allows for secret rotation. The newest | |
| 608 # secret should be placed first and used for signing. The | |
| 609 # rest of the secrets are used for validating an old JWT. | |
| 610 # If the first secret is less than 256 bits (32 | |
| 611 # characters) in length JWTs are disabled. If other secrets | |
| 612 # are less than 32 chars, the application will exit. Removing | |
| 613 # a secret from this list invalidates all JWTs signed with | |
| 614 # the secret. JWT support is experimental and disabled by | |
| 615 # default. The secrets must be persistent across | |
| 616 # application restarts. | |
| 617 # | |
| 618 # A string that starts with 'file://' is interpreted | |
| 619 # as a file path relative to the tracker home. Using | |
| 620 # 'file:///' defines an absolute path. The first | |
| 621 # line of the file will be used as the value. Any | |
| 622 # string that does not start with 'file://' is used | |
| 623 # as is. It removes any whitespace at the end of the | |
| 624 # line, so a newline can be put in the file. | |
| 625 # | |
| 626 # Default: disabled | |
| 627 jwt_secret = disabled | |
| 628 | |
| 629 .. index:: config.ini; sections rdbms | |
| 630 | |
| 631 .. code:: ini | |
| 632 | |
| 633 # Settings in this section (except for backend) are used | |
| 634 # by RDBMS backends only. | |
| 635 [rdbms] | |
| 636 | |
| 637 # Database backend. | |
| 638 # Available backends: anydbm, mysql, sqlite, postgresql | |
| 639 # Default: NO DEFAULT | |
| 640 #backend = NO DEFAULT | |
| 641 | |
| 642 # Name of the database to use. For Postgresql, this can | |
| 643 # be database.schema to use a specific schema within | |
| 644 # a Postgres database. | |
| 645 # Default: roundup | |
| 646 name = roundup | |
| 647 | |
| 648 # Database server host. | |
| 649 # Default: localhost | |
| 650 host = localhost | |
| 651 | |
| 652 # TCP port number of the database server. | |
| 653 # Postgresql usually resides on port 5432 (if any), | |
| 654 # for MySQL default port number is 3306. | |
| 655 # Leave this option empty to use backend default | |
| 656 # Default: | |
| 657 port = | |
| 658 | |
| 659 # Database user name that Roundup should use. | |
| 660 # Default: roundup | |
| 661 user = roundup | |
| 662 | |
| 663 # Database user password. | |
| 664 # A string that starts with 'file://' is interpreted | |
| 665 # as a file path relative to the tracker home. Using | |
| 666 # 'file:///' defines an absolute path. The first | |
| 667 # line of the file will be used as the value. Any | |
| 668 # string that does not start with 'file://' is used | |
| 669 # as is. It removes any whitespace at the end of the | |
| 670 # line, so a newline can be put in the file. | |
| 671 # | |
| 672 # Default: roundup | |
| 673 password = roundup | |
| 674 | |
| 675 # Name of the PostgreSQL connection service for this Roundup | |
| 676 # instance. Only used in Postgresql connections. You need to set | |
| 677 # up a pg_service.conf file usable by psql use this option. | |
| 678 # Default: | |
| 679 service = | |
| 680 | |
| 681 # Name of the MySQL defaults file. | |
| 682 # Only used in MySQL connections. | |
| 683 # Default: ~/.my.cnf | |
| 684 read_default_file = ~/.my.cnf | |
| 685 | |
| 686 # Name of the group to use in the MySQL defaults file (.my.cnf). | |
| 687 # Only used in MySQL connections. | |
| 688 # Default: roundup | |
| 689 read_default_group = roundup | |
| 690 | |
| 691 # Charset to use for mysql connection and databases. | |
| 692 # If set to 'default', no charset option is used when | |
| 693 # creating the db connection and utf8mb4 is used for the | |
| 694 # database charset. | |
| 695 # Otherwise any permissible mysql charset is allowed here. | |
| 696 # Only used in MySQL connections. | |
| 697 # Default: utf8mb4 | |
| 698 mysql_charset = utf8mb4 | |
| 699 | |
| 700 # Comparison/order to use for mysql database/table collations. | |
| 701 # When upgrading, you can use 'utf8' to match the | |
| 702 # depricated 'utf8mb3'. This must be compatible with the | |
| 703 # mysql_charset setting above. Only used by MySQL. | |
| 704 # Default: utf8mb4_unicode_ci | |
| 705 mysql_collation = utf8mb4_unicode_ci | |
| 706 | |
| 707 # Comparison/order to use for mysql database/table collations | |
| 708 # when matching case. When upgrading, you can use 'utf8_bin' | |
| 709 # to match the depricated 'utf8mb3_bin' collation. This must | |
| 710 # be compatible with the mysql_collation above. Only used | |
| 711 # by MySQL. | |
| 712 # Default: utf8mb4_0900_bin | |
| 713 mysql_binary_collation = utf8mb4_0900_bin | |
| 714 | |
| 715 # Number of seconds to wait when the SQLite database is locked | |
| 716 # Default: use a 30 second timeout (extraordinarily generous) | |
| 717 # Only used in SQLite connections. | |
| 718 # Default: 30 | |
| 719 sqlite_timeout = 30 | |
| 720 | |
| 721 # Size of the node cache (in elements). Used to keep the | |
| 722 # most recently used data in memory. | |
| 723 # Default: 100 | |
| 724 cache_size = 100 | |
| 725 | |
| 726 # Setting this option to 'no' protects the database against | |
| 727 # table creations. | |
| 728 # Allowed values: yes, no | |
| 729 # Default: yes | |
| 730 allow_create = yes | |
| 731 | |
| 732 # Setting this option to 'no' protects the database against | |
| 733 # table alterations. | |
| 734 # Allowed values: yes, no | |
| 735 # Default: yes | |
| 736 allow_alter = yes | |
| 737 | |
| 738 # Setting this option to 'no' protects the database against | |
| 739 # table drops. | |
| 740 # Allowed values: yes, no | |
| 741 # Default: yes | |
| 742 allow_drop = yes | |
| 743 | |
| 744 # Name of the PostgreSQL template for database creation. | |
| 745 # For database creation the template used has to match | |
| 746 # the character encoding used (UTF8), there are different | |
| 747 # PostgreSQL installations using different templates with | |
| 748 # different encodings. If you get an error: | |
| 749 # new encoding (UTF8) is incompatible with the encoding of | |
| 750 # the template database (SQL_ASCII) | |
| 751 # HINT: Use the same encoding as in the template database, | |
| 752 # or use template0 as template. | |
| 753 # then set this option to the template name given in the | |
| 754 # error message. | |
| 755 # Default: | |
| 756 template = | |
| 757 | |
| 758 # Database isolation level, currently supported for | |
| 759 # PostgreSQL and mysql. See, e.g., | |
| 760 # http://www.postgresql.org/docs/9.1/static/transaction-iso.html | |
| 761 # Allowed values: 'read uncommitted', 'read committed', 'repeatable read', 'serializable' | |
| 762 # Default: read committed | |
| 763 isolation_level = read committed | |
| 764 | |
| 765 # Set the database cursor for filter queries to serverside | |
| 766 # cursor, this avoids caching large amounts of data in the | |
| 767 # client. This option only applies for the postgresql backend. | |
| 768 # Allowed values: yes, no | |
| 769 # Default: yes | |
| 770 serverside_cursor = yes | |
| 771 | |
| 772 .. index:: config.ini; sections sessiondb | |
| 773 | |
| 774 .. code:: ini | |
| 775 | |
| 776 # Choose configuration for session and one time key storage. | |
| 777 [sessiondb] | |
| 778 | |
| 779 # Set backend for storing one time key (otk) and session data. | |
| 780 # Values have to be compatible with main backend. | |
| 781 # main\/ session>| anydbm | sqlite | redis | mysql | postgresql | | |
| 782 # anydbm | D | | X | | | | |
| 783 # sqlite | X | D | X | | | | |
| 784 # mysql | | | | D | | | |
| 785 # postgresql | | | | | D | | |
| 786 # -------------------------------------------------------------+ | |
| 787 # D - default if unset, X - compatible choice | |
| 788 # Default: | |
| 789 backend = | |
| 790 | |
| 791 # URL used to connect to redis. Default uses unauthenticated | |
| 792 # redis database 0 running on localhost with default port. | |
| 793 # | |
| 794 # A string that starts with 'file://' is interpreted | |
| 795 # as a file path relative to the tracker home. Using | |
| 796 # 'file:///' defines an absolute path. The first | |
| 797 # line of the file will be used as the value. Any | |
| 798 # string that does not start with 'file://' is used | |
| 799 # as is. It removes any whitespace at the end of the | |
| 800 # line, so a newline can be put in the file. | |
| 801 # | |
| 802 # Default: redis://localhost:6379/0?health_check_interval=2 | |
| 803 redis_url = redis://localhost:6379/0?health_check_interval=2 | |
| 804 | |
| 805 .. index:: config.ini; sections logging | |
| 806 | |
| 807 .. code:: ini | |
| 808 | |
| 809 [logging] | |
| 810 | |
| 811 # Path to configuration file for standard Python logging module. | |
| 812 # If this option is set, logging configuration is loaded | |
| 813 # from specified file; options 'filename' and 'level' | |
| 814 # in this section are ignored. | |
| 815 # The path may be either absolute or relative | |
| 816 # to the directory containing this config file. | |
| 817 # Default: | |
| 818 config = | |
| 819 | |
| 820 # Log file name for minimal logging facility built into Roundup. | |
| 821 # If no file name specified, log messages are written on stderr. | |
| 822 # If above 'config' option is set, this option has no effect. | |
| 823 # The path may be either absolute or relative | |
| 824 # to the directory containing this config file. | |
| 825 # Default: | |
| 826 filename = | |
| 827 | |
| 828 # Minimal severity level of messages written to log file. | |
| 829 # If above 'config' option is set, this option has no effect. | |
| 830 # Allowed values: DEBUG, INFO, WARNING, ERROR | |
| 831 # Default: ERROR | |
| 832 level = ERROR | |
| 833 | |
| 834 # If set to yes, only the loggers configured in this section will | |
| 835 # be used. Yes will disable gunicorn's --access-logfile. | |
| 836 # | |
| 837 # Allowed values: yes, no | |
| 838 # Default: no | |
| 839 disable_loggers = no | |
| 840 | |
| 841 .. index:: config.ini; sections mail | |
| 842 | |
| 843 .. code:: ini | |
| 844 | |
| 845 # Outgoing email options. | |
| 846 # Used for nosy messages, password reset and registration approval | |
| 847 # requests. | |
| 848 [mail] | |
| 849 | |
| 850 # The email domain that admin_email, issue_tracker and | |
| 851 # dispatcher_email belong to. | |
| 852 # This domain is added to those config items if they don't | |
| 853 # explicitly include a domain. | |
| 854 # Do not include the '@' symbol. | |
| 855 # Default: NO DEFAULT | |
| 856 #domain = NO DEFAULT | |
| 857 | |
| 858 # SMTP mail host that roundup will use to send mail | |
| 859 # Default: NO DEFAULT | |
| 860 #host = NO DEFAULT | |
| 861 | |
| 862 # SMTP login name. | |
| 863 # Set this if your mail host requires authenticated access. | |
| 864 # If username is not empty, password (below) MUST be set! | |
| 865 # Default: | |
| 866 username = | |
| 867 | |
| 868 # SMTP login password. | |
| 869 # Set this if your mail host requires authenticated access. | |
| 870 # A string that starts with 'file://' is interpreted | |
| 871 # as a file path relative to the tracker home. Using | |
| 872 # 'file:///' defines an absolute path. The first | |
| 873 # line of the file will be used as the value. Any | |
| 874 # string that does not start with 'file://' is used | |
| 875 # as is. It removes any whitespace at the end of the | |
| 876 # line, so a newline can be put in the file. | |
| 877 # | |
| 878 # Default: NO DEFAULT | |
| 879 #password = NO DEFAULT | |
| 880 | |
| 881 # Default port to send SMTP on. | |
| 882 # Set this if your mail server runs on a different port. | |
| 883 # Default: 25 | |
| 884 port = 25 | |
| 885 | |
| 886 # The (fully qualified) host/ domain name (FQDN) to use during | |
| 887 # SMTP sessions. If left blank, the underlying SMTP library will | |
| 888 # attempt to detect your FQDN. Set this if your mail server | |
| 889 # requires something specific. | |
| 890 # | |
| 891 # Default: | |
| 892 local_hostname = | |
| 893 | |
| 894 # If your SMTP mail host provides or requires TLS | |
| 895 # (Transport Layer Security) then set this option to 'yes'. | |
| 896 # Allowed values: yes, no | |
| 897 # Default: no | |
| 898 tls = no | |
| 899 | |
| 900 # If TLS is used, you may set this option to the name | |
| 901 # of a PEM formatted file that contains your private key. | |
| 902 # The path may be either absolute or relative | |
| 903 # to the directory containing this config file. | |
| 904 # Default: | |
| 905 tls_keyfile = | |
| 906 | |
| 907 # If TLS is used, you may set this option to the name | |
| 908 # of a PEM formatted certificate chain file. | |
| 909 # The path may be either absolute or relative | |
| 910 # to the directory containing this config file. | |
| 911 # Default: | |
| 912 tls_certfile = | |
| 913 | |
| 914 # Character set to encode email headers with. | |
| 915 # We use utf-8 by default, as it's the most flexible. | |
| 916 # Some mail readers (eg. Eudora) can't cope with that, | |
| 917 # so you might need to specify a more limited character set | |
| 918 # (eg. iso-8859-1). | |
| 919 # Default: utf-8 | |
| 920 charset = utf-8 | |
| 921 | |
| 922 # Setting this option makes Roundup write all outgoing email | |
| 923 # messages to this file *instead* of sending them. | |
| 924 # This option has the same effect as the environment variable | |
| 925 # SENDMAILDEBUG. | |
| 926 # Environment variable takes precedence. | |
| 927 # The path may be either absolute or relative | |
| 928 # to the directory containing this config file. | |
| 929 # Default: | |
| 930 debug = | |
| 931 | |
| 932 # Add a line with author information at top of all messages | |
| 933 # sent by roundup | |
| 934 # Allowed values: yes, no | |
| 935 # Default: yes | |
| 936 add_authorinfo = yes | |
| 937 | |
| 938 # Add the mail address of the author to the author information | |
| 939 # at the top of all messages. | |
| 940 # If this is false but add_authorinfo is true, only the name | |
| 941 # of the actor is added which protects the mail address of the | |
| 942 # actor from being exposed at mail archives, etc. | |
| 943 # Allowed values: yes, no | |
| 944 # Default: yes | |
| 945 add_authoremail = yes | |
| 946 | |
| 947 .. index:: config.ini; sections mailgw | |
| 948 | |
| 949 .. code:: ini | |
| 950 | |
| 951 # Roundup Mail Gateway options | |
| 952 [mailgw] | |
| 953 | |
| 954 # Keep email citations when accepting messages. | |
| 955 # Setting this to "no" strips out "quoted" text | |
| 956 # from the message. Setting this to "new" keeps quoted | |
| 957 # text only if a new issue is being created. | |
| 958 # Signatures are also stripped. | |
| 959 # Allowed values: yes, no, new | |
| 960 # Default: yes | |
| 961 keep_quoted_text = yes | |
| 962 | |
| 963 # Setting this to "yes" preserves the email body | |
| 964 # as is - that is, keep the citations _and_ signatures. | |
| 965 # Setting this to "new" keeps the body only if we are | |
| 966 # creating a new issue. | |
| 967 # Allowed values: yes, no, new | |
| 968 # Default: no | |
| 969 leave_body_unchanged = no | |
| 970 | |
| 971 # Default class to use in the mailgw | |
| 972 # if one isn't supplied in email subjects. | |
| 973 # To disable, leave the value blank. | |
| 974 # Default: issue | |
| 975 default_class = issue | |
| 976 | |
| 977 # Default locale name for the tracker mail gateway. | |
| 978 # If this option is not set, mail gateway will use | |
| 979 # the language of the tracker instance. | |
| 980 # Default: | |
| 981 language = | |
| 982 | |
| 983 # Controls the parsing of the [prefix] on subject | |
| 984 # lines in incoming emails. "strict" will return an | |
| 985 # error to the sender if the [prefix] is not recognised. | |
| 986 # "loose" will attempt to parse the [prefix] but just | |
| 987 # pass it through as part of the issue title if not | |
| 988 # recognised. "none" will always pass any [prefix] | |
| 989 # through as part of the issue title. | |
| 990 # Default: strict | |
| 991 subject_prefix_parsing = strict | |
| 992 | |
| 993 # Controls the parsing of the [suffix] on subject | |
| 994 # lines in incoming emails. "strict" will return an | |
| 995 # error to the sender if the [suffix] is not recognised. | |
| 996 # "loose" will attempt to parse the [suffix] but just | |
| 997 # pass it through as part of the issue title if not | |
| 998 # recognised. "none" will always pass any [suffix] | |
| 999 # through as part of the issue title. | |
| 1000 # Default: strict | |
| 1001 subject_suffix_parsing = strict | |
| 1002 | |
| 1003 # Defines the brackets used for delimiting the prefix and | |
| 1004 # suffix in a subject line. The presence of "suffix" in | |
| 1005 # the config option name is a historical artifact and may | |
| 1006 # be ignored. | |
| 1007 # Default: [] | |
| 1008 subject_suffix_delimiters = [] | |
| 1009 | |
| 1010 # Controls matching of the incoming email subject line | |
| 1011 # against issue titles in the case where there is no | |
| 1012 # designator [prefix]. "never" turns off matching. | |
| 1013 # "creation + interval" or "activity + interval" | |
| 1014 # will match an issue for the interval after the issue's | |
| 1015 # creation or last activity. The interval is a standard | |
| 1016 # Roundup interval. | |
| 1017 # Default: always | |
| 1018 subject_content_match = always | |
| 1019 | |
| 1020 # Update issue title if incoming subject of email is different. | |
| 1021 # Setting this to "no" will ignore the title part of the subject | |
| 1022 # of incoming email messages. | |
| 1023 # | |
| 1024 # Allowed values: yes, no | |
| 1025 # Default: yes | |
| 1026 subject_updates_title = yes | |
| 1027 | |
| 1028 # Regular expression matching a single reply or forward | |
| 1029 # prefix prepended by the mailer. This is explicitly | |
| 1030 # stripped from the subject during parsing. | |
| 1031 # Value is Python Regular Expression (UTF8-encoded). | |
| 1032 # Default: (\s*\W?\s*(fw|fwd|re|aw|sv|ang)\W)+ | |
| 1033 refwd_re = (\s*\W?\s*(fw|fwd|re|aw|sv|ang)\W)+ | |
| 1034 | |
| 1035 # Regular expression matching start of an original message | |
| 1036 # if quoted the in body. | |
| 1037 # Value is Python Regular Expression (UTF8-encoded). | |
| 1038 # Default: ^[>|\s]*-----\s?Original Message\s?-----$ | |
| 1039 origmsg_re = ^[>|\s]*-----\s?Original Message\s?-----$ | |
| 1040 | |
| 1041 # Regular expression matching the start of a signature | |
| 1042 # in the message body. | |
| 1043 # Value is Python Regular Expression (UTF8-encoded). | |
| 1044 # Default: ^[>|\s]*-- ?$ | |
| 1045 sign_re = ^[>|\s]*-- ?$ | |
| 1046 | |
| 1047 # Regular expression matching end of line. | |
| 1048 # Value is Python Regular Expression (UTF8-encoded). | |
| 1049 # Default: [\r\n]+ | |
| 1050 eol_re = [\r\n]+ | |
| 1051 | |
| 1052 # Regular expression matching a blank line. | |
| 1053 # Value is Python Regular Expression (UTF8-encoded). | |
| 1054 # Default: [\r\n]+\s*[\r\n]+ | |
| 1055 blankline_re = [\r\n]+\s*[\r\n]+ | |
| 1056 | |
| 1057 # Unpack attached messages (encoded as message/rfc822 in MIME) | |
| 1058 # as multiple parts attached as files to the issue, if not | |
| 1059 # set we handle message/rfc822 attachments as a single file. | |
| 1060 # Allowed values: yes, no | |
| 1061 # Default: no | |
| 1062 unpack_rfc822 = no | |
| 1063 | |
| 1064 # When parsing incoming mails, roundup uses the first | |
| 1065 # text/plain part it finds. If this part is inside a | |
| 1066 # multipart/alternative, and this option is set, all other | |
| 1067 # parts of the multipart/alternative are ignored. The default | |
| 1068 # is to keep all parts and attach them to the issue. | |
| 1069 # Allowed values: yes, no | |
| 1070 # Default: no | |
| 1071 ignore_alternatives = no | |
| 1072 | |
| 1073 # If an email has only text/html parts, use this module | |
| 1074 # to convert the html to text. Choose from beautifulsoup 4, | |
| 1075 # dehtml - (internal code), or none to disable conversion. | |
| 1076 # If 'none' is selected, email without a text/plain part | |
| 1077 # will be returned to the user with a message. If | |
| 1078 # beautifulsoup is selected but not installed dehtml will | |
| 1079 # be used instead. | |
| 1080 # Allowed values: beautifulsoup, dehtml, none | |
| 1081 # Default: none | |
| 1082 convert_htmltotext = none | |
| 1083 | |
| 1084 # When handling emails ignore the Resent-From:-header | |
| 1085 # and use the original senders From:-header instead. | |
| 1086 # (This might be desirable in some situations where a moderator | |
| 1087 # reads incoming messages first before bouncing them to Roundup) | |
| 1088 # Allowed values: yes, no | |
| 1089 # Default: no | |
| 1090 keep_real_from = no | |
| 1091 | |
| 1092 .. index:: config.ini; sections pgp | |
| 1093 | |
| 1094 .. code:: ini | |
| 1095 | |
| 1096 # OpenPGP mail processing options | |
| 1097 [pgp] | |
| 1098 | |
| 1099 # Enable PGP processing. Requires gpg. If you're planning | |
| 1100 # to send encrypted PGP mail to the tracker, you should also | |
| 1101 # enable the encrypt-option below, otherwise mail received | |
| 1102 # encrypted might be sent unencrypted to another user. | |
| 1103 # Allowed values: yes, no | |
| 1104 # Default: no | |
| 1105 enable = no | |
| 1106 | |
| 1107 # If specified, a comma-separated list of roles to perform | |
| 1108 # PGP processing on. If not specified, it happens for all | |
| 1109 # users. Note that received PGP messages (signed and/or | |
| 1110 # encrypted) will be processed with PGP even if the user | |
| 1111 # doesn't have one of the PGP roles, you can use this to make | |
| 1112 # PGP processing completely optional by defining a role here | |
| 1113 # and not assigning any users to that role. | |
| 1114 # Default: | |
| 1115 roles = | |
| 1116 | |
| 1117 # Location of PGP directory. Defaults to $HOME/.gnupg if | |
| 1118 # not specified. | |
| 1119 # Default: | |
| 1120 homedir = | |
| 1121 | |
| 1122 # Enable PGP encryption. All outgoing mails are encrypted. | |
| 1123 # This requires that keys for all users (with one of the gpg | |
| 1124 # roles above or all users if empty) are available. Note that | |
| 1125 # it makes sense to educate users to also send mails encrypted | |
| 1126 # to the tracker, to enforce this, set 'require_incoming' | |
| 1127 # option below (but see the note). | |
| 1128 # Allowed values: yes, no | |
| 1129 # Default: no | |
| 1130 encrypt = no | |
| 1131 | |
| 1132 # Require that pgp messages received by roundup are either | |
| 1133 # 'signed', 'encrypted' or 'both'. If encryption is required | |
| 1134 # we do not return the message (in clear) to the user but just | |
| 1135 # send an informational message that the message was rejected. | |
| 1136 # Note that this still presents known-plaintext to an attacker | |
| 1137 # when the users sends the mail a second time with encryption | |
| 1138 # turned on. | |
| 1139 # Default: signed | |
| 1140 require_incoming = signed | |
| 1141 | |
| 1142 .. index:: config.ini; sections nosy | |
| 1143 | |
| 1144 .. code:: ini | |
| 1145 | |
| 1146 # Nosy messages sending | |
| 1147 [nosy] | |
| 1148 | |
| 1149 # Send nosy messages to the author of the message. | |
| 1150 # Allowed values: yes, no, new, nosy -- if yes, messages | |
| 1151 # are sent to the author even if not on the nosy list, same | |
| 1152 # for new (but only for new messages). When set to nosy, | |
| 1153 # the nosy list controls sending messages to the author. | |
| 1154 # Default: no | |
| 1155 messages_to_author = no | |
| 1156 | |
| 1157 # Where to place the email signature. | |
| 1158 # Allowed values: top, bottom, none | |
| 1159 # Default: bottom | |
| 1160 signature_position = bottom | |
| 1161 | |
| 1162 # Does the author of a message get placed on the nosy list | |
| 1163 # automatically? If 'new' is used, then the author will | |
| 1164 # only be added when a message creates a new issue. | |
| 1165 # If 'yes', then the author will be added on followups too. | |
| 1166 # If 'no', they're never added to the nosy. | |
| 1167 # | |
| 1168 # Allowed values: yes, no, new | |
| 1169 # Default: new | |
| 1170 add_author = new | |
| 1171 | |
| 1172 # Do the recipients (To:, Cc:) of a message get placed on the | |
| 1173 # nosy list? If 'new' is used, then the recipients will | |
| 1174 # only be added when a message creates a new issue. | |
| 1175 # If 'yes', then the recipients will be added on followups too. | |
| 1176 # If 'no', they're never added to the nosy. | |
| 1177 # | |
| 1178 # Allowed values: yes, no, new | |
| 1179 # Default: new | |
| 1180 add_recipients = new | |
| 1181 | |
| 1182 # Controls the email sending from the nosy reactor. If | |
| 1183 # "multiple" then a separate email is sent to each | |
| 1184 # recipient. If "single" then a single email is sent with | |
| 1185 # each recipient as a CC address. | |
| 1186 # Default: single | |
| 1187 email_sending = single | |
| 1188 | |
| 1189 # Attachments larger than the given number of bytes | |
| 1190 # won't be attached to nosy mails. They will be replaced by | |
| 1191 # a link to the tracker's download page for the file. | |
| 1192 # Default: 9223372036854775807 | |
| 1193 max_attachment_size = 9223372036854775807 | |
| 1194 | |
| 1195 .. index:: config.ini; sections markdown | |
| 1196 | |
| 1197 .. code:: ini | |
| 1198 | |
| 1199 # Markdown rendering options. | |
| 1200 [markdown] | |
| 1201 | |
| 1202 # If yes/true, render single new line characters in markdown | |
| 1203 # text with <br>. Set true if you want GitHub Flavored Markdown | |
| 1204 # (GFM) handling of embedded newlines. | |
| 1205 # Allowed values: yes, no | |
| 1206 # Default: no | |
| 1207 break_on_newline = no |
