Skip to content

Latest commit

 

History

History

README.md

🚀 Lab 35: Retail Pack Deployment Gate and Rollback Trigger

🧭 Lab Overview

Built a Dockerized retail API, added health and readiness gates, and implemented automatic rollback when a faulty release failed deployment checks.

🎯 Objectives

  • Implement deployment gates to protect customer-facing systems
  • Configure automated health checks for production deployments
  • Create automatic rollback mechanisms on deployment failure
  • Build a safe deployment pipeline for retail applications

🧩 Prerequisites

  • Basic Linux command line knowledge
  • Understanding of Git fundamentals
  • Familiarity with Docker containers
  • Basic scripting experience (Bash/Python)
  • Knowledge of CI/CD concepts

🖥️ Lab Environment

  • Platform: Ubuntu 24.04 LTS cloud lab environment
  • Host: ip-172-31-10-198
  • Shell: Bash
  • Primary toolchain: Docker, Flask, Requests, PyYAML, Python 3.12, Bash

🛠️ Task Overview

  • Create Retail Application with Health Endpoints
  • Implement Deployment Gate and Rollback System

📁 Repository Structure

lab35-retail-pack-deployment-gate-and-rollback-trigger/
├── app/
│   ├── Dockerfile
│   ├── Dockerfile.faulty
│   ├── retail_app.py
│   └── retail_app_faulty.py
├── config/
│   └── deployment.yaml
├── deployment-scripts/
│   ├── deploy_with_gate.py
│   └── manual_rollback.py
├── logs/
│   └── .gitkeep
├── commands.sh
└── output.txt

✅ Verification and Validation

  • A healthy deployment passed all gates, while a faulty image triggered rollback and restored the previous container.
  • Version 1.0.0 deployed successfully and passed health and readiness gates.
  • Version 2.0.0 intentionally failed health checks with HTTP 503 responses.
  • The deployment gate script rolled back to the previous healthy container automatically.
  • Manual rollback tooling and cleanup commands were also documented.

📘 What I Learned

  • How to protect deployments with explicit health and readiness gates.
  • How to preserve a previous release for rapid rollback.
  • How to model deployment safety checks in a small Python orchestration script.
  • Why customer-facing systems need rollback paths before release promotion.

🌍 Why This Matters

Failed deployments in customer-facing systems must be detected quickly and reversed before they impact revenue and user trust.

🏭 Real-World Applications

  • Blue/green or guarded deployment pipelines.
  • Container health-gated release workflows.
  • Rollback automation for retail and e-commerce services.

🧪 Result

This lab was completed successfully and documented with separate source files, execution commands, runtime output, interview prep, and troubleshooting guidance.

🏁 Conclusion

This lab strengthened practical experience with retail pack deployment gate and rollback trigger in a hands-on Linux environment. The documented workflow, source files, and verification steps make the implementation reproducible and suitable for portfolio use.