ansible-role-coller/tasks/main.yml
Julien Riou c6dd4c04f3
feat: Use PostgreSQL
Signed-off-by: Julien Riou <julien@riou.xyz>
2025-08-26 13:02:15 +02:00

54 lines
1.3 KiB
YAML

---
- name: check password
ansible.builtin.assert:
that:
- coller_db_password | mandatory
- name: download source code
ansible.builtin.git:
repo: https://git.riou.xyz/jriou/coller.git
dest: /opt/coller
- name: create directories
ansible.builtin.file:
path: "{{ item }}"
state: directory
owner: root
group: root
mode: "0755"
loop:
- "{{ coller_config_dir }}"
- name: create docker-compose files
ansible.builtin.template:
src: "{{ item.src }}.j2"
dest: "{{ coller_config_dir }}/{{ item.src }}"
owner: root
group: root
mode: "{{ item.mode }}"
loop:
- src: docker-compose.yml
mode: "0644"
- src: db.env
mode: "0600"
- name: create configuration file
ansible.builtin.copy:
content:
database_type: postgres
database_dsn: "host=db dbname={{ coller_db_name }} user={{ coller_db_user }} password={{ coller_db_password }}"
dest: "{{ coller_config_dir }}/collerd.json"
owner: root
group: root
mode: "0640"
no_log: true
- name: start service
community.docker.docker_compose_v2:
project_src: "{{ coller_config_dir }}"
files:
- docker-compose.yml
- name: manage iptables
when: coller_manage_iptables
ansible.builtin.include_tasks: manage-iptables.yml