How balachmir-cp-2077/gitops-microservices-platform works
This repository combines a GitOps-managed Kubernetes platform with an order API and inventory catalog. The main customer workflow enters through ingress, reaches the order service, validates item stock and price through inventory, and returns an order; the order service also serves a dashboard and order listings. Separately, ArgoCD reconciles the declared Kubernetes manifests from Git. Runtime calls are supported by the sampled application code; deployment and reconciliation links follow the README, while individual manifest details were not sampled.
Main entry points: k8s Desired Manifests · inventory/deployment.yaml Inventory Deployment · app.py Order API and Dashboard · order/deployment.yaml Order Deployment
Components 17
GitOps Control
- ArgoCD Application
argocd/application.yaml - Desired Manifests
k8s - ArgoCD Repo Server
- ArgoCD Controller
Kubernetes Platform
- Ingress Routing
k8s/ingress.yaml - Order Configuration
k8s/order/configmap.yaml - Order Deployment
k8s/order/deployment.yaml - Order Service Route
k8s/order/service.yaml - Inventory Configuration
k8s/inventory/configmap.yaml - Inventory Deployment
k8s/inventory/deployment.yaml - Inventory Service Route
k8s/inventory/service.yaml
Order Service
- Order API and Dashboard
services/order-service/app.py - In-Memory Orders
services/order-service/app.py
Inventory Service
- Inventory API
services/inventory-service/app.py - In-Memory Catalog
services/inventory-service/app.py
Other components
- Customer
- Git Repository
Connections 23
- Git Repository → ArgoCD Repo Server: polls manifests
- ArgoCD Application → ArgoCD Repo Server: configures source
- ArgoCD Repo Server → ArgoCD Controller: supplies manifests
- ArgoCD Controller → Desired Manifests: reconciles desired state
- Desired Manifests → Ingress Routing: declares routing
- Desired Manifests → Order Configuration: declares configuration
- Desired Manifests → Order Deployment: declares workload
- Desired Manifests → Order Service Route: declares service
- Desired Manifests → Inventory Configuration: declares configuration
- Desired Manifests → Inventory Deployment: declares workload
- Desired Manifests → Inventory Service Route: declares service
- Order Configuration → Order Deployment: configures
- Inventory Configuration → Inventory Deployment: configures
- Customer → Ingress Routing: HTTP request
- Ingress Routing → Order Service Route: routes request
- Order Service Route → Order Deployment: forwards traffic
- Order Deployment → Order API and Dashboard: runs
- Order API and Dashboard → Inventory Service Route: queries item and health
- Order API and Dashboard → Inventory Deployment: calls inventory API
- Inventory Service Route → Inventory Deployment: forwards traffic
- Inventory Deployment → Inventory API: runs
- Inventory API → In-Memory Catalog: reads item data
- Order API and Dashboard → In-Memory Orders: reads and writes