Implementing Reusable GitHub Actions Workflows for Scalable CI at McDonald's
McDonald's engineering team built a fast, reliable, and flexible continuous integration system by leveraging reusable GitHub Actions workflows, centralizing CI code, defining a golden‑path pipeline, balancing developer autonomy, and adding observability across multilingual microservices, improving productivity and maintainability.
McDonald's engineering team is at the forefront of digital innovation, creating seamless e‑commerce applications that allow customers to order via mobile devices. Their ecosystem spans many microservices written in multiple languages and running on various cloud‑native services, requiring frequent builds, tests, packaging, and releases.
Advanced Process
To achieve a fast, reliable, and consistent CI pipeline, the team adopted reusable GitHub Actions workflows combined with custom reusable actions. Their key improvement goals include reducing code duplication, establishing a golden‑path CI, increasing developer autonomy without sacrificing quality, and implementing pipeline observability.
Improving Reliability and Code Maintainability
By grouping CI workflows by application language and using reusable workflows on GitHub Actions, they created a central CI code repository. This repository contains the essential stages for any CI process—build, quality and security scans, artifact creation, and tagging. Containers are used to store required utilities and libraries, enabling each stage to run inside a container, which reduces external library downloads, shortens pipeline time, and mitigates security risks.
Golden Path CI Process
The team defined a standardized "golden path" for CI stages such as code quality, security, packaging, and tagging, ensuring consistent quality across all applications. A simple CI caller file is injected into each repository, referencing the golden‑path reusable workflow so that every application follows the same required steps.
Developer Productivity
While a centralized repository can create bottlenecks due to frequent change requests, the new CI system balances centralized control with individual autonomy. Engineers can add custom CI stages by inserting custom actions into the CI caller YAML file without affecting other teams, preserving agility while maintaining a central golden path.
Observability and Monitoring
To achieve enterprise‑level visibility across multiple repositories, workflow queues, and logs, the team uses CI visibility tools that integrate with GitHub Actions. Reusable workflows enable a centralized monitoring solution, allowing DevOps and application teams to track pipeline performance and identify improvement areas. Captured metrics include pipeline count, repository commit history triggering pipelines, delivery time, success/failure rates, and branch monitoring.
Pipeline count
Repository commit history triggering pipelines
Pipeline delivery time
Pipeline success and failure rates
Branch monitoring in GitHub Actions repositories
In summary, reusable workflows and GitHub Actions provide powerful tools for engineers to build robust CI pipelines for a diverse set of applications. Leveraging these capabilities, McDonald's achieved improved reliability, maintainability, developer productivity, and comprehensive monitoring across its microservice landscape.
DevOps Cloud Academy
Exploring industry DevOps practices and technical expertise.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.