CI/CD¶
Purpose¶
Exactly what runs automatically, verified directly against
.github/workflows/ci.yml and .github/workflows/deploy-cloudflare.yml - not the README's
now-stale "deployment is manual" claim.
The real current state (verified, not assumed)¶
Production deployment is automatic, not manual, for every active app. ci.yml's
deploy-production job runs on every push to main that passes validate. The root
README.md's previous "Cloudflare deployment ... is intentionally manual until repository
secrets are configured" described an earlier state of this repository; the README has since been
corrected to describe the automatic pipeline. See Deployment "Verifying whether
the README's claim still holds" for the exact evidence.
Two workflows¶
ci.yml |
deploy-cloudflare.yml |
|
|---|---|---|
| Trigger | push/pull_request to main, workflow_dispatch |
workflow_dispatch only |
| Deploys automatically? | Yes (on push to main only) |
No - manual dispatch always |
| Apps covered | Corporate, Software, Logistics, Commerce, Embroidery, Admin + API (not Investors) | Corporate, Software, Logistics, Commerce, Embroidery, Admin, Investors + API (all active apps, plus the pre-existing Investors entry) |
| Runs smoke test? | Yes | No |
| Concurrency group | akshaya-production |
akshaya-production (same group - can't race each other) |
As of fix/platform-hardening, coverage is aligned for every active app (Corporate, Software,
Logistics, Commerce, Embroidery, Admin, API) across both workflows. Investors is the one
deliberate asymmetry left: it's currently excluded / inactive for the active platform, so it's
intentionally absent from ci.yml's automatic path and the smoke test, while its pre-existing
manual-only entry in deploy-cloudflare.yml was left untouched rather than silently removed - see
Deployment for the full detail.
Pages in this section¶
- CI - the
validatejob in full. - Deployment - both deploy paths, in full, including the coverage gaps.
- Secrets - GitHub Actions secrets vs. Cloudflare Worker secrets.