ansible-role-collabora-onli.../tasks/main.yml
2020-03-28 17:56:49 +01:00

73 lines
1.9 KiB
YAML

---
# tasks file for Collabora Online
- name: Ensure Collabora Online config directory exists
file:
path: /home/{{ docker_user }}/collabora-online
state: directory
owner: '{{ docker_user }}'
group: '{{ docker_user }}'
tags: config
- name: Provide docker-compose.yml
template:
src: templates/docker-compose.collabora-online.yml.j2
dest: /home/{{ docker_user }}/collabora-online/docker-compose.yml
owner: "{{ docker_user }}"
group: "{{ docker_user }}"
mode: '0644'
tags: config
- name: Output docker-compose.yml
shell: cat /home/{{ docker_user }}/collabora-online/docker-compose.yml
register: output
tags: config
- debug:
var: output
- name: Provide Collabora env vars
template:
src: templates/env.collabora-online.j2
dest: /home/{{ docker_user }}/collabora-online/.env
owner: "{{ docker_user }}"
group: "{{ docker_user }}"
mode: '0640'
tags: config
- name: "docker-compose: Teardown existing Collabora service"
docker_compose:
project_src: "/home/{{ docker_user }}/collabora-online/"
state: absent
tags: ['never', 'teardown']
- name: "docker-compose: Bootstrap Collabora service"
docker_compose:
project_src: "/home/{{ docker_user }}/collabora-online/"
register: output
- debug:
var: output
- assert:
that:
- "output.ansible_facts['collabora']['collabora-online_collabora_1'].state.running"
- name: "Wait for Collabora service (443/TLS) to become available from the public internet"
become: false
wait_for:
host: "{{ collabora_virtual_host }}"
port: 443
delegate_to: localhost
- name: "Test whether Collabora is healthy from the public internet"
become: false
uri:
url: https://{{ collabora_virtual_host }}
return_content: yes
timeout: 600
register: url_check
delegate_to: localhost
- fail:
msg: 'Collabora is not available!'
when: "'OK' not in url_check.content"