Change codebase to query or create correct User model
[mediagoblin.git] / mediagoblin / config_spec.ini
index 94e90c4475257059f9cfeef157032cbafe628972..0a8da73e345541129e9c9c2f4ea6d7d47a65a75e 100644 (file)
@@ -1,41 +1,76 @@
+[DEFAULT]
+data_basedir = %(here)s/user_dev
+
 [mediagoblin]
 # HTML title of the pages
 html_title = string(default="GNU MediaGoblin")
 
-# Enabled media types
-media_types = string_list(default=list("mediagoblin.media_types.image"))
+# link to source for this MediaGoblin site
+source_link = string(default="https://savannah.gnu.org/git/?group=mediagoblin")
 
 # database stuff
-db_host = string()
-db_name = string(default="mediagoblin")
-db_port = integer()
 sql_engine = string(default="sqlite:///%(here)s/mediagoblin.db")
 
+# This flag is used during testing to allow use of in-memory SQLite
+# databases. It is not recommended to be used on a running instance.
+run_migrations = boolean(default=False)
+
 # Where temporary files used in processing and etc are kept
-workbench_path = string(default="%(here)s/user_dev/media/workbench")
+workbench_path = string(default="%(data_basedir)s/media/workbench")
+
+# Where to store cryptographic sensible data
+crypto_path = string(default="%(data_basedir)s/crypto")
 
 # Where mediagoblin-builtin static assets are kept
 direct_remote_path = string(default="/mgoblin_static/")
 
 # set to false to enable sending notices
 email_debug_mode = boolean(default=True)
+
+# Uses SSL/TLS when connecting to SMTP server
+email_smtp_use_ssl = boolean(default=False)
+
+# Uses STARTTLS when connecting to SMTP server
+email_smtp_force_starttls = boolean(default=False)
+
+# Email address which notices are sent from
 email_sender_address = string(default="notice@mediagoblin.example.org")
+
+# Hostname of SMTP server
 email_smtp_host = string(default='')
-email_smtp_port = integer(default=25)
+
+# Port for SMTP server
+email_smtp_port = integer(default=0)
+
+# Username used for SMTP server
 email_smtp_user = string(default=None)
+
+# Password used for SMTP server
 email_smtp_pass = string(default=None)
 
+
 # Set to false to disable registrations
 allow_registration = boolean(default=True)
 
 # tag parsing
-tags_max_length = integer(default=50)
+tags_max_length = integer(default=255)
+
+# Enable/disable comments
+allow_comments = boolean(default=True)
 
 # Whether comments are ascending or descending
 comments_ascending = boolean(default=True)
 
+# Enable/disable reporting
+allow_reporting = boolean(default=True)
+
+# Enable/disable terms of service
+#   ... Note: you can override the terms of service template on a
+#       per-site basis...
+show_tos = boolean(default=False)
+
 # By default not set, but you might want something like:
-# "%(here)s/user_dev/templates/"
+# "%(data_basedir)s/templates/"
 local_templates = string()
 
 # Whether or not celery is set up via an environment variable or
@@ -51,82 +86,116 @@ allow_attachments = boolean(default=False)
 # Cookie stuff
 csrf_cookie_name = string(default='mediagoblin_csrftoken')
 
+# Set to true to prevent browsers leaking information through Referrers
+no_referrer = boolean(default=True)
+
 # Push stuff
 push_urls = string_list(default=list())
 
 exif_visible = boolean(default=False)
-geolocation_map_visible = boolean(default=False)
+original_date_visible = boolean(default=False)
+
+# Theming stuff
+theme_install_dir = string(default="%(data_basedir)s/themes/")
+theme_web_path = string(default="/theme_static/")
+theme_linked_assets_dir = string(default="%(data_basedir)s/theme_static/")
+theme = string()
+
+# plugin default assets directory
+plugin_web_path = string(default="/plugin_static/")
+plugin_linked_assets_dir = string(default="%(data_basedir)s/plugin_static/")
+
+# Default user upload limit (in Mb)
+upload_limit = integer(default=None)
+
+# Max file size (in Mb)
+max_file_size = integer(default=None)
+
+# Privilege scheme
+user_privilege_scheme = string(default="uploader,commenter,reporter")
+
+# Frequency garbage collection will run (setting to 0 or false to disable)
+# Setting units are minutes.
+garbage_collection = integer(default=60)
+
+[jinja2]
+# Jinja2 supports more directives than the minimum required by mediagoblin. 
+# This setting allows users creating custom templates to specify a list of
+# additional extensions they want to use.  example value:
+# extensions = jinja2.ext.loopcontrols , jinja2.ext.with_
+extensions = string_list(default=list())
 
 [storage:publicstore]
 storage_class = string(default="mediagoblin.storage.filestorage:BasicFileStorage")
-base_dir = string(default="%(here)s/user_dev/media/public")
+base_dir = string(default="%(data_basedir)s/media/public")
 base_url = string(default="/mgoblin_media/")
 
 [storage:queuestore]
 storage_class = string(default="mediagoblin.storage.filestorage:BasicFileStorage")
-base_dir = string(default="%(here)s/user_dev/media/queue")
-
-
-# Should we keep the original file?
-[media_type:mediagoblin.media_types.video]
-keep_original = boolean(default=False)
-
+base_dir = string(default="%(data_basedir)s/media/queue")
 
-[beaker.cache]
-type = string(default="file")
-data_dir = string(default="%(here)s/user_dev/beaker/cache/data")
-lock_dir = string(default="%(here)s/user_dev/beaker/cache/lock")
+[media:medium]
+# Dimensions used when creating media display images.
+max_width = integer(default=640)
+max_height = integer(default=640)
 
+[media:thumb]
+# Dimensions used when creating media thumbnails
+# This is unfortunately not implemented in the media
+# types yet. You can help!
+# TODO: Make plugins follow the media size settings
+max_width = integer(default=180)
+max_height = integer(default=180)
 
 [celery]
 # default result stuff
-celery_result_backend = string(default="database")
-celery_result_dburi = string(default="sqlite:///%(here)s/celery.db")
+CELERY_RESULT_BACKEND = string(default="database")
+CELERY_RESULT_DBURI = string(default="sqlite:///%(here)s/celery.db")
 
 # default kombu stuff
-broker_transport = string(default="sqlalchemy")
-broker_host = string(default="sqlite:///%(here)s/kombu.db")
+BROKER_TRANSPORT = string(default="sqlalchemy")
+BROKER_URL = string(default="sqlite:///%(here)s/kombu.db")
 
 # known booleans
-celery_result_persistent = boolean()
-celery_create_missing_queues = boolean()
-broker_use_ssl = boolean()
-broker_connection_retry = boolean()
-celery_always_eager = boolean()
-celery_eager_propagates_exceptions = boolean()
-celery_ignore_result = boolean()
-celery_track_started = boolean()
-celery_disable_rate_limits = boolean()
-celery_acks_late = boolean()
-celery_store_errors_even_if_ignored = boolean()
-celery_send_task_error_emails = boolean()
-celery_send_events = boolean()
-celery_send_task_sent_event = boolean()
-celeryd_log_color = boolean()
-celery_redirect_stdouts = boolean()
+CELERY_RESULT_PERSISTENT = boolean()
+CELERY_CREATE_MISSING_QUEUES = boolean()
+BROKER_USE_SSL = boolean()
+BROKER_CONNECTION_RETRY = boolean()
+CELERY_ALWAYS_EAGER = boolean()
+CELERY_EAGER_PROPAGATES_EXCEPTIONS = boolean()
+CELERY_IGNORE_RESULT = boolean()
+CELERY_TRACK_STARTED = boolean()
+CELERY_DISABLE_RATE_LIMITS = boolean()
+CELERY_ACKS_LATE = boolean()
+CELERY_STORE_ERRORS_EVEN_IF_IGNORED = boolean()
+CELERY_SEND_TASK_ERROR_EMAILS = boolean()
+CELERY_SEND_EVENTS = boolean()
+CELERY_SEND_TASK_SENT_EVENT = boolean()
+CELERYD_LOG_COLOR = boolean()
+CELERY_REDIRECT_STDOUTS = boolean()
 
 # known ints
-celeryd_concurrency = integer()
-celeryd_prefetch_multiplier = integer()
-celery_amqp_task_result_expires = integer()
-celery_amqp_task_result_connection_max = integer()
-redis_port = integer()
-redis_db = integer()
-broker_port = integer()
-broker_connection_timeout = integer()
-celery_broker_connection_max_retries = integer()
-celery_task_result_expires = integer()
-celery_max_cached_results = integer()
-celery_default_rate_limit = integer()
-celeryd_max_tasks_per_child = integer()
-celeryd_task_time_limit = integer()
-celeryd_task_soft_time_limit = integer()
-mail_port = integer()
-celerybeat_max_loop_interval = integer()
+CELERYD_CONCURRENCY = integer()
+CELERYD_PREFETCH_MULTIPLIER = integer()
+CELERY_AMQP_TASK_RESULT_EXPIRES = integer()
+CELERY_AMQP_TASK_RESULT_CONNECTION_MAX = integer()
+REDIS_PORT = integer()
+REDIS_DB = integer()
+BROKER_PORT = integer()
+BROKER_CONNECTION_TIMEOUT = integer()
+CELERY_BROKER_CONNECTION_MAX_RETRIES = integer()
+CELERY_TASK_RESULT_EXPIRES = integer()
+CELERY_MAX_CACHED_RESULTS = integer()
+CELERY_DEFAULT_RATE_LIMIT = integer()
+CELERYD_MAX_TASKS_PER_CHILD = integer()
+CELERYD_TASK_TIME_LIMIT = integer()
+CELERYD_TASK_SOFT_TIME_LIMIT = integer()
+MAIL_PORT = integer()
+CELERYBEAT_MAX_LOOP_INTERVAL = integer()
 
 # known floats
-celeryd_eta_scheduler_precision = float()
+CELERYD_ETA_SCHEDULER_PRECISION = float()
 
 # known lists
-celery_routes = string_list()
-celery_imports = string_list()
+CELERY_ROUTES = string_list()
+CELERY_IMPORTS = string_list()