54 lines
1.3 KiB
YAML
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
|