# Assignment Status ## Practical Part | # | Requirement | Status | Implementation | | --- | ----------------------------------- | ------ | -------------------------------------------------------- | | 1.1 | Helm chart: FleetDM Server | Done | `fleetdm-stack/` umbrella chart with Fleet subchart | | 1.2 | Helm chart: MySQL | Done | `fleet.mysql.enabled: true` in values.yaml | | 1.3 | Helm chart: Redis | Done | `fleet.redis.enabled: true` in values.yaml | | 2.1 | `make cluster` | Done | Kind (default) or Minikube with ingress-nginx | | 2.2 | `make install` | Done | `helm upgrade --install` with dep update + TLS cert gen | | 2.3 | `make uninstall` | Done | `helm uninstall` + namespace cleanup | | 3.1 | README: install & teardown | Done | Quick Start, Installation, Teardown sections | | 3.2 | README: verification steps | Done | Verification section + `make verify` target | | 4.1 | CI pipeline for Helm releases | Done | Gitea Actions: lint on push, release on `v*` tag | | 4.2 | Expose FleetDM UI | Done | `make port-forward` → https://localhost:8585 (+ ingress) | | 4.3 | `fleet prepare db` on fresh install | Done | `autoApplySQLMigrations: true` in values.yaml | ## Theoretical Part | # | Requirement | Status | Implementation | | --- | -------------------------------------- | ------ | ----------------------------------------------------------- | | T1 | 1–2 page architecture document | Done | `docs/architecture-design-company-inc.md` (7 sections) | | T2 | High-Level Diagram (HLD) | Done | `docs/architecture-hld.md` (3 Mermaid diagrams) | | T3 | Cloud environment structure | Done | GCP + 4 projects (prod, staging, shared, sandbox) | | T4 | Network design (VPC, security) | Done | VPC architecture, 5 security layers, Mermaid diagram | | T5 | Compute platform (GKE, scaling, CI/CD) | Done | GKE Autopilot, HPA, ArgoCD/Flux GitOps | | T6 | Database (MongoDB, backups, HA, DR) | Done | MongoDB Atlas, multi-AZ, continuous backup, cross-region DR | ## Verification - **Local cluster**: Kind cluster `fleetdm` running - **Pods**: Fleet (1/1), MySQL (1/1), Redis (1/1) — all Running - **Fleet UI**: HTTP 200 at https://localhost:8585 via `make port-forward` - **Gitea Actions**: Lint job passing (run #5), release job correctly skipped (tag-only) - **Helm lint**: `1 chart(s) linted, 0 chart(s) failed` ## Key Files | File | Purpose | | ------------------------------------------------- | -------------------------------------------------------------------- | | `Makefile` | `cluster`, `install`, `uninstall`, `verify`, `port-forward`, `clean` | | `README.md` | Full documentation | | `fleetdm-stack/Chart.yaml` | Helm chart definition (v0.1.0) | | `fleetdm-stack/values.yaml` | Fleet + MySQL + Redis configuration | | `fleetdm-stack/templates/fleet-secret.yaml` | TLS certs + Fleet secret | | `fleetdm-stack/templates/mysql-secret-alias.yaml` | Secret alias for migration job | | `.github/workflows/release.yaml` | Gitea Actions CI/CD pipeline | | `docs/architecture-design-company-inc.md` | Theoretical: architecture document | | `docs/architecture-hld.md` | Theoretical: HLD Mermaid diagrams | | `docs/verification-log.md` | Deployment verification output |