Ansible roles
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

153 lines
5.0 KiB

# -*- coding: utf-8 -*-
SECRET_KEY = "{{ seafile_seahub_secret }}"
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '{{ seafile_db_seahub }}',
'USER': '{{ seafile_db_user }}',
'PASSWORD': '{{ seafile_db_pass }}',
'HOST': '{{ seafile_db_server }}',
'PORT': '{{ seafile_db_port }}'
}
}
FILE_SERVER_ROOT = "{{ (seafile_public_url == 'http://' + inventory_hostname + ':' + seafile_seahub_port | string) | ternary('http://' + inventory_hostname + ':' + seafile_seafile_port | string,seafile_public_url+'/seafhttp') }}"
THUMBNAIL_ROOT = "{{ seafile_data_dir }}/thumbnails"
SEAHUB_DATA_ROOT = "{{ seafile_data_dir }}/seahub"
{% if seafile_memcached_server is defined and seafile_memcached_server != 'none' %}
CACHES = {
'default': {
'BACKEND': 'django_pylibmc.memcached.PyLibMCCache',
'LOCATION': '{{ seafile_memcached_server }}',
}
}
{% endif %}
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'verbose': {
'format': '%(process)-5d %(thread)d %(name)-50s %(levelname)-8s %(message)s'
},
'standard': {
'format': '%(asctime)s [%(levelname)s] %(name)s:%(lineno)s %(funcName)s %(message)s'
},
'simple': {
'format': '[%(asctime)s] %(name)s %(levelname)s %(message)s',
'datefmt': '%d/%b/%Y %H:%M:%S'
},
},
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse',
},
'require_debug_true': {
'()': 'django.utils.log.RequireDebugTrue',
},
},
'handlers': {
'console': {
'filters': ['require_debug_true'],
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
'syslog': {
'class': 'logging.handlers.SysLogHandler',
'address': '/dev/log',
'formatter': 'standard'
},
},
'loggers': {
# root logger
# All logs printed by Seahub and any third party libraries will be handled by this logger.
'': {
'handlers': ['console', 'syslog'],
'level': 'DEBUG', # Logs when log level is higher than info. Level can be any one of DEBUG, INFO, WARNING, ERROR, CRITICAL.
'disabled': False
},
# This logger recorded logs printed by Django Framework. For example, when you see 5xx page error, you should check the logs recorded by this logger.
'django.request': {
'handlers': ['console', 'syslog'],
'level': 'DEBUG',
'propagate': False,
},
},
}
EMAIL_USE_TLS = False
EMAIL_HOST = 'localhost'
EMAIL_HOST_USER = ''
EMAIL_HOST_PASSWORD = ''
EMAIL_PORT = 25
DEFAULT_FROM_EMAIL = "seafile@{{ ansible_domain }}"
SERVER_EMAIL = DEFAULT_FROM_EMAIL
SHARE_LINK_PASSWORD_MIN_LENGTH = 4
SHARE_LINK_EXPIRE_DAYS_DEFAULT = 7
REPO_PASSWORD_MIN_LENGTH = 4
ENABLE_REPO_SNAPSHOT_LABEL = True
ENABLE_VIDEO_THUMBNAIL = False
THUMBNAIL_VIDEO_FRAME_TIME = 5
{% if seafile_oauth2_auth == True %}
ENABLE_OAUTH = True
OAUTH_ENABLE_INSECURE_TRANSPORT = True
OAUTH_CLIENT_ID = "{{ seafile_oauth2_id }}"
OAUTH_CLIENT_SECRET = "{{ seafile_oauth2_secret }}"
OAUTH_REDIRECT_URL = "{{ seafile_oauth2_callback_url }}"
OAUTH_PROVIDER_DOMAIN = "{{ seafile_oauth2_provider_domain }}"
OAUTH_AUTHORIZATION_URL = "{{ seafile_oauth2_authorization_url }}"
OAUTH_TOKEN_URL = "{{ seafile_oauth2_token_url }}"
OAUTH_USER_INFO_URL = "{{ seafile_oauth2_user_info_url }}"
OAUTH_SCOPE = ["openid", "profile", "email", ]
OAUTH_ATTRIBUTE_MAP = {
"id": (False, "id"),
"email": (True, "email"),
"name": (False, "name"),
}
{% endif %}
{% if seafile_header_auth == True %}
ENABLE_REMOTE_USER_AUTHENTICATION = True
REMOTE_USER_HEADER = '{{ seafile_header_auth_name }}'
REMOTE_USER_DOMAIN = '{{ seafile_header_auth_domain }}'
REMOTE_USER_PROTECTED_PATH = [
{% for path in seafile_header_auth_protected_paths %}
'{{ path }}',
{% endfor %}
]
REMOTE_USER_FORCE_LOGOUT_IF_NO_HEADER = {{ seafile_header_auth_force_logout | ternary('True','False') }}
{% endif %}
SESSION_EXPIRE_AT_BROWSER_CLOSE = True
SESSION_COOKIE_AGE = {{ seafile_cookie_age }}
SITE_NAME = '{{ seafile_site_name }}'
SITE_TITLE = '{{ seafile_site_title }}'
ENABLE_WIKI = True
{% if seafile_oo_uri is defined %}
ENABLE_ONLYOFFICE = True
VERIFY_ONLYOFFICE_CERTIFICATE = True
ONLYOFFICE_APIJS_URL = "{{ (seafile_oo_uri is search('api\.js$')) | ternary(seafile_oo_uri,seafile_oo_uri | regex_replace('/$','') + '/web-apps/apps/api/documents/api.js') }}"
ONLYOFFICE_FILE_EXTENSION = ('doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'odt', 'fodt', 'odp', 'fodp', 'ods', 'fods')
ONLYOFFICE_EDIT_FILE_EXTENSION = ('docx', 'pptx', 'xlsx', 'odt', 'ods', 'odp')
ONLYOFFICE_FORCE_SAVE = True
{% if seafile_oo_secret is defined %}
ONLYOFFICE_JWT_SECRET = '{{ seafile_oo_secret }}'
{% endif %}
{% endif %}
{% if seafile_public_url is search '^https://' %}
USE_X_FORWARDED_HOST = True
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
{% endif %}