Initial commit
This commit is contained in:
commit
9235c2011e
5 changed files with 125 additions and 0 deletions
43
defaults/main.yml
Normal file
43
defaults/main.yml
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
forgejo_version: "7.0.12"
|
||||||
|
|
||||||
|
# See https://forgejo.org/docs/latest/admin/config-cheat-sheet/
|
||||||
|
forgejo_config:
|
||||||
|
DEFAULT:
|
||||||
|
WORK_PATH: /var/lib/forgejo
|
||||||
|
server:
|
||||||
|
# DOMAIN: localhost # Set this to your domain!
|
||||||
|
# ROOT_URL: https://localhost/ # Set this to your root url!
|
||||||
|
# SSH_DOMAIN: localhost
|
||||||
|
# LFS_JWT_SECRET: ... # Generate with `forgejo generate secret JWT_SECRET`
|
||||||
|
PROTOCOL: http
|
||||||
|
HTTP_ADDR: 127.0.0.1
|
||||||
|
HTTP_PORT: 3000
|
||||||
|
UNIX_SOCKET_PERMISSION: "660"
|
||||||
|
repository:
|
||||||
|
ROOT: /var/lib/forgejo/data/repos
|
||||||
|
DEFAULT_PRIVATE: "true"
|
||||||
|
database:
|
||||||
|
DB_TYPE: sqlite3
|
||||||
|
openid:
|
||||||
|
ENABLE_OPENID_SIGNIN: "false"
|
||||||
|
ENABLE_OPENID_SIGNUP: "false"
|
||||||
|
oauth2:
|
||||||
|
# JWT_SECRET: ... # Generate with `forgejo generate secret JWT_SECRET`
|
||||||
|
security:
|
||||||
|
INSTALL_LOCK: "true"
|
||||||
|
# SECRET_KEY: ... # Generate with `forgejo generate secret SECRET_KEY`
|
||||||
|
# INTERNAL_TOKEN: ... # Generate with `forgejo generate secret INTERNAL_TOKEN`
|
||||||
|
PASSWORD_HASH_ALGO: argon2
|
||||||
|
service:
|
||||||
|
# First registered user become admin, so we disable registration per default (at least initially)
|
||||||
|
# Create first user via CLI:
|
||||||
|
# sudo -u git forgejo --config /etc/forgejo/app.ini admin user create --admin --username forgejo-admin --password ... --email admin@localhost
|
||||||
|
DISABLE_REGISTRATION: "true"
|
||||||
|
DEFAULT_KEEP_EMAIL_PRIVATE: "true"
|
||||||
|
DEFAULT_USER_VISIBILITY: "limited"
|
||||||
|
DEFAULT_ORG_VISIBILITY: "limited"
|
||||||
|
ui:
|
||||||
|
SHOW_USER_EMAIL: "false"
|
||||||
|
other:
|
||||||
|
SHOW_FOOTER_VERSION: "false"
|
||||||
|
SHOW_FOOTER_TEMPLATE_LOAD_TIME: "false"
|
||||||
18
files/forgejo.service
Normal file
18
files/forgejo.service
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Forgejo
|
||||||
|
|
||||||
|
After=syslog.target
|
||||||
|
After=network.target
|
||||||
|
# TODO: After=DB/redis/...
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
RestartSec=2s
|
||||||
|
Type=simple
|
||||||
|
User=git
|
||||||
|
Group=git
|
||||||
|
WorkingDirectory=~
|
||||||
|
ExecStart=/usr/local/sbin/forgejo web --config /etc/forgejo/app.ini
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
5
handlers/main.yml
Normal file
5
handlers/main.yml
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
- name: Restart forgejo
|
||||||
|
ansible.builtin.systemd_service:
|
||||||
|
name: forgejo
|
||||||
|
daemon_reload: true
|
||||||
|
state: restarted
|
||||||
50
tasks/main.yml
Normal file
50
tasks/main.yml
Normal file
|
|
@ -0,0 +1,50 @@
|
||||||
|
- name: Download forgejo binary
|
||||||
|
ansible.builtin.get_url:
|
||||||
|
url: "https://codeberg.org/forgejo/forgejo/releases/download/v{{ forgejo_version }}/forgejo-{{ forgejo_version }}-linux-amd64"
|
||||||
|
dest: "/usr/local/sbin/forgejo"
|
||||||
|
mode: "0755"
|
||||||
|
notify: Restart forgejo
|
||||||
|
|
||||||
|
- name: Create git group
|
||||||
|
ansible.builtin.group:
|
||||||
|
name: git
|
||||||
|
system: true
|
||||||
|
|
||||||
|
- name: Create git user
|
||||||
|
ansible.builtin.user:
|
||||||
|
name: git
|
||||||
|
group: git
|
||||||
|
home: /var/lib/forgejo
|
||||||
|
create_home: false
|
||||||
|
system: true
|
||||||
|
|
||||||
|
- name: Create data directory
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: /var/lib/forgejo
|
||||||
|
owner: git
|
||||||
|
group: git
|
||||||
|
state: directory
|
||||||
|
mode: "0750"
|
||||||
|
|
||||||
|
- name: Create config directory
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: /etc/forgejo
|
||||||
|
owner: root
|
||||||
|
group: git
|
||||||
|
state: directory
|
||||||
|
mode: "0750"
|
||||||
|
|
||||||
|
- name: Update config
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: forgejo_app.ini.j2
|
||||||
|
dest: /etc/forgejo/app.ini
|
||||||
|
owner: root
|
||||||
|
group: git
|
||||||
|
mode: "0640"
|
||||||
|
notify: Restart forgejo
|
||||||
|
|
||||||
|
- name: Create systemd unit
|
||||||
|
ansible.builtin.copy:
|
||||||
|
src: forgejo.service
|
||||||
|
dest: /etc/systemd/system/forgejo.service
|
||||||
|
notify: Restart forgejo
|
||||||
9
templates/forgejo_app.ini.j2
Normal file
9
templates/forgejo_app.ini.j2
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{% for section_name, section in forgejo_config.items() %}
|
||||||
|
{% if section_name != 'DEFAULT' %}
|
||||||
|
[{{section_name}}]
|
||||||
|
{% endif %}
|
||||||
|
{% for key, value in section.items() %}
|
||||||
|
{{key}} = {{value}}
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
|
{% endfor %}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue