GitLab CI Now Supports 2,000+ Contributed Projects in the Drupal Ecosystem
Fran Garcia-Linares has announced Drupal.org’s consolidated GitLab CI strategy, which now powers continuous integration for over 2,000 contributed projects. Replacing the legacy DrupalCI system, the GitLab-based solution provides centralized configuration with per-project flexibility, dramatically reducing testing times and simplifying module maintenance across the ecosystem.
Introduced at DrupalCon Lille in 2023, the GitLab CI initiative initially cut Drupal Core testing durations from nearly an hour to just 10 minutes. Continued optimizations have further reduced this to five minutes. Adoption across contrib projects accelerated through a six-line YAML template, enabling modules to inherit shared job configurations with minimal setup. The system offers built-in tests and quality checks without requiring code from maintainers. These include PHP linting, coding standards, spell checks, static analysis, JavaScript and CSS linters, Nightwatch, and PHPUnit. Additional jobs support Upgrade Status, Drupal CMS compatibility, and automated documentation deployment via GitLab Pages.
Maintainers can customize or disable specific jobs through simple variable toggles, test against multiple versions of Drupal, select PHP or database versions, and even integrate the templates within external GitLab instances. All of this is enabled through template inheritance and the include mechanism built into GitLab’s YAML configuration syntax. Templates are centrally maintained within the Drupal GitLab Templates project. By referencing these shared files, contrib projects receive updates automatically. Versioning follows a semantic scheme with tags to support stability, opting in to new features, or pinning specific configurations. The default tag, used widely across projects, can be updated to roll out stable changes instantly at scale. This strategy has unified testing practices across core and contributed modules, raised code quality standards, and allowed contributors to receive immediate in-browser feedback.
Contributors no longer need to upload test-only patches, and most testing logic is abstracted away from individual projects. Garcia-Linares emphasized that the design prioritizes ease of adoption and centralized control, allowing thousands of projects to benefit from consistent, automated CI pipelines with near-zero configuration overhead. Thanks to community input, recent additions include support for Drupal CMS and Recipe compatibility. Further improvements are expected as GitLab CI components stabilize. The team has documented its methods in detail to help other open source ecosystems adopt similar solutions, reinforcing Drupal.org’s commitment to infrastructure transparency and community-led evolution.
Details and templates are available at project.pages.drupalcode.org/gitlab_templates.

