Roadmap¶
The full, continuously updated list lives in IMPROVEMENTS.md — each item is marked (done …) inline as it lands. Highlights:
Shipped¶
- GitOps core: multi-repo, webhooks, rollback, prune, self-heal, sync waves,
pre/post-sync hooks, app-of-apps (
ECSServiceSet), values-file templating, sync windows - AWS coverage:
ECSClusterandECSTask(one-off jobs / run-now) kinds, scheduled tasks, autoscaling (CPU, memory, and ALB request-count per target), load balancers (attach to an existing target group or create the target group + listener rule from the manifest), capacity providers (Fargate Spot), container health checks, ECR digest pinning, labels → AWS tags, task-definition cleanup, multi-account profiles, EFS task volumes (with EFS Access Point + IAM), FireLens sidecars (awsfirelenslog driver + fluentbit/fluentd router), Service Connect per service (namespace, discovery names, client aliases), native ECS deployment strategies (rolling / blue-green / canary / linear withdeploymentController=ECS, bake time, dark canary via test listener, CloudWatch-alarm auto-rollback, and up to 8 Lambda / PAUSE lifecycle hooks across all 8 stages) - Security: GitHub OAuth and generic OIDC (Google/Okta/Keycloak/Dex/Auth0/Azure AD)
- RBAC, API tokens, audit log, CSP/CSRF/rate limiting, encrypted credentials, non-root container, JSON Schema publishing, sliding-window session refresh with absolute cap
- Operations: HA leader election, dry-run mode, exponential backoff, batched AWS describes, parallel reconciliation, readiness probes, Prometheus metrics, Slack notifications, structured logging
- UI: Argo-style dashboard, live logs, task forensics, deployment timeline (outcome, commit, images, duration per deploy), dark mode, URL-shared filters, rich side-by-side diff (YAML/JSON toggle, syntax highlighting, line numbers, synchronized scrolling, hide-unchanged fold, +N/−N stats), deployment strategy panel on the Overview tab (colored badge, live bake-time countdown, canary/linear sizing, rollback alarms, lifecycle-hook list)
- Testing:
moto-backed e2e suite exercising apply + diff round-trip against a mocked AWS (backend/tests/test_e2e_moto.py); sandbox kit atexamples/e2e/(IAM policy, per-scenario manifests, run/cleanup scripts) for real-AWS smoke runs
Next up¶
- Grafana dashboard JSON — a ready-made dashboard for the Prometheus metrics.
- Backoff & retry — per-app exponential backoff on repeated sync failures, with a manual reset once the underlying cause is fixed.
- AWS rate-limit handling — botocore adaptive retry mode, jitter between apps.
- CLI expansion —
androcd diff,androcd sync <app>,androcd logs <app>hitting the API from CI. - UI-driven incident pause — global freeze switch + per-app Pause button in
the header, persisted and audited. Today the workaround is a manifest edit
(
syncPolicy.autoSync: false), which is too slow for real incidents.
Contributing¶
Issues and PRs are welcome — see CONTRIBUTING.md. The project uses conventional commits and automated releases (release-please).