ansible-base/roles/mas/tasks/main.json

115 lines
2.5 KiB
JSON
Raw Normal View History

2024-10-13 11:44:01 +02:00
[
{
"name": "user",
"become": true,
"ansible.builtin.user": {
"name": "{{var_mas_user}}",
"create_home": true,
"home": "{{var_mas_directory}}"
}
},
{
"name": "directories",
"become": true,
"loop": [
"{{var_mas_directory}}/conf.d",
2024-10-17 18:45:45 +02:00
"{{var_mas_directory}}/conf.d/clients",
"{{var_mas_directory}}/scripts"
2024-10-13 11:44:01 +02:00
],
"ansible.builtin.file": {
"state": "directory",
"owner": "{{var_mas_user}}",
"path": "{{item}}"
}
},
{
"name": "download",
"become": true,
"become_user": "{{var_mas_user}}",
"ansible.builtin.get_url": {
"url": "https://github.com/element-hq/matrix-authentication-service/releases/latest/download/mas-cli-x86_64-linux.tar.gz",
"dest": "/tmp/mas.tar.gz"
}
},
{
"name": "extract",
"become": true,
"become_user": "{{var_mas_user}}",
"ansible.builtin.unarchive": {
"remote_src": true,
"src": "/tmp/mas.tar.gz",
"dest": "{{var_mas_directory}}",
"owner": "{{var_mas_user}}"
}
},
{
"name": "configuration | compose script",
"become": true,
"ansible.builtin.copy": {
"src": "conf-compose.py",
2024-10-17 18:52:51 +02:00
"dest": "/usr/local/bin/mas-conf-compose",
2024-10-17 18:55:16 +02:00
"mode": "0555"
2024-10-13 11:44:01 +02:00
}
},
{
"name": "configuration | base",
"become": true,
"become_user": "{{var_mas_user}}",
2024-10-17 20:22:45 +02:00
"ansible.builtin.shell": {
2024-10-17 20:20:10 +02:00
"cmd": "./mas-cli config generate > {{var_mas_directory}}/conf.d/base.yaml",
"chdir": "{{var_mas_directory}}"
}
},
{
"name": "configuration | database",
"become": true,
"become_user": "{{var_mas_user}}",
"ansible.builtin.template": {
"src": "config-database.json.j2",
"dest": "{{var_mas_directory}}/conf.d/database.json"
}
},
{
"name": "configuration | matrix",
"become": true,
"become_user": "{{var_mas_user}}",
"ansible.builtin.template": {
"src": "config-matrix.json.j2",
"dest": "{{var_mas_directory}}/conf.d/matrix.json"
}
},
{
"name": "configuration | upstream",
"become": true,
"become_user": "{{var_mas_user}}",
2024-10-13 11:44:01 +02:00
"ansible.builtin.template": {
2024-10-17 20:20:10 +02:00
"src": "config-upstream.json.j2",
"dest": "{{var_mas_directory}}/conf.d/upstream.json"
2024-10-13 11:44:01 +02:00
}
},
{
"name": "configuration | apply",
"become": true,
"ansible.builtin.command": {
2024-10-17 18:52:51 +02:00
"cmd": "/usr/local/bin/mas-conf-compose"
2024-10-13 11:44:01 +02:00
}
},
{
"name": "systemd unit",
"become": true,
"ansible.builtin.template": {
"src": "systemd_unit.j2",
"dest": "/etc/systemd/system/mas.service"
}
},
{
"name": "run",
"become": true,
"ansible.builtin.systemd_service": {
"name": "mas",
"enabled": true,
"state": "restarted"
}
}
]