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

126 lines
2.6 KiB
JSON
Raw Normal View History

2024-12-30 13:35:21 +01:00
[
{
"name": "packages",
"become": true,
"ansible.builtin.apt": {
"update_cache": true,
"pkg": [
"git",
"gcc",
"libldap2-dev",
"libsasl2-dev",
"python3-venv",
"python3-dev",
2024-12-30 13:35:21 +01:00
"nodejs",
"yarnpkg"
]
}
},
{
"name": "user and directory",
"become": true,
"ansible.builtin.user": {
"name": "{{var_tandoor_user}}",
"create_home": true,
"home": "{{var_tandoor_directory}}"
}
},
{
"name": "sources",
"become": true,
"become_user": "{{var_tandoor_user}}",
"ansible.builtin.git": {
"repo": "{{var_tandoor_repository_url}}",
"version": "{{var_tandoor_repository_reference}}",
2024-12-30 14:55:58 +01:00
"dest": "{{var_tandoor_directory}}/program"
2024-12-30 13:35:21 +01:00
}
},
2024-12-30 17:02:04 +01:00
{
"name": "venv",
"become": true,
"become_user": "{{var_tandoor_user}}",
2024-12-30 17:02:04 +01:00
"ansible.builtin.command": {
"chdir": "{{var_tandoor_directory}}",
"cmd": "python3 -m venv program"
}
},
2024-12-30 13:35:21 +01:00
{
"name": "python requirements",
"become": true,
"become_user": "{{var_tandoor_user}}",
2024-12-30 13:35:21 +01:00
"ansible.builtin.pip": {
2024-12-30 14:55:58 +01:00
"virtualenv": "{{var_tandoor_directory}}/program",
"virtualenv_python": "python3",
2024-12-30 14:55:58 +01:00
"requirements": "{{var_tandoor_directory}}/program/requirements.txt"
2024-12-30 13:35:21 +01:00
}
},
{
"name": "database",
"become": true,
"become_user": "{{var_tandoor_user}}",
"environment": {
"VIRTUAL_ENV": "{{var_tandoor_directory}}/program",
},
2024-12-30 13:35:21 +01:00
"ansible.builtin.shell": {
"cmd": "bin/python3 manage.py migrate"
}
},
{
"name": "static files",
"become": true,
"become_user": "{{var_tandoor_user}}",
"environment": {
"VIRTUAL_ENV": "{{var_tandoor_directory}}/program",
},
2024-12-30 13:35:21 +01:00
"ansible.builtin.shell": {
"cmd": "bin/python3 manage.py collectstatic --no-input"
}
},
{
"name": "static files",
"become": true,
"become_user": "{{var_tandoor_user}}",
"environment": {
"VIRTUAL_ENV": "{{var_tandoor_directory}}/program",
},
2024-12-30 13:35:21 +01:00
"ansible.builtin.shell": {
"cmd": "bin/python3 manage.py collectstatic_js_reverse"
}
},
{
"name": "frontend stuff",
"become": true,
"become_user": "{{var_tandoor_user}}",
2024-12-30 13:35:21 +01:00
"ansible.builtin.shell": {
2024-12-30 14:55:58 +01:00
"chdir": "{{var_tandoor_directory}}/program/vue",
2024-12-30 13:35:21 +01:00
"cmd": "yarn install && yarn build"
}
},
{
"name": "configuration",
"become": true,
"become_user": "{{var_tandoor_user}}",
2024-12-30 13:35:21 +01:00
"ansible.builtin.template": {
"src": "conf.j2",
2024-12-30 14:55:58 +01:00
"dest": "{{var_tandoor_directory}}/program/.env"
2024-12-30 13:35:21 +01:00
}
},
{
"name": "systemd unit",
"become": true,
2024-12-30 13:35:21 +01:00
"ansible.builtin.template": {
"src": "systemd-unit.js",
"dest": "/etc/systemd/system/tandoor.service"
}
},
{
"name": "start",
"become": true,
"ansible.builtin.systemd_service": {
"enabled": true,
"state": "started",
"name": "tandoor"
}
}
]