How hotosm/k8s-infra works
This repository provisions and operates HOT’s Kubernetes infrastructure on AWS, then deploys platform services and applications into it. The principal workflow is an operator running Terraform to establish cloud and cluster infrastructure, bootstrapping Kubernetes/Argo CD, and managing app and database deployments through repository manifests. The graph includes workload, storage, and operations branches represented in the tree. README and sampled source excerpts were unavailable beyond the top-level README, so links between individual unsampled components are omitted where their wiring is uncertain.
Main entry points: argocd.yaml Argo CD · terraform Terraform infrastructure · root-app.yaml Argo CD bootstrap · cluster-core Cluster core
Components 16
Cloud Provisioning
- Terraform infrastructure
terraform - AWS resources
Cluster Platform
- Kubernetes cluster
- Argo CD bootstrap
kubernetes/argocd-bootstrap/root-app.yaml - Argo CD
apps/argocd.yaml - Cluster core
apps/cluster-core - CloudNativePG
apps/cloudnativepg.yaml
Cluster Workloads
- Application manifests
apps - Database clusters
databases - fAIr services
apps/fair - OpenAerialMap services
apps/oam - Other applications
apps
Operations
- Monitoring
apps/monitoring - Backup configuration
backup - Operations scripts
scripts
Other components
- Cluster operator
Connections 16
- Cluster operator → Terraform infrastructure: runs
- Terraform infrastructure → AWS resources: provisions
- AWS resources → Kubernetes cluster: hosts
- Cluster operator → Argo CD bootstrap: applies
- Argo CD bootstrap → Kubernetes cluster: bootstraps
- Argo CD → Kubernetes cluster: runs on
- Argo CD → Application manifests: deploys
- Cluster core → Kubernetes cluster: configures
- CloudNativePG → Kubernetes cluster: runs on
- Database clusters → Kubernetes cluster: deploys to
- fAIr services → Kubernetes cluster: deploys to
- OpenAerialMap services → Kubernetes cluster: deploys to
- Other applications → Kubernetes cluster: deploys to
- Monitoring → Kubernetes cluster: monitors
- Backup configuration → Kubernetes cluster: configures backups
- Operations scripts → Cluster operator: supports operations