WeAreDevelopers LIVE • May 12, 2021

GitLab CI pipelines for a whole company

Martin Beránek

Martin Nik explains how AKI escaped undocumented Jenkins toil by adopting a standardized GitLab CI monorepo. Learn how they slashed operations support to just eight hours a month.

Pause
Mute Enter Fullscreen
#1 about 3 min

Introduction to Aki and the operations department

Overview of a fast-changing software house and its approach to operations and standardization.

#2 about 3 min

Challenges with legacy Jenkins and Groovy pipelines

How undocumented, unversioned, and messy codebases led to unmaintainable CI pipelines and developer toil.

#3 about 2 min

Justifying the migration to a new CI system

Calculating support hours and operational costs helped management decide to start over with a new CI platform.

#4 about 3 min

Utilizing monorepos and documentation for shared pipelines

Adopting a monorepo approach for managing shared CI configurations improves maintainability and ensures self-explanatory documentation.

#5 about 4 min

GitLab CI pipeline stages and dependency graphs

Using the needs statement to create directed acyclic graphs speeds up complex multi-stage pipeline execution.

#6 about 6 min

Applying clean code principles to pipeline definitions

Recycling pipeline templates via include statements, establishing clear code ownership, and properly documenting workarounds minimizes developer frustration.

#7 about 4 min

Testing and environment management in GitLab CI

Leveraging Docker Compose for tests, dynamic GitLab environments, and Danger for static analysis ensures consistent code quality.

#8 about 3 min

Optimizing pipeline performance with local caching

Mounting volumes and using local registries like Verdaccio mitigates the high network cost of fetching heavy dependencies.

#9 about 3 min

Lessons learned from maintaining monorepo pipelines

Enforcing image size limits, automating dependency updates with Renovate, and using Gitmoji streamlines pipeline evolution without disrupting developers.

#10 about 3 min

Migration outcomes and physical runner management

Transitioning to YAML-based GitLab CI drastically reduced operational support hours and improved team visibility over infrastructure changes.

#11 about 3 min

Feature requests for future GitLab CI versions

Enhancements like native HashiCorp Vault integration, map variables, and Jenkins-style workspaces would further simplify pipeline configuration.

Matching moments

1:31 min

The ongoing role of continuous integration pipelines in GitOps

Roberth Strand · LIVE

2:35 min

Architecture of a GitOps backup pipeline demonstration

Florian Trieloff · World Congress 2023

6:14 min

Structuring CI/CD pipelines with integrated security and quality checks

Christoph Ruggenthaler · LIVE

2:38 min

Exploring the core benefits of adopting GitOps

Davide Imola Davide Imola · LIVE

1:37 min

Building automated continuous deployment pipelines and final architectural insights

Simone Desantis Simone Desantis · World Congress 2026 Europe

1:07 min

Evaluating current trends in CI/CD pipelines

Dominik Kress · LIVE