Skip to content

revert: CF migration (operator pivoted back to DO k8s)#35

Merged
mastermanas805 merged 3 commits into
masterfrom
revert/cf-staging-migration
May 30, 2026
Merged

revert: CF migration (operator pivoted back to DO k8s)#35
mastermanas805 merged 3 commits into
masterfrom
revert/cf-staging-migration

Conversation

@mastermanas805

Copy link
Copy Markdown
Member

Summary

Operator pivoted 2026-05-30: keeping DO k8s for staging, abandoning Cloudflare Containers. Reverts all 3 CF migration PRs: #32 (TF bootstrap + wrangler scaffold + 5 workflows), #33 (TTL=1 + Global Key env vars), #34 (drop cache.tf + nudge).

Removes 2585 lines / 47 files. Specifically:

  • terraform/cloudflare/ (13 files): tokens, R2, DNS, Pages, variables, Makefile, README
  • wrangler/ (~30 files): 8 service subdirs + top-level README + package.json + node_modules-as-dep
  • .github/workflows/terraform*.yml (3 files): plan + per-env apply
  • .github/workflows/wrangler-*.yml (2 files): build + deploy

Bug-burner workflow changes + k8s manifests + NR alerts unaffected.

Companion PRs (revert sequence)

  • instanodedev/api#??? (revert :staging tag + notify-infra-on-migration.yml)
  • instanodedev/worker#??? (revert :staging tag)
  • instanodedev/provisioner#??? (revert :staging tag)

What remains for operator cleanup (NOT in this PR)

  • CF resources deployed during the session: 8 Workers + Container apps, 1 Pages project (instanode-web-staging), 1 Pages custom domain (staging.instanode.dev), 2 R2 buckets (instanode-tf-state, instant-shared-staging), 6 GH repo secrets (CLOUDFLARE_, CF_ACCOUNT_ID, TF_STATE_R2_)
  • 3 GHCR packages made public (instant-{api,worker,provisioner}) — can be reverted to private via per-package settings page
  • CF Workers Paid subscription is still active (operator can keep or cancel)

Test plan

  • CI: terraform.yml + terraform-apply-*.yml workflows are deleted, so they don't run
  • CI: existing validate.yml (k8s manifests) green
  • After merge: master has no CF-staging code

🤖 Generated with Claude Code

@mastermanas805 mastermanas805 merged commit fdabd81 into master May 30, 2026
3 checks passed
@mastermanas805 mastermanas805 deleted the revert/cf-staging-migration branch May 30, 2026 09:03
mastermanas805 added a commit that referenced this pull request Jun 5, 2026
…) (#54)

Companion to worker #35 (failover ESP provider). Rule 25 — every new
metric ships its alert + dashboard tile + catalog row.

Metric: instant_email_failover_total{outcome} emitted by the worker
FailoverProvider (worker/internal/email/failover_provider.go). Inert
when EMAIL_PROVIDER_FALLBACK is unset (lazy CounterVec, never emits in
single-provider mode).

- prometheus-rules: new instant-worker-email-failover group —
  EmailFailoverEngaged (P1, fallback_ok rate > 0 for 10m = primary ESP
  degraded, secondary carrying load) and EmailFailoverAllFailed (P0,
  all_failed rate > 0 for 5m = every ESP refused, email being lost).
- newrelic/alerts: email-failover-engaged.json (P1),
  email-failover-all-failed.json (P0). Mirror the Prom thresholds.
- dashboard: "Email failover outcomes (1h)" line tile faceted by outcome.
- METRICS-CATALOG: row for instant_email_failover_total (lazy, owner
  worker, alerts + tile cross-referenced).

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant