You call for a review, wait for approvals, click through too many dashboards, and still forget which branch you were supposed to merge. That messy loop between pipelines and permissions is why App of Apps Gerrit exists. It pulls structure out of configuration chaos, giving you a single control layer for how code moves from intent to deployment.
App of Apps is a pattern born from GitOps and Kubernetes thinking. Instead of managing each environment’s YAML files separately, you manage a parent “app” that declares child apps. Gerrit, meanwhile, is the code review workhorse that enforces discipline before anything hits main. Together, App of Apps Gerrit links the definition of your environments with the governance of your changes. The result is versioned infrastructure that behaves like software should: reviewable, traceable, and automated.
How the integration works
Picture Gerrit sending an approved change through a continuous delivery controller like Argo CD. The App of Apps logic handles multiple layers of manifests, each one mapping to an environment or service. When Gerrit merges a patch, the parent app syncs its children automatically. Your staging environment updates itself without a human typing “kubectl apply” again.
The identity flow relies on existing enterprise standards such as OIDC and service accounts from providers like AWS IAM or Google Cloud IAM. That means you can tie review permissions in Gerrit to actual deployment privileges. No need for ghost credentials hidden in YAML files. Everything maps cleanly from developer role to operational access.
Best practices for App of Apps Gerrit setups
Keep your parent app lightweight. It should orchestrate, not micromanage.
Use short-lived secrets managed by your cloud provider’s KMS. Rotate them automatically.
Write verifying steps into Gerrit hooks so reviewers see rendered manifests, not just raw templates.
Treat configuration repositories as audited systems. Align with SOC 2 or ISO 27001 expectations early.