forgejo/defaults/main.yml

175 lines
6.2 KiB
YAML

---
forgejo_bindir: "/usr/local/bin/forgejo"
forgejo_lib_dir: "/var/lib/forgejo"
forgejo_user: 'git'
forgejo_group: 'git'
forgejo_confdir: '/etc/forgejo/app.ini'
forgejo_flavor: 'forgejo'
forgejo_version: '1.21.7-0'
forgejo_arch: 'linux-amd64'
#forgejo_download_url: 'https://github.com/go-gitea/gitea/releases/download/v{{ forgejo_version }}/gitea-{{ forgejo_version }}-{{ forgejo_arch }}'
# Uncomment below if you want to add custom themes or images
#forgejo_extra_files_path: '../img' # the folder name where you have the images you want to deploy
forgejo_theme_dir: '{{ forgejo_lib_dir }}/custom'
#forgejo_custom_themes:
# - name: '' #add name of the theme
# repo: '' #add git repository of the theme
# enable: 'true' #set it to false to remove it
#[CONFIG]
# App.ini file variables
forgejo_base_config:
- 'APP_NAME = Forgejo: Beyond coding. We forge.'
- 'RUN_USER = git'
- 'RUN_MODE = prod'
- 'WORK_PATH = {{ forgejo_lib_dir }}'
forgejo_oauth2_config:
- 'JWT_SECRET = ' #41 random chars
forgejo_ui_config:
- 'THEMES = auto,arc-green,gitea,forgejo-auto,forgejo-light,forgejo-dark' # add only the default ones, not themes ones
- 'DEFAULT_THEME = arc-green'
forgejo_security_config:
- 'INTERNAL_TOKEN = ' #106 random chars
- 'INSTALL_LOCK = true'
- 'SECRET_KEY = ' #64 random chars
forgejo_database_config:
- 'DB_TYPE = postgres'
- 'HOST = localhost:5432'
- 'NAME = forgejo'
- 'USER = admin'
- 'PASSWD = changeme'
- 'SSL_MODE = disable'
forgejo_repository_config:
- 'ROOT = /home/git/forgejo-repositories'
forgejo_server_config:
- 'SSH_DOMAIN = git.example.org'
- 'DOMAIN = 192.168.33.14'
- 'HTTP_PORT = 3000'
- 'ROOT_URL = http://192.168.33.14:3000'
- 'DISABLE_SSH = false'
- 'SSH_PORT = 22'
- 'LFS_START_SERVER = true'
- 'LFS_JWT_SECRET = ' #40 random chars
- 'OFFLINE_MODE = false'
- 'APP_DATA_PATH = {{ forgejo_lib_dir }}/data/'
forgejo_lfs_config:
- 'PATH = /home/git/data/lfs'
forgejo_mailer_config:
- 'ENABLED = true'
- 'SMTP_ADDR = mail.example.org'
- 'SMTP_PORT = 587'
- 'FROM = noreply@example.org'
- 'USER = noreply@example.org'
- 'PASSWD = CHANGEME' #PASSWD
- 'PROTOCOL = smtp+starttls'
forgejo_service_config:
- 'REGISTER_EMAIL_CONFIRM = false'
- 'ENABLE_NOTIFY_MAIL = false'
- 'DISABLE_REGISTRATION = false'
- 'ALLOW_ONLY_EXTERNAL_REGISTRATION = false'
- 'ENABLE_CAPTCHA = false'
- 'REQUIRE_SIGNIN_VIEW = true'
- 'DEFAULT_KEEP_EMAIL_PRIVATE = true'
- 'DEFAULT_ALLOW_CREATE_ORGANIZATION = true'
- 'DEFAULT_ENABLE_TIMETRACKING = true'
- 'NO_REPLY_ADDRESS = noreply@example.org'
forgejo_mirror_config:
- 'ENABLED = true'
forgejo_picture_config:
- 'DISABLE_GRAVATAR = true'
- 'ENABLE_FEDERATED_AVATAR = true'
forgejo_openid_config:
- 'ENABLE_OPENID_SIGNIN = false'
- 'ENABLE_OPENID_SIGNUP = false'
forgejo_session_config:
- 'PROVIDER = file'
forgejo_log_config:
- 'MODE = file'
- 'LEVEL = Info'
- 'ROOT_PATH = /home/git/log'
# External renderers
# See https://docs.gitea.io/en-us/external-renderers/
forgejo_markup_config:
- name: 'asciidoc'
apt: 'asciidoc'
enable: 'false'
- name: 'jupyter'
apt: 'jupyter'
enable: 'false'
- name: 'html'
apt: ''
enable: 'false'
# Incoming emails
# See https://forgejo.org/docs/latest/admin/incoming-email/
forgejo_email_incoming:
- 'ENABLED = true'
- 'REPLY_TO_ADDRESS = incoming+%{token}@example.org'
- 'HOST = example.org'
- 'PORT = 993'
- 'USERNAME = incoming'
- 'PASSWORD = changeme'
- 'USE_TLS = true'
- 'MAILBOX = INBOX'
- 'DELETE_HANDLED_MESSAGE = true'
- 'MAXIMUM_MESSAGE_SIZE = 0'
# Systemd
# forgejo_dbservice: 'postgresql.service' # uncomment to enable this. You can cnange to mysql, mariadb, redis, memcached
# forgejo_websocket: 'true' # uncomment to enable this
# forgejo_limitnofile: '524288:524288' # Uncomment if you have repos with lots of files and get a HTTP 500 error because of that
# forgejo_custom_path: 'Environment=PATH={{ forgejo_custom_path }}:/bin:/sbin:/usr/bin:/usr/sbin' # Uncomment if you install Git to directory prefix other than default PATH and add that prefix to PATH
# forgejo_cap_net_bind_service: 'CAP_NET_BIND_SERVICE' # Uncomment if you want to bind Forgejo to a port below 1024, or use socket activation to pass Forgejo its ports as above
# forgejo_privateusers: 'false' # Uncomment, when using forgejo_cap_net_bind_service option, to allow capabilities to be applied on Forgejo process. If set to true sandboxes Forgejo service and prevent any processes from running with privileges in the host user namespace
#apt
forgejo_apt_list:
- git
# POSTGRES
postgresql_version: 13
postgresql_listen_addresses:
- "127.0.0.1"
postgresql_pg_hba_default:
- { type: local, database: all, user: '{{ postgresql_admin_user }}', address: '', method: '{{ postgresql_default_auth_method }}', comment: '' }
- { type: local, database: all, user: all, address: '', method: '{{ postgresql_default_auth_method }}', comment: '"local" is for Unix domain socket connections only' }
- { type: host, database: all, user: all, address: '127.0.0.1/32', method: '{{ postgresql_default_auth_method_hosts }}', comment: 'IPv4 local connections:' }
postgresql_databases:
- name: forgejo
owner: admin # optional; specify the owner of the database
hstore: no # flag to install the hstore extension on this database (yes/no)
uuid_ossp: no # flag to install the uuid-ossp extension on this database (yes/no)
citext: no # flag to install the citext extension on this database (yes/no)
postgresql_users:
- name: admin
pass: changeme
encrypted: yes # denotes if the password is already encrypted.
postgresql_user_privileges:
- name: admin # user name
db: forgejo # database
priv: "ALL" # privilege string format: example: INSERT,UPDATE/table:SELECT/anothertable:ALL
role_attr_flags: "" # role attribute flags