--- - name: prepare storage volume vars: storage_volume: "{{ collabora_code_instances[collabora_code_instance].storage }}" include_role: name: "storage/{{ collabora_code_instances[collabora_code_instance].storage.type }}/volume" - set_fact: collabora_code_instance_basepath: "{{ storage_volume_mountpoint }}" - name: create instance config directory file: path: "{{ collabora_code_instance_basepath }}/config" state: directory mode: 0750 - name: generate configuration file template: src: "config/coolwsd.{{ collabora_code_instances[collabora_code_instance].version }}.xml.j2" dest: "{{ collabora_code_instance_basepath }}/config/coolwsd.xml" - name: build custom image when: "'custom_image' in collabora_code_instances[collabora_code_instance]" include_tasks: custom-image.yml - name: install pod manifest vars: kubernetes_standalone_pod: name: "collabora-code-{{ collabora_code_instance }}" spec: "{{ lookup('template', 'pod-spec.yml.j2') }}" mode: "0600" config_hash_items: - path: "{{ collabora_code_instance_basepath }}/config/coolwsd.xml" properties: - checksum include_role: name: kubernetes/standalone/pod - 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-{{ collabora_code_instance }}" template: generic tls: certificate_provider: "{{ acme_client }}" hostnames: - "{{ collabora_code_instances[collabora_code_instance].hostname }}" custom: "{{ collabora_code_nginx_vhost_custom }}" include_role: name: nginx/vhost