85 lines
2.1 KiB
YAML
85 lines
2.1 KiB
YAML
---
|
|
# tasks file for jotbe.cryptpad-docker
|
|
- name: Ensure Docker Compose project directory exists
|
|
file:
|
|
path: /home/{{ docker_user }}/cryptpad
|
|
state: directory
|
|
owner: '{{ docker_user }}'
|
|
group: '{{ docker_user }}'
|
|
|
|
- name: Provide docker-compose.yml
|
|
template:
|
|
src: templates/docker-compose.cryptpad.yml.j2
|
|
dest: /home/{{ docker_user }}/cryptpad/docker-compose.yml
|
|
owner: "{{ docker_user }}"
|
|
group: "{{ docker_user }}"
|
|
mode: '0644'
|
|
|
|
- name: Output docker-compose.yml
|
|
shell: cat /home/{{ docker_user }}/cryptpad/docker-compose.yml
|
|
register: output
|
|
|
|
- debug:
|
|
var: output
|
|
|
|
- name: Provide env vars
|
|
copy:
|
|
dest: /home/{{ docker_user }}/cryptpad/.env
|
|
owner: "{{ docker_user }}"
|
|
group: "{{ docker_user }}"
|
|
mode: '0640'
|
|
content: |
|
|
VERSION=v3.24.0
|
|
USE_SSL=false
|
|
STORAGE='./storage/file'
|
|
LOG_TO_STDOUT=true
|
|
|
|
- name: Ensure cryptpad config directory exists
|
|
file:
|
|
path: /home/{{ docker_user }}/cryptpad/data/config
|
|
state: directory
|
|
owner: '{{ docker_user }}'
|
|
group: '{{ docker_user }}'
|
|
|
|
- name: Provide cryptpad config
|
|
template:
|
|
src: templates/config.js.j2
|
|
dest: /home/{{ docker_user }}/cryptpad/data/config/config.js
|
|
owner: "{{ docker_user }}"
|
|
group: "{{ docker_user }}"
|
|
mode: '0644'
|
|
|
|
- name: "docker-compose: Teardown existing cryptpad service"
|
|
docker_compose:
|
|
project_src: "/home/{{ docker_user }}/cryptpad/"
|
|
state: absent
|
|
tags: ['never', 'teardown']
|
|
|
|
- name: "docker-compose: Start cryptpad service"
|
|
docker_compose:
|
|
project_src: "/home/{{ docker_user }}/cryptpad/"
|
|
pull: yes
|
|
register: output
|
|
tags: service_start
|
|
|
|
- debug:
|
|
var: output
|
|
|
|
# - assert:
|
|
# that:
|
|
# - "output.ansible_facts['cryptpad-app']['cryptpad-app'].state.running"
|
|
|
|
- name: "Test whether cryptpad is healthy from the outside"
|
|
when: not ansible_check_mode
|
|
become: false
|
|
uri:
|
|
url: "{{ cryptpad_http_unsafe_origin_url }}"
|
|
return_content: yes
|
|
timeout: 300
|
|
validate_certs: no
|
|
register: url_check
|
|
delegate_to: localhost
|
|
until: "'CryptPad: Zero Knowledge' in url_check.content"
|
|
retries: 5
|
|
delay: 10
|
|
tags: health
|