Configuration¶
We use flask.app.config
, so to use it do:
from flask import current_app as app
print(app.config['SERVER_DOMAIN'])
Configuration is combination of default settings module and settings module in application repo.
Default settings¶
APPLICATION_NAME
¶
Default: 'Superdesk'
CLIENT_URL
¶
Default: 'http://localhost:9000'
FTP_TIMEOUT
¶
Default: 300
This is used for all ftp operations. Increase if you get ftp timeout errors.
CONTENT_EXPIRY_MINUTES
¶
Changed in version 1.5: Change default value to 0
.
Default: 0
By default content will not expire.
PUBLISHED_CONTENT_EXPIRY_MINUTES
¶
Default: 0
It applies only to published content if the value is greater than 0
and it overrides the desk/stage content
expiry settings. If PUBLISHED_CONTENT_EXPIRY_MINUTES
is set to 0
then the content is expired based on
the content expiry settings for that desk/stage.
INGEST_EXPIRY_MINUTES
¶
Default: 2880
(2 days)
MAX_VALUE_OF_INGEST_SEQUENCE
¶
Default: 9999
MAX_VALUE_OF_PUBLISH_SEQUENCE
¶
Default: 9999
DEFAULT_SOURCE_VALUE_FOR_MANUAL_ARTICLES
¶
Default: 'Superdesk'
Changed in version 1.8: Change default value to 'Superdesk'
.
DEFAULT_PRIORITY_VALUE_FOR_MANUAL_ARTICLES
¶
Default: 6
DEFAULT_URGENCY_VALUE_FOR_MANUAL_ARTICLES
¶
Default: 3
DEFAULT_GENRE_VALUE_FOR_MANUAL_ARTICLES
¶
Default: [{'qcode': 'Article', 'name': 'Article (news)'}]
RESET_PRIORITY_VALUE_FOR_UPDATE_ARTICLES
¶
Default: False
NEWSML_PROVIDER_ID
¶
Default: 'sourcefabric.org'
ORGANIZATION_NAME
¶
Default: 'Your organisation'
Changed in version 1.8: Change default value to 'Your organisation'
.
ORGANIZATION_NAME_ABBREVIATION
¶
Default: 'Short name for your organisation'
Changed in version 1.8: Change default value to 'Short name for your organisation'
.
ODBC_PUBLISH
¶
Default: None
Determines if the ODBC publishing mechanism will be used. If enabled then pyodbc must be installed along with its dependencies.
Mongo connections¶
There are multiple connections by default, so that it can use different instances for legal archive and production content.
For each there is _DBNAME
and _URI
setting, if _URI
is set it will be used as is, if not it will
use localhost
as server and _DBNAME
as db.
MONGO_DBNAME
¶
Default: 'superdesk'
MONGO_URI
¶
Default: 'mongodb://localhost/superdesk'
LEGAL_ARCHIVE_DBNAME
¶
Default: 'legal_archive'
LEGAL_ARCHIVE_URI
¶
Default: 'mongodb://localhost/legal_archive'
ARCHIVED_DBNAME
¶
Default: 'archived'
ARCHIVED_URI
¶
Default: mongodb://localhost/archived'
Elastic settings¶
ELASTICSEARCH_URL
¶
Default: 'http://localhost:9200'
ELASTICSEARCH_INDEX
¶
Default: 'superdesk'
LDAP settings¶
Used for LDAP based authentication, if not configured it will use mongodb for credentials.
LDAP_SERVER
¶
Default: ''
LDAP_SERVER_PORT
¶
Default: 389
LDAP_FQDN
¶
Default: ''
LDAP_BASE_FILTER
¶
Default: ''
LDAP_USER_FILTER
¶
Default: '(&(objectCategory=user)(objectClass=user)(sAMAccountName={}))'
LDAP_USER_ATTRIBUTES
¶
Default:
{
'givenName': 'first_name',
'sn': 'last_name',
'ipPhone': 'phone',
'mail': 'email',
'displayName': 'display_name'
}
Media settings¶
MEDIA_PREFIX
¶
Default: ''
Uses for generation of media url (<media_prefix>/<media_id>)
:
# if it's empty (default value) uses something like
'http://<host>/api/upload-raw'
# serve directly from AMAZON S3
'https://<bucket>.s3-<region>.amazonaws.com/<subfolder>'
# save relative urls to database
'/media-via-nginx'
# or using api view
'/api/upload-raw'
Amazon S3 settings¶
AMAZON_ACCESS_KEY_ID
¶
Default: ''
AMAZON_SECRET_ACCESS_KEY
¶
Default: ''
AMAZON_REGION
¶
Default: 'us-east-1'
AMAZON_CONTAINER_NAME
¶
Default: ''
AMAZON_S3_SUBFOLDER
¶
Default: ''
AMAZON_OBJECT_ACL
¶
Default: ''
Security settings¶
SESSION_EXPIRY_MINUTES
¶
Default: 240
The number of minutes since the last update of the Mongo auth object after which it will be deleted.
RESET_PASSWORD_TOKEN_TIME_TO_LIVE
¶
Default: 1
The number of days a token is valid, env RESET_PASS_TTL
.
ACTIVATE_ACCOUNT_TOKEN_TIME_TO_LIVE
¶
Default: 7
The number of days an activation token is valid, env ACTIVATE_TTL
.
SECRET_KEY
¶
New in version 1.5.
Default: ''
This value should be set to a unique, unpredictable value. It is used for auth token signing.
Email settings¶
MAIL_SERVER
¶
Default: 'localhost'
MAIL_PORT
¶
Default: 25
MAIL_USE_TLS
¶
Default: False
MAIL_USE_SSL
¶
Default: False
MAIL_USERNAME
¶
Default: ''
MAIL_PASSWORD
¶
Default: ''
MAIL_DEFAULT_SENDER
¶
Default: 'superdesk@localhost'
ADMINS
¶
Default: ['']
Content API Settings¶
New in version 1.5.
CONTENTAPI_URL
Default: localhost:5400
Content API URL. Set this when running api behind a proxy.
CONTENTAPI_MONGO_DBNAME
¶
Default: contentapi
CONTENTAPI_MONGO_URI
¶
Default: mongodb://localhost/contentapi
CONTENTAPI_ELASTICSEARCH_URL
¶
Default: http://localhost:9200
CONTENTAPI_ELASTICSEARCH_INDEX
¶
Default: contentapi
Google OAuth Settings¶
New in version 1.8.
GOOGLE_CLIENT_ID
¶
Default: ''
GOOGLE_CLIENT_SECRET
¶
Default: ''
Schema and Editor¶
New in version 1.9.
Allows updating schema and editor settings for item types text
, picture
and composite
.
SCHEMA
¶
Default: {}
Example:
SCHEMA = {
'composite': {
'headline': {'type': 'text', 'required': True, 'maxlength': 200},
...
}
}
EDITOR
¶
Default: {}
Example:
EDITOR = {
'composite': {
'headline': {'order': 1, formatOptions: ['bold']},
...
}
}
OVERRIDE_EDNOTE_FOR_CORRECTIONS
¶
Default: True
Set to False to disable editor note overriding on correction.
OVERRIDE_EDNOTE_TEMPLATE
¶
Default: None
Template to use to override editor note (ignored if OVERRIDE_EDNOTE_FOR_CORRECTIONS
is False
).
If not set, default template will be used.
In your template, you can use {date}
to insert current date or {slugline}
for slugline.
Example:
OVERRIDE_EDNOTE_FOR_CORRECTIONS = True
OVERRIDE_EDNOTE_TEMPLATE = 'Story "{slugline}" corrected on {date}'