fixed tests and defaults
[mediagoblin.git] / mediagoblin / config_spec.ini
CommitLineData
0fcfff5a 1[mediagoblin]
3c0411f5
PUS
2# HTML title of the pages
3html_title = string(default="GNU MediaGoblin")
4
ff6933fa
CAW
5# link to source for this MediaGoblin site
6source_link = string(default="https://gitorious.org/mediagoblin/mediagoblin")
7
8abeaf2f 8# database stuff
a45631e3 9sql_engine = string(default="sqlite:///%(here)s/mediagoblin.db")
6db23bd9
EL
10
11# This flag is used during testing to allow use of in-memory SQLite
12# databases. It is not recommended to be used on a running instance.
4a698535 13run_migrations = boolean(default=False)
6db23bd9 14
0fcfff5a 15# Where temporary files used in processing and etc are kept
3f5cf663 16workbench_path = string(default="%(here)s/user_dev/media/workbench")
0fcfff5a 17
5907154a
E
18# Where to store cryptographic sensible data
19crypto_path = string(default="%(here)s/user_dev/crypto")
20
0fcfff5a
CAW
21# Where mediagoblin-builtin static assets are kept
22direct_remote_path = string(default="/mgoblin_static/")
23
24# set to false to enable sending notices
25email_debug_mode = boolean(default=True)
2d7b6bde 26email_smtp_use_ssl = boolean(default=False)
0fcfff5a 27email_sender_address = string(default="notice@mediagoblin.example.org")
d71170ad 28email_smtp_host = string(default='')
2d7b6bde 29email_smtp_port = integer(default=0)
47364ead
JW
30email_smtp_user = string(default=None)
31email_smtp_pass = string(default=None)
0fcfff5a 32
13677ef9
RL
33# Set to false to disable registrations
34allow_registration = boolean(default=True)
35
10d7496d 36# tag parsing
86bd1f3c 37tags_max_length = integer(default=255)
10d7496d 38
20f8f50c
DT
39# Enable/disable comments
40allow_comments = boolean(default=True)
41
7c378f2c
CAW
42# Whether comments are ascending or descending
43comments_ascending = boolean(default=True)
44
3f5cf663
CAW
45# By default not set, but you might want something like:
46# "%(here)s/user_dev/templates/"
47local_templates = string()
0fcfff5a
CAW
48
49# Whether or not celery is set up via an environment variable or
50# something else (and thus mediagoblin should not attempt to set it up
51# itself)
52celery_setup_elsewhere = boolean(default=False)
53
2c437493
JW
54# Whether or not users are able to upload files of any filetype with
55# their media entries -- This is useful if you want to provide the
56# source files for a media file but can also be a HUGE security risk.
57allow_attachments = boolean(default=False)
58
f1226c98 59# Cookie stuff
2dc8d249 60csrf_cookie_name = string(default='mediagoblin_csrftoken')
894fa564 61
5b1a7bae 62# Push stuff
bb025ebd 63push_urls = string_list(default=list())
5907222c
JW
64
65exif_visible = boolean(default=False)
24d310e4 66original_date_visible = boolean(default=False)
8aeb6738 67
3b47da8e
CAW
68# Theming stuff
69theme_install_dir = string(default="%(here)s/user_dev/themes/")
9a422c1f 70theme_web_path = string(default="/theme_static/")
aed7474e 71theme_linked_assets_dir = string(default="%(here)s/user_dev/theme_static/")
3b47da8e
CAW
72theme = string()
73
5ccb16ca
CAW
74# plugin default assets directory
75plugin_web_path = string(default="/plugin_static/")
76plugin_linked_assets_dir = string(default="%(here)s/user_dev/plugin_static/")
77
91a52878 78# Default user upload limit (in Mb)
001a50a8 79upload_limit = integer(default=None)
bdd22421 80
ecb45128
RE
81# Max file size (in Mb)
82max_file_size = integer(default=5000)
83
155d234d
KD
84[jinja2]
85# Jinja2 supports more directives than the minimum required by mediagoblin.
86# This setting allows users creating custom templates to specify a list of
87# additional extensions they want to use. example value:
88# extensions = jinja2.ext.loopcontrols , jinja2.ext.with_
89extensions = string_list(default=list())
3b47da8e 90
ed797069 91[storage:publicstore]
a2468d18 92storage_class = string(default="mediagoblin.storage.filestorage:BasicFileStorage")
ed797069
E
93base_dir = string(default="%(here)s/user_dev/media/public")
94base_url = string(default="/mgoblin_media/")
95
96[storage:queuestore]
a2468d18 97storage_class = string(default="mediagoblin.storage.filestorage:BasicFileStorage")
ed797069
E
98base_dir = string(default="%(here)s/user_dev/media/queue")
99
10085b77 100[media:medium]
4f4f2531 101# Dimensions used when creating media display images.
10085b77
JW
102max_width = integer(default=640)
103max_height = integer(default=640)
104
105[media:thumb]
4f4f2531
JW
106# Dimensions used when creating media thumbnails
107# This is unfortunately not implemented in the media
108# types yet. You can help!
109# TODO: Make plugins follow the media size settings
10085b77
JW
110max_width = integer(default=180)
111max_height = integer(default=180)
894fa564 112
7cd7db5a 113[media_type:mediagoblin.media_types.image]
12408104
JW
114# One of BICUBIC, BILINEAR, NEAREST, ANTIALIAS
115resize_filter = string(default="ANTIALIAS")
35f6d6a7 116#level of compression used when resizing images
8aa18b66 117quality = integer(default=90)
7cd7db5a 118
23caf305 119[media_type:mediagoblin.media_types.video]
5a34a80d 120# Should we keep the original file?
23caf305
CAW
121keep_original = boolean(default=False)
122
196a5181
JW
123# 0 means autodetect, autodetect means number_of_CPUs - 1
124vp8_threads = integer(default=0)
125# Range: 0..10
126vp8_quality = integer(default=8)
127# Range: -0.1..1
128vorbis_quality = float(default=0.3)
129
6f6471aa 130# Autoplay the video when page is loaded?
316ede47 131auto_play = boolean(default=False)
6f6471aa 132
5c754fda
JW
133[[skip_transcode]]
134mime_types = string_list(default=list("video/webm"))
135container_formats = string_list(default=list("Matroska"))
136video_codecs = string_list(default=list("VP8 video"))
137audio_codecs = string_list(default=list("Vorbis"))
138dimensions_match = boolean(default=True)
196a5181 139
5a34a80d 140[media_type:mediagoblin.media_types.audio]
b781c3c9 141keep_original = boolean(default=True)
cd305837 142# vorbisenc quality
5a34a80d 143quality = float(default=0.3)
deea3f66 144create_spectrogram = boolean(default=True)
196a5181
JW
145spectrogram_fft_size = integer(default=4096)
146
196a5181
JW
147[media_type:mediagoblin.media_types.ascii]
148thumbnail_font = string(default=None)
23caf305 149
a80ebf3b 150[media_type:mediagoblin.media_types.pdf]
d28c5066 151pdf_js = boolean(default=True)
0533f117 152
35f6d6a7 153
0fcfff5a 154[celery]
e629cde0 155# default result stuff
6bcdd4dc
LS
156CELERY_RESULT_BACKEND = string(default="database")
157CELERY_RESULT_DBURI = string(default="sqlite:///%(here)s/celery.db")
e629cde0
CAW
158
159# default kombu stuff
6bcdd4dc 160BROKER_TRANSPORT = string(default="sqlalchemy")
41098dff 161BROKER_URL = string(default="sqlite:///%(here)s/kombu.db")
e629cde0 162
0fcfff5a 163# known booleans
6bcdd4dc
LS
164CELERY_RESULT_PERSISTENT = boolean()
165CELERY_CREATE_MISSING_QUEUES = boolean()
166BROKER_USE_SSL = boolean()
167BROKER_CONNECTION_RETRY = boolean()
168CELERY_ALWAYS_EAGER = boolean()
169CELERY_EAGER_PROPAGATES_EXCEPTIONS = boolean()
170CELERY_IGNORE_RESULT = boolean()
171CELERY_TRACK_STARTED = boolean()
172CELERY_DISABLE_RATE_LIMITS = boolean()
173CELERY_ACKS_LATE = boolean()
174CELERY_STORE_ERRORS_EVEN_IF_IGNORED = boolean()
175CELERY_SEND_TASK_ERROR_EMAILS = boolean()
176CELERY_SEND_EVENTS = boolean()
177CELERY_SEND_TASK_SENT_EVENT = boolean()
178CELERYD_LOG_COLOR = boolean()
179CELERY_REDIRECT_STDOUTS = boolean()
0fcfff5a
CAW
180
181# known ints
6bcdd4dc
LS
182CELERYD_CONCURRENCY = integer()
183CELERYD_PREFETCH_MULTIPLIER = integer()
184CELERY_AMQP_TASK_RESULT_EXPIRES = integer()
185CELERY_AMQP_TASK_RESULT_CONNECTION_MAX = integer()
186REDIS_PORT = integer()
187REDIS_DB = integer()
188BROKER_PORT = integer()
189BROKER_CONNECTION_TIMEOUT = integer()
190CELERY_BROKER_CONNECTION_MAX_RETRIES = integer()
191CELERY_TASK_RESULT_EXPIRES = integer()
192CELERY_MAX_CACHED_RESULTS = integer()
193CELERY_DEFAULT_RATE_LIMIT = integer()
194CELERYD_MAX_TASKS_PER_CHILD = integer()
195CELERYD_TASK_TIME_LIMIT = integer()
196CELERYD_TASK_SOFT_TIME_LIMIT = integer()
197MAIL_PORT = integer()
198CELERYBEAT_MAX_LOOP_INTERVAL = integer()
0fcfff5a
CAW
199
200# known floats
6bcdd4dc 201CELERYD_ETA_SCHEDULER_PRECISION = float()
0fcfff5a
CAW
202
203# known lists
6bcdd4dc
LS
204CELERY_ROUTES = string_list()
205CELERY_IMPORTS = string_list()