ansible-base/roles/gitea/tasks/main.json
2024-07-09 17:12:01 +02:00

91 lines
2.1 KiB
JSON

[
{
"name": "packages",
"become": true,
"ansible.builtin.apt": {
"update_cache": true,
"pkg": [
"git"
]
}
},
{
"name": "user",
"become": true,
"ansible.builtin.user": {
"name": "{{var_gitea_user}}",
"create_home": true,
"home": "{{var_gitea_directory}}"
}
},
{
"name": "directories | database",
"become": true,
"loop": [
"{{var_gitea_database_data_sqlite_path | dirname}}"
],
"ansible.builtin.file": {
"path": "{{item}}",
"state": "directory"
}
},
{
"name": "directories | internal",
"become": true,
"become_user": "{{var_gitea_user}}",
"loop": [
"{{var_gitea_directory}}/custom/config"
],
"ansible.builtin.file": {
"path": "{{item}}",
"state": "directory"
}
},
{
"name": "download",
"become": true,
"become_user": "{{var_gitea_user}}",
"ansible.builtin.get_url": {
"url": "https://dl.gitea.com/gitea/{{var_gitea_version}}/gitea-{{var_gitea_version}}-{{var_gitea_platform}}",
"dest": "{{var_gitea_directory}}/gitea",
"mode": "u+rx"
}
},
{
"name": "config | base",
"become": true,
"become_user": "{{var_gitea_user}}",
"ansible.builtin.template": {
"src": "config.ini.j2",
"dest": "{{var_gitea_directory}}/custom/conf/app.ini"
}
},
{
"name": "config | authelia",
"when": "var_gitea_authentication_kind == 'authelia'",
"become": true,
"become_user": "{{var_gitea_user}}",
"ansible.builtin.command": {
"chdir": "{{var_gitea_directory}}",
"cmd": "./gitea admin auth add-oauth --provider=6 --name='authelia' --key={{var_gitea_authentication_data_authelia_client_id}} --secret={{var_gitea_authentication_data_authelia_client_secret}} --auto-discover-url={{var_gitea_authentication_data_authelia_url_base}}/.well-known/openid-configuration --scopes='openid email profile'"
}
},
{
"name": "systemd unit",
"become": true,
"ansible.builtin.template": {
"src": "systemd-unit.j2",
"dest": "/etc/systemd/system/gitea.service"
}
},
{
"name": "start",
"become": true,
"ansible.builtin.systemd_service": {
"enabled": true,
"state": "restarted",
"name": "gitea"
}
}
]