mirror of
https://github.com/roles-ansible/ansible_role_gitea.git
synced 2024-08-16 11:39:50 +02:00
214 lines
8.9 KiB
Django/Jinja
214 lines
8.9 KiB
Django/Jinja
; this file is the configuration of your local gitea instance
|
||
; {{ ansible_managed }}
|
||
;
|
||
; This file overwrites the default values from gitea.
|
||
; undefined variables will use the default value from gitea.
|
||
; Cheat Sheet: https://docs.gitea.io/en-us/config-cheat-sheet/
|
||
;
|
||
; App name that shows on every page title
|
||
APP_NAME = {{ gitea_app_name }}
|
||
; Change it if you run locally
|
||
RUN_USER = {{ gitea_user }}
|
||
; Either "dev", "prod" or "test", default is "dev"
|
||
RUN_MODE = prod
|
||
|
||
[repository]
|
||
ROOT = {{ gitea_repository_root }}
|
||
; Force every new repository to be private
|
||
FORCE_PRIVATE = {{ gitea_force_private | ternary('true', 'false') }}
|
||
; Global limit of repositories per user, applied at creation time. -1 means no limit
|
||
MAX_CREATION_LIMIT = {{ gitea_user_repo_limit }}
|
||
; Mirror sync queue length, increase if mirror syncing starts hanging
|
||
MIRROR_QUEUE_LENGTH = 1000
|
||
; Disable the ability to interact with repositories using the HTTP protocol
|
||
DISABLE_HTTP_GIT = {{ gitea_disable_http_git | ternary('true', 'false') }}
|
||
|
||
[ui]
|
||
; Whether the email of the user should be shown in the Explore Users page
|
||
SHOW_USER_EMAIL = {{ gitea_show_user_email | ternary('true', 'false') }}
|
||
THEMES = {{ gitea_themes }}
|
||
DEFAULT_THEME = {{ gitea_theme_default }}
|
||
|
||
[server]
|
||
; The protocol the server listens on. One of 'http', 'https', 'unix' or 'fcgi'.
|
||
PROTOCOL = {{ gitea_protocol }}
|
||
DOMAIN = {{ gitea_http_domain }}
|
||
ROOT_URL = {{ gitea_root_url }}
|
||
; The address to listen on. Either a IPv4/IPv6 address or the path to a unix socket.
|
||
HTTP_ADDR = {{ gitea_http_listen }}
|
||
HTTP_PORT = {{ gitea_http_port }}
|
||
{% if gitea_http_port == 443 %}
|
||
PORT_TO_REDIRECT = 80
|
||
{% endif %}
|
||
{% if gitea_http_letsencrypt_mail is defined %}
|
||
ENABLE_LETSENCRYPT = true
|
||
LETSENCRYPT_ACCEPTTOS = true
|
||
LETSENCRYPT_EMAIL = {{ gitea_http_letsencrypt_mail }}
|
||
{% endif %}
|
||
; Disable SSH feature when not available
|
||
DISABLE_SSH = false
|
||
; Whether to use the builtin SSH server or not.
|
||
START_SSH_SERVER = {{ gitea_start_ssh | ternary('true', 'false') }}
|
||
; Domain name to be exposed in clone URL
|
||
SSH_DOMAIN = {{ gitea_ssh_domain }}
|
||
; The network interface the builtin SSH server should listen on
|
||
SSH_LISTEN_HOST = {{ gitea_ssh_listen }}
|
||
; Port number to be exposed in clone URL
|
||
SSH_PORT = {{ gitea_ssh_port }}
|
||
; The port number the builtin SSH server should listen on
|
||
SSH_LISTEN_PORT = %(SSH_PORT)s
|
||
; Disable CDN even in "prod" mode
|
||
OFFLINE_MODE = {{ gitea_offline_mode | ternary('true', 'false') }}
|
||
; Default path for App data
|
||
APP_DATA_PATH = {{ gitea_home }}/data
|
||
{% if gitea_lfs_server_enabled | bool -%}
|
||
;Enables git-lfs support.
|
||
LFS_START_SERVER = true
|
||
; Where to store LFS files.
|
||
LFS_CONTENT_PATH = {{ gitea_lfs_content_path }}
|
||
; LFS authentication secret
|
||
LFS_JWT_SECRET = {{ gitea_lfs_jwt_secret }}
|
||
{% endif %}
|
||
|
||
[database]
|
||
; Either "mysql", "postgres", "mssql" or "sqlite3", it's your choice
|
||
DB_TYPE = {{ gitea_db_type }}
|
||
HOST = {{ gitea_db_host }}
|
||
NAME = {{ gitea_db_name }}
|
||
USER = {{ gitea_db_user }}
|
||
; Use PASSWD = `your password` for quoting if you use special characters in the password.
|
||
PASSWD = {{ gitea_db_password }}
|
||
; For Postgres, either "disable" (default), "require", "verify-ca" or "verify-full"
|
||
; For MySQL, either "false" (default), "true", or "skip-verify"
|
||
SSL_MODE = {{ gitea_db_ssl }}
|
||
; For "sqlite3" and "tidb", use an absolute path when you start gitea as service
|
||
PATH = {{ gitea_db_path }}
|
||
{% if gitea_log_only_warning %}
|
||
LOG_SQL = false
|
||
{% endif %}
|
||
|
||
[indexer]
|
||
; Issue indexer storage path, available when ISSUE_INDEXER_TYPE is bleve
|
||
ISSUE_INDEXER_PATH = {{ gitea_home }}/indexers/issues.bleve
|
||
; Issue indexer queue, currently support: channel or levelqueue, default is levelqueue
|
||
ISSUE_INDEXER_QUEUE_TYPE = levelqueue
|
||
; When ISSUE_INDEXER_QUEUE_TYPE is levelqueue, this will be the queue will be saved path,
|
||
; default is indexers/issues.queue
|
||
ISSUE_INDEXER_QUEUE_DIR = {{ gitea_home }}/indexers/issues.queue
|
||
; repo indexer by default disabled, since it uses a lot of disk space
|
||
REPO_INDEXER_ENABLED = {{ gitea_repo_indexer_enabled }}
|
||
REPO_INDEXER_PATH = {{ gitea_home }}/indexers/repos.bleve
|
||
REPO_INDEXER_INCLUDE = {{ gitea_repo_indexer_include }}
|
||
REPO_INDEXER_EXCLUDE = {{ gitea_repo_indexer_exclude }}
|
||
REPO_INDEXER_EXCLUDE_VENDORED = {{ gitea_repo_exclude_vendored }}
|
||
MAX_FILE_SIZE = {{ gitea_repo_indexer_max_file_size }}
|
||
|
||
[security]
|
||
; Whether the installer is disabled
|
||
INSTALL_LOCK = true
|
||
; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
|
||
SECRET_KEY = {{ gitea_secret_key }}
|
||
INTERNAL_TOKEN = {{ gitea_internal_token }}
|
||
; How long to remember that an user is logged in before requiring relogin (in days)
|
||
LOGIN_REMEMBER_DAYS = 7
|
||
DISABLE_GIT_HOOKS = {{ gitea_disable_git_hooks | ternary('true', 'false') }}
|
||
|
||
[service]
|
||
; Disallow registration, only allow admins to create accounts.
|
||
DISABLE_REGISTRATION = {{ gitea_disable_registration }}
|
||
REGISTER_EMAIL_CONFIRM = {{ gitea_register_email_confirm }}
|
||
; User must sign in to view anything.
|
||
REQUIRE_SIGNIN_VIEW = {{ gitea_require_signin | ternary('true', 'false') }}
|
||
; Enable captcha validation for registration
|
||
ENABLE_CAPTCHA = {{ gitea_enable_captcha | ternary('true', 'false') }}
|
||
; Type of captcha you want to use. Options: image, recaptcha
|
||
CAPTCHA_TYPE = image
|
||
; Enable recaptcha to use Google's recaptcha service
|
||
; Go to https://www.google.com/recaptcha/admin to sign up for a key
|
||
RECAPTCHA_SECRET =
|
||
RECAPTCHA_SITEKEY =
|
||
; Show Registration button
|
||
SHOW_REGISTRATION_BUTTON = {{ gitea_show_registration_button | ternary('true', 'false') }}
|
||
ALLOW_ONLY_EXTERNAL_REGISTRATION = {{ gitea_only_allow_external_registration | ternary('true', 'false') }}
|
||
ENABLE_NOTIFY_MAIL = {{ gitea_enable_notify_mail | ternary('true', 'false') }}
|
||
|
||
[mailer]
|
||
ENABLED = {{ gitea_mailer_enabled | ternary('true', 'false') }}
|
||
; Mail server
|
||
; Gmail: smtp.gmail.com:587
|
||
; QQ: smtp.qq.com:465
|
||
; Note, if the port ends with "465", SMTPS will be used. Using STARTTLS on port 587 is recommended per RFC 6409. If the server supports STARTTLS it will always be used.
|
||
HOST = {{ gitea_mailer_host }}
|
||
; Do not verify the certificate of the server. Only use this for self-signed certificates
|
||
SKIP_VERIFY = {{ gitea_mailer_skip_verify }}
|
||
; Use client certificate
|
||
USE_CERTIFICATE = false
|
||
CERT_FILE = {{ gitea_home }}/custom/mailer/cert.pem
|
||
KEY_FILE = {{ gitea_home }}/custom/mailer/key.pem
|
||
; Should SMTP connection use TLS
|
||
IS_TLS_ENABLED = {{ gitea_mailer_tls_enabled | ternary('true', 'false') }}
|
||
; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` format
|
||
FROM = {{ gitea_mailer_from }}
|
||
; Mailer user name and password
|
||
USER = {{ gitea_mailer_user }}
|
||
; Use PASSWD = `your password` for quoting if you use special characters in the password.
|
||
PASSWD = {{ gitea_mailer_password }}
|
||
; Send mails as plain text
|
||
SEND_AS_PLAIN_TEXT = false
|
||
SUBJECT_PREFIX = {{ gitea_subject_prefix }}
|
||
; Set Mailer Type (either SMTP, sendmail or dummy to just send to the log)
|
||
MAILER_TYPE = {{ gitea_mailer_type }}
|
||
; Specify an alternative sendmail binary
|
||
SENDMAIL_PATH = sendmail
|
||
|
||
[session]
|
||
; Either "memory", "file", or "redis", default is "memory"
|
||
PROVIDER = file
|
||
; Provider config options
|
||
; memory: doesn't have any config yet
|
||
; file: session file path, e.g. `data/sessions`
|
||
; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
|
||
; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`
|
||
PROVIDER_CONFIG = {{ gitea_home }}/data/sessions
|
||
|
||
[picture]
|
||
AVATAR_UPLOAD_PATH = {{ gitea_home }}/data/avatars
|
||
; This value will always be true in offline mode.
|
||
DISABLE_GRAVATAR = {{ gitea_disable_gravatar | ternary('true', 'false') }}
|
||
|
||
[attachment]
|
||
; Whether attachments are enabled. Defaults to `true`
|
||
ENABLED = true
|
||
; Path for attachments. Defaults to `data/attachments`
|
||
PATH = {{ gitea_home }}/data/attachments
|
||
|
||
[log]
|
||
ROOT_PATH = {{ gitea_home }}/log
|
||
; Either "console", "file", "conn", "smtp" or "database", default is "console"
|
||
; Use comma to separate multiple modes, e.g. "console, file"
|
||
{% if gitea_log_systemd %}
|
||
MODE = console
|
||
MACARON = console
|
||
{% else %}
|
||
MODE = file
|
||
{% endif %}
|
||
; Buffer length of the channel, keep it as it is if you don't know what it is.
|
||
BUFFER_LEN = 10000
|
||
; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
|
||
{% if gitea_log_only_warning %}
|
||
LEVEL = Warn
|
||
REDIRECT_MACARON_LOG = true
|
||
{% else %}
|
||
LEVEL = Info
|
||
REDIRECT_MACARON_LOG = false
|
||
{% endif %}
|
||
|
||
[oauth2]
|
||
ENABLE = {{ gitea_oauth2_enabled }}
|
||
JWT_SECRET = {{ gitea_oauth2_jwt_secret }}
|
||
|
||
[metrics]
|
||
ENABLED = {{ gitea_metrics_enabled }}
|
||
TOKEN = {{ gitea_metrics_token }}
|
||
|
||
{{ gitea_extra_config }}
|