From 4cf996b1bb1271bcf9755e322cbf6c1869cc71bc Mon Sep 17 00:00:00 2001 From: Kevin Veen-Birkenbach Date: Wed, 20 Aug 2025 01:02:11 +0200 Subject: [PATCH] Removed old collabora --- roles/web-app-collabora/README.md | 30 ------------------- roles/web-app-collabora/config/main.yml | 12 -------- roles/web-app-collabora/meta/main.yml | 28 ----------------- roles/web-app-collabora/tasks/main.yml | 17 ----------- .../templates/docker-compose.yml.j2 | 13 -------- roles/web-app-collabora/templates/env.j2 | 4 --- .../web-app-collabora/templates/nginx.conf.j2 | 15 ---------- roles/web-app-collabora/vars/main.yml | 2 -- 8 files changed, 121 deletions(-) delete mode 100644 roles/web-app-collabora/README.md delete mode 100644 roles/web-app-collabora/config/main.yml delete mode 100644 roles/web-app-collabora/meta/main.yml delete mode 100644 roles/web-app-collabora/tasks/main.yml delete mode 100644 roles/web-app-collabora/templates/docker-compose.yml.j2 delete mode 100644 roles/web-app-collabora/templates/env.j2 delete mode 100644 roles/web-app-collabora/templates/nginx.conf.j2 delete mode 100644 roles/web-app-collabora/vars/main.yml diff --git a/roles/web-app-collabora/README.md b/roles/web-app-collabora/README.md deleted file mode 100644 index a0f84975..00000000 --- a/roles/web-app-collabora/README.md +++ /dev/null @@ -1,30 +0,0 @@ -# Docker Collabora (DRAFT) - -## Description - -This Ansible role deploys Collabora Online (CODE) in Docker to enable real-time, in-browser document editing for Nextcloud. It automates the setup of the Collabora CODE container, Nginx reverse proxy configuration, network isolation via Docker networks, and environment variable management. - -## Overview - -* **Dockerized Collabora CODE:** Uses the official `collabora/code` image. -* **Nginx Reverse Proxy:** Configures a public-facing proxy with TLS termination and WebSocket support for `/cool/` paths. -* **Docker Network Management:** Creates an isolated `/28` subnet for Collabora and connects containers securely. -* **Environment Configuration:** Generates a `.env` file with domain, credentials, and extra parameters for Collabora's WOPI server. - -## Features - -* Automatic creation of a dedicated Docker network for Collabora. -* Proxy configuration template for Nginx with long timeouts and WebSocket upgrades. -* Customizable domain names and ports via Ansible variables. -* Support for SSL termination at the proxy level. -* Integration hooks to restart Nginx and recreate Docker Compose stacks on changes. - -## Documentation - -See the role’s `README.md`, task files, and Jinja2 templates in the `roles/web-app-collabora` directory for usage examples and variable definitions. - -## Further Resources - -* [Collabora & Talk Super integration demo](https://www.youtube.com/watch?v=7cRmvTyt1ik) -* [Collabora configuration examples archive](https://cloud.thesysadminhub.com/s/FNKyP43y35HGDTJ?dir=/&openfile=true) -* [Official Collabora CODE website](https://www.collaboraoffice.com/code/) diff --git a/roles/web-app-collabora/config/main.yml b/roles/web-app-collabora/config/main.yml deleted file mode 100644 index 93f55ba9..00000000 --- a/roles/web-app-collabora/config/main.yml +++ /dev/null @@ -1,12 +0,0 @@ -server: - domains: - canonical: - - "collabora.{{ PRIMARY_DOMAIN }}" -docker: - services: - redis: - enabled: true - database: - enabled: false # May this is wrong. Just set during refactoring -features: - logout: false # I think collabora is more a service then a app. So no login neccessary Propably it makes sense to rename it ;) diff --git a/roles/web-app-collabora/meta/main.yml b/roles/web-app-collabora/meta/main.yml deleted file mode 100644 index d05137b5..00000000 --- a/roles/web-app-collabora/meta/main.yml +++ /dev/null @@ -1,28 +0,0 @@ ---- -galaxy_info: - author: "Kevin Veen-Birkenbach" - description: "Deploy Collabora Online CODE in Docker with automated proxy, networking, and environment configuration." - license: "Infinito.Nexus NonCommercial License" - license_url: "https://s.infinito.nexus/license" - company: | - Kevin Veen-Birkenbach - Consulting & Coaching Solutions - https://www.veen.world - min_ansible_version: "2.9" - platforms: - - name: Linux - versions: - - all - galaxy_tags: - - collabora - - docker - - nginx - - office - - wopi - - code - repository: "https://s.infinito.nexus/code" - issue_tracker_url: "https://s.infinito.nexus/issues" - documentation: "https://s.infinito.nexus/code/web-app-collabora" - logo: - class: "fa-solid fa-file-code" - run_after: [] diff --git a/roles/web-app-collabora/tasks/main.yml b/roles/web-app-collabora/tasks/main.yml deleted file mode 100644 index 287c1c67..00000000 --- a/roles/web-app-collabora/tasks/main.yml +++ /dev/null @@ -1,17 +0,0 @@ -- name: create collabora proxy configuration file - template: - src: "nginx.conf.j2" - dest: "{{ NGINX.DIRECTORIES.HTTP.SERVERS }}{{ domains | get_domain(application_id) }}.conf" - notify: restart openresty - -- name: "Include docker-compose role" - include_role: - name: docker-compose - -- name: Create Docker network for Collabora - community.docker.docker_network: - name: svc-db-mariadb - state: present - ipam_config: - - subnet: "{{ networks.local[application_id].subnet }}" - diff --git a/roles/web-app-collabora/templates/docker-compose.yml.j2 b/roles/web-app-collabora/templates/docker-compose.yml.j2 deleted file mode 100644 index 3e7c5519..00000000 --- a/roles/web-app-collabora/templates/docker-compose.yml.j2 +++ /dev/null @@ -1,13 +0,0 @@ -{% include 'roles/docker-compose/templates/base.yml.j2' %} - - collabora: - image: collabora/code - container_name: collabora - ports: - - "127.0.0.1:{{ports.localhost.http[application_id]}}:80" - -{% include 'roles/docker-container/templates/base.yml.j2' %} -{% include 'roles/docker-container/templates/depends_on/dmbs_excl.yml.j2' %} -{% include 'roles/docker-container/templates/networks.yml.j2' %} - -{% include 'roles/docker-compose/templates/networks.yml.j2' %} diff --git a/roles/web-app-collabora/templates/env.j2 b/roles/web-app-collabora/templates/env.j2 deleted file mode 100644 index 3f0634a3..00000000 --- a/roles/web-app-collabora/templates/env.j2 +++ /dev/null @@ -1,4 +0,0 @@ -domain=nxsrv -username=admin -password=${COLLABRA_PASSWORD} -extra_params=--o:ssl.enable=false --o:ssl.termination=true \ No newline at end of file diff --git a/roles/web-app-collabora/templates/nginx.conf.j2 b/roles/web-app-collabora/templates/nginx.conf.j2 deleted file mode 100644 index fbf133c1..00000000 --- a/roles/web-app-collabora/templates/nginx.conf.j2 +++ /dev/null @@ -1,15 +0,0 @@ -server { - server_name {{ domain }}; - - {% include 'roles/srv-web-7-7-letsencrypt/templates/ssl_header.j2' %} - - {% include 'roles/sys-srv-web-inj-compose/templates/server.conf.j2'%} - - {% include 'roles/srv-proxy-7-4-core/templates/headers/content_security_policy.conf.j2' %} - - {% include 'roles/srv-proxy-7-4-core/templates/location/html.conf.j2' %} - - {% set location = '^~ /cool/' %} - - {% include 'roles/srv-proxy-7-4-core/templates/location/html.conf.j2' %} -} \ No newline at end of file diff --git a/roles/web-app-collabora/vars/main.yml b/roles/web-app-collabora/vars/main.yml deleted file mode 100644 index c99aab18..00000000 --- a/roles/web-app-collabora/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -application_id: web-app-collabora \ No newline at end of file