3.4 KiB
3.4 KiB
Per AI Blitz Plan §6. Layer: 1-T.
01 — Repository Structure
devops-infra-argo-config/
├── incubator/ # Parent ArgoCD Applications (one per cluster)
│ │ # Structure varies by branch:
│ │ # main: prd/ + admin/
│ │ # develop: infra/ + apps/ (stg+dev clusters)
│ │ # pre-prod: prd/ + admin/ (int values in values/int/)
│ ├── prd/ # Production clusters (main branch)
│ │ ├── incubator-infra-k8s-central-prd-ase1.yaml
│ │ ├── incubator-infra-k8s-demand-prd-ase1.yaml
│ │ └── ... # ~15+ prd clusters
│ └── admin/ # Admin clusters (k8s-admin-prd, k8s-devops-admin, k8s-sec-admin)
│ └── ...
├── values/ # Per-cluster tool lists
│ ├── prd/
│ │ ├── incubator-infra-k8s-central-prd-ase1-values.yaml
│ │ └── ... # Mirrors incubator/prd/ 1:1
│ ├── int/ # Integration clusters (pre-prod branch only)
│ │ └── incubator-infra-k8s-shared-int-ase1-values.yaml
│ ├── dev/ # Stg+dev clusters (develop branch) — dir is named "dev"
│ │ ├── incubator-infra-k8s-central-stg-ase1-values.yaml
│ │ ├── incubator-infra-k8s-central-dev-ase1-values.yaml
│ │ └── ... # Both stg and dev cluster values
│ └── admin/
├── generic-argo-apps-chart/ # Single Helm chart that renders child Applications
│ ├── Chart.yaml # meesho-generic-argo-apps-chart v0.1.0
│ └── templates/
│ └── genericTemplate.yaml # Iterates appSpec[] → Application CRDs
├── projects/ # ArgoCD AppProject definitions
│ ├── sre-project.yaml # sre project (all namespaces/clusters)
│ └── sec-project.yaml # sec project (security-scoped)
├── external-name-service-incubator/ # Cross-cluster DNS routing Applications
├── external-name-service-template/ # Helm chart for ExternalName services
├── external-name-service-values/ # MCS topology values per zone
├── pre-commit-scripts/ # Git hooks (TruffleHog, CAC validate, Yaak)
├── post-commit-scripts/ # Metrics hooks
└── repository.yaml # Repo metadata (automation-owned, DO NOT EDIT)
Directory editability by layer
| Directory | Purpose | Agent editable? |
|---|---|---|
incubator/<env>/ |
Parent Application YAMLs | Layer 1-T (new clusters only) |
values/<env>/ |
Per-cluster tool lists (appSpec[]) |
Layer 1-T ✓ |
generic-argo-apps-chart/ |
Helm chart template | Layer 1-T HIGH RISK |
projects/ |
ArgoCD AppProject RBAC | Layer 2 (advisory) |
external-name-service-*/ |
Cross-cluster DNS | Layer 1-T (manual) |
pre-commit-scripts/ |
Git hooks | Layer 3 (blocked) |
repository.yaml |
Automation-owned metadata | Layer 3 (blocked) |