Deployment
The README documents three interchangeable setup paths, gcloud CLI, GCP web console, and Terraform, all producing the same resources: a Cloud Run service (256 MiB, 1 CPU, min 0 / max 1 instances, unauthenticated invocations), a native-mode Firestore database, a Cloud Storage backup bucket, and a Cloud Scheduler job hitting /backup daily at 03:00 UTC with an OIDC token. Notable repo-specific details:
cloudbuild.yamlbuildsserver/Dockerfileand deploys a Cloud Run service namedskellypingsin regionnorthamerica-northeast1, settingSKELLYPINGS_SECRETandBACKUP_BUCKETfrom substitutions plus a hardcodedFIRESTORE_COLLECTION=telemetry_events. (The Terraform config and the README's CLI walkthrough instead name the servicetelemetry.)infra/main.tfprovisions the Firestore database, a backup bucket with a lifecycle rule deleting objects after 365 days, the Cloud Run service definition with a placeholder image (the real container is deployed afterward via Cloud Build's GitHub integration orgcloud run deploy), the scheduler service account, and the daily job. The scheduler'sX-Telemetry-Signatureheader cannot be computed at plan time. It must be set manually after deploy, as spelled out in the README's Option C steps and thescheduler_signature_commandoutput.- Billing guidance in the README: the design targets $0/month within GCP free tiers; capping Cloud Run at one instance bounds compute cost, but Google bills rather than hard-stops past free limits, so budget alerts are recommended.