summaryrefslogtreecommitdiff
path: root/roles/apps/collabora/code/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'roles/apps/collabora/code/tasks')
-rw-r--r--roles/apps/collabora/code/tasks/custom-image.yml24
-rw-r--r--roles/apps/collabora/code/tasks/main.yml51
-rw-r--r--roles/apps/collabora/code/tasks/nginx-vhost.yml17
3 files changed, 3 insertions, 89 deletions
diff --git a/roles/apps/collabora/code/tasks/custom-image.yml b/roles/apps/collabora/code/tasks/custom-image.yml
deleted file mode 100644
index 84f6b1ae..00000000
--- a/roles/apps/collabora/code/tasks/custom-image.yml
+++ /dev/null
@@ -1,24 +0,0 @@
----
-- name: create build directory for custom image
- file:
- path: "{{ collabora_code_base_path }}/{{ item.key }}/build"
- state: directory
-
-- name: generate Dockerfile for custom image
- copy:
- content: |
- FROM {{ item.value.custom_image.from | default('collabora/code:' + item.value.version) }}
- {{ item.value.custom_image.dockerfile }}
- dest: "{{ collabora_code_base_path }}/{{ item.key }}/build/Dockerfile"
- register: collabora_code_custom_image_docker
-
-- name: build custom image
- docker_image:
- name: "collabora/code/{{ item.key }}:{{ item.value.version }}"
- state: present
- force_source: "{{ collabora_code_custom_image_docker is changed }}"
- source: build
- build:
- path: "{{ collabora_code_base_path }}/{{ item.key }}/build"
- network: host
- pull: yes
diff --git a/roles/apps/collabora/code/tasks/main.yml b/roles/apps/collabora/code/tasks/main.yml
index 84efec5c..11b3fee4 100644
--- a/roles/apps/collabora/code/tasks/main.yml
+++ b/roles/apps/collabora/code/tasks/main.yml
@@ -1,52 +1,7 @@
---
-- name: create collabora-code config subdirectory
+- name: instance specific tasks
loop: "{{ collabora_code_instances | list }}"
- file:
- path: "{{ collabora_code_base_path }}/{{ item }}/config"
- state: directory
- mode: 0750
-
-- name: generate configuration file
- loop: "{{ collabora_code_instances | dict2items }}"
loop_control:
- label: "{{ item.key }}"
- template:
- src: "config/{{ item.value.version | collabora_code_loolvcool | ternary('lool', 'cool') }}wsd.{{ item.value.version }}.xml.j2"
- dest: "{{ collabora_code_base_path }}/{{ item.key }}/config/{{ item.value.version | collabora_code_loolvcool | ternary('lool', 'cool') }}wsd.xml"
-
-- name: remove legacy configuration file
- loop: "{{ collabora_code_instances | dict2items }}"
- loop_control:
- label: "{{ item.key }}"
- file:
- path: "{{ collabora_code_base_path }}/{{ item.key }}/config/{{ item.value.version | collabora_code_loolvcool | ternary('cool', 'lool') }}wsd.xml"
- state: absent
-
-- name: build custom image
- loop: "{{ collabora_code_instances | dict2items }}"
- loop_control:
- label: "{{ item.key }}"
- when: "'custom_image' in item.value"
- include_tasks: custom-image.yml
-
-- name: install pod manifest
- loop: "{{ collabora_code_instances | dict2items }}"
- loop_control:
- label: "{{ item.key }}"
- vars:
- kubernetes_standalone_pod:
- name: "collabora-code-{{ item.key }}"
- spec: "{{ lookup('template', 'pod-spec.yml.j2') }}"
- mode: "0600"
- config_hash_items:
- - path: "{{ collabora_code_base_path }}/{{ item.key }}/config/{{ item.value.version | collabora_code_loolvcool | ternary('lool', 'cool') }}wsd.xml"
- properties:
- - checksum
+ loop_var: collabora_code_instance
include_role:
- name: kubernetes/standalone/pod
-
-- name: install nginx vhost config
- loop: "{{ collabora_code_instances | dict2items }}"
- loop_control:
- label: "{{ item.key }}"
- include_tasks: nginx-vhost.yml
+ name: apps/collabora/code/instance
diff --git a/roles/apps/collabora/code/tasks/nginx-vhost.yml b/roles/apps/collabora/code/tasks/nginx-vhost.yml
deleted file mode 100644
index afd8f1e0..00000000
--- a/roles/apps/collabora/code/tasks/nginx-vhost.yml
+++ /dev/null
@@ -1,17 +0,0 @@
----
-- name: render nginx-vhost custom config
- set_fact:
- collabora_code_nginx_vhost_custom: "{{ lookup('template', 'nginx-vhost.conf.j2') }}"
-
-- name: configure nginx vhost
- vars:
- nginx_vhost:
- name: "collabora-code-{{ item.key }}"
- template: generic
- tls:
- certificate_provider: "{{ acme_client }}"
- hostnames:
- - "{{ item.value.hostname }}"
- custom: "{{ collabora_code_nginx_vhost_custom }}"
- include_role:
- name: nginx/vhost