A production-ready GitOps pipeline demonstrating Infrastructure-as-Code (IaC) and Continuous Delivery on Google Cloud Platform.
This project implements a "Push-button" infrastructure and application lifecycle:
- Infrastructure: Provisioned via Terraform (Compute Engine, VPC, Firewalls).
- Orchestration: K3s (Lightweight Kubernetes) for container management.
- Continuous Delivery: ArgoCD Core monitors a GitHub repository for declarative state.
- Application: Scalable Nginx deployment exposed via NodePort.
- Cloud: Google Cloud Platform (GCP)
- IaC: Terraform
- Kubernetes: K3s
- GitOps: ArgoCD Core
- Configuration: YAML / HCL
- Automated Scaling: Demonstrated GitOps by scaling from 1 to 3 replicas via Git commit, with ArgoCD reconciling the state in <60 seconds.
- Resource Optimization: Successfully migrated from
e2-microtoe2-mediumto resolve TLS handshake and memory thrashing issues. - Security: Implemented Least Privilege firewall rules, specifically exposing port
30080for application traffic.
The application is currently live at:
http://<EXTERNAL_IP>:30080
The Nginx web server is successfully exposed via a GCP Firewall rule and Kubernetes NodePort, reachable at the VM's public IP.

ArgoCD Core successfully synchronized the desired state from GitHub. Note the Synced and Healthy status.

By updating the replicas count in GitHub, the cluster automatically scaled to 3 pods without manual intervention.
