DevOps by Default Blog

GOTRS: A Year of Building in the Open


Happy 2026! GOTRS version 0.5.0 marks a good moment to reflect on what’s been built since August.

The Problem We Set Out to Solve

OTRS-based ticketing systems work, but they’re stuck in the past. Perl monoliths don’t fit modern deployment patterns. Organisations wanted to modernise without losing their ticket history. Migration to other platforms meant abandoning years of data.

We asked: could we build something modern that preserves compatibility with existing OTRS databases?

What We Built

After several months of development, the answer is yes. GOTRS now includes:

CI/CD Pipeline - GitHub Actions workflows with containerised testing. Security scanning (gosec, govulncheck, Semgrep), Docker builds, and Codecov integration on every commit.

Admin Modules - Full CRUD for templates, roles, services, and dynamic fields. The template system supports 8 types with queue assignments and variable substitution.

Customer Portal - A complete self-service interface where customers can create tickets, view responses, and manage their requests. Full i18n support with rich text editing.

Email Infrastructure - RFC-compliant threading with Message-ID, In-Reply-To, and References headers. POP3 and IMAP connectors with postmaster filtering.

The self-registering handler pattern keeps the codebase organised. Database compatibility across PostgreSQL and MySQL gives users choice.

The Benefits

Organisations can now run a modern ticketing system without abandoning their data. The same database schema works with both OTRS and GOTRS.

Container-native deployment means Kubernetes, Docker, and Podman work out of the box. No complex installation procedures. No Perl dependencies.

By the numbers: 52+ unit tests for Dynamic Fields, 31 for Admin Services, 18 for Templates. 7 dynamic field types across 8 ticket screen configurations.

The focus for 2026 shifts to workflow automation and hardening for production deployments.