Skip to content
Zoos GlobalZoos GlobalZoos EngineeringHub

Deployment

Guide to deployment processes, environments, and CI/CD pipelines.

stableDeployment Guideintermediateproductionstagingci-cdreleasedeployment
1 min readUpdated Jul 24, 2026@platform-teamPlatform Engineering
Edit source

This guide outlines our deployment pipeline, release management, and monitoring during deployments.

We maintain three primary deployment environments:

Environment Purpose Target Branch Trigger
Development Sandbox for local integrations and quick testing. dev Automated on commit
Staging Pre-production testing, QA verification, and stakeholder review. main Pull Request merges
Production Live system serving real customers. main (tagged) GitHub Release / Manual Tag

Our pipelines are defined in GitHub Actions (.github/workflows/). The pipeline follows these phases:

graph LR
Code[Push Code] --> Lint[Lint & Test]
Lint --> Build[Build Container]
Build --> Publish[Publish to AWS ECR]
Publish --> Deploy[Deploy to ECS Fargate]

Before code can be merged into the main branch, the following checks must pass:

  1. All unit tests must pass.
  2. Code coverage must meet the minimum threshold (default: 80%).
  3. CodeQL security analysis must report no high or critical issues.
  4. At least one approval from a CODEOWNER is required.

If an issue is detected post-deployment:

  1. Locate the active workflow run on GitHub Actions.
  2. Select the previous stable release version tag.
  3. Trigger a manual deployment with that tag to override the active image, OR revert the offending merge commit in git to trigger an automated rollback.