Files
computer-playbook/roles/web-app-taiga
Kevin Veen-Birkenbach e6803e5614 refactor(ansible): normalize include_role syntax and unify host config paths via path_join
- Remove stray spaces after include_role: across many roles to ensure clean YAML and
  consistent linting/formatting.
- Listmonk:
  - Introduce LISTMONK_CONFIG_HOST = [ docker_compose.directories.config, 'config.toml' ] | path_join
  - Use that var in the template task (dest) and the docker-compose volume mount
- Matrix:
  - Build MATRIX_SYNAPSE_CONFIG_PATH_HOST, MATRIX_SYNAPSE_LOG_PATH_HOST, and
    MATRIX_ELEMENT_CONFIG_PATH_HOST via path_join
- Mobilizon:
  - Build mobilizon_host_conf_exs_file via path_join
  - Keep get_app_conf strictness unchanged (defaults to True in our filter), so behavior
    remains strict even though the explicit third arg was dropped
- Simpleicons:
  - Build server.js and package.json host paths via path_join
- Numerous web-app roles (Confluence, Discourse, EspoCRM, Friendica, Funkwhale, Gitea,
  GitLab, Jenkins, Joomla, Listmonk, Mailu, Mastodon, Matomo, Matrix, MediaWiki,
  Mobilizon, Moodle, Nextcloud, OpenProject, Peertube, Pixelfed, Pretix, Roulette Wheel,
  Snipe-IT, Syncope, Taiga, WordPress, XWiki, Yourls) and web-svc roles (coturn,
  libretranslate, simpleicons) updated for consistent include_role formatting

Why:
- path_join avoids double slashes and missing separators across different config roots
- Consistent include_role: formatting improves readability and prevents linter noise

Ref:
- Conversation: https://chatgpt.com/share/68d14711-727c-800f-b454-7dc4c3c1f4cb
2025-09-22 14:55:25 +02:00
..

Taiga

Description

Taiga is a powerful and intuitive open-source project management platform tailored for agile teams. Whether you're practicing Scrum, Kanban, or a custom hybrid workflow, Taiga offers a rich, customizable environment to plan, track, and collaborate on your projects — without the complexity of enterprise tools or the vendor lock-in of SaaS platforms.

This Ansible role deploys Taiga in a Docker-based environment, allowing fast, reproducible, and secure installations. It also optionally integrates OpenID Connect (OIDC) for single sign-on via providers like Keycloak.


Why Taiga?

Taiga is ideal for developers, designers, and agile teams who want:

  • Beautiful UI: Clean, modern, and responsive interface.
  • 📌 Agile Workflows: Supports Scrum, Kanban, Scrumban, and Epics.
  • 🗃️ Backlog & Sprint Management: Create user stories, tasks, and sprints with ease.
  • 📈 Burn-down Charts & Metrics: Monitor velocity and progress.
  • 🔄 Custom Workflows: Define your own states, priorities, and permissions.
  • 📎 Attachments & Wiki: Collaborate with file uploads and internal documentation.
  • 🔐 SSO/Authentication Plugins: OpenID Connect, LDAP, GitHub, GitLab and more.
  • 🌍 Multilingual UI: Used by teams worldwide.

Purpose

This role automates the deployment and configuration of a complete, production-ready Taiga stack using Docker Compose. It ensures integration with common infrastructure tools such as Nginx, PostgreSQL, and RabbitMQ, while optionally enabling OpenID Connect authentication for enterprise-grade SSO.

By using this role, teams can set up Taiga in minutes on Arch Linux systems — whether in a homelab, dev environment, or production cluster.


Features

  • 🐳 Docker-Based Deployment: Easy containerized setup of backend, frontend, async workers, and events service.
  • 🔐 OIDC (Single Sign-On): Supported via:
  • 📨 Email Backend: Supports SMTP and console backends for development.
  • 🔁 Async & Realtime Events: Includes RabbitMQ and support for Taigas event system.
  • 🌐 Reverse Proxy Ready: Integrates with Nginx using the sys-stk-front-proxy role.
  • 🧩 Composable Design: Integrates cleanly with other Infinito.Nexus infrastructure roles.

Author

Developed and maintained by Kevin Veen-Birkenbach
Email: kevin@veen.world
Website: veen.world

Part of the Infinito.Nexus Project
License: Infinito.Nexus NonCommercial License