g1t/apps/status/wrangler.jsonc

61 lines2,709 bytesCodeBlame

Pick any line to see why it is the way it is: the commit, the pull request and issue it came from, and what the agent was thinking.

status.g1t.sh with incident management, invites that land you in the workspace, settings as pages, usage without quotas1{
2 "$schema": "../../node_modules/wrangler/config-schema.json",
3 "name": "g1t-status",
4 "account_id": "1e6f2cffa3f445920836e8ebe446bb58",
5 "compatibility_date": "2026-09-26",
6 "main": "./src/index.ts",
7 "workers_dev": false,
8 "preview_urls": false,
9 // The status page. A Worker of its own, bound to nothing it reports on
10 // but billing, so it stays up when the site does not. A custom domain,
11 // whose DNS record Cloudflare makes on the first deploy.
12 "routes": [{ "pattern": "status.g1t.sh", "custom_domain": true }],
13 // Every minute: check each part and keep the result.
14 "triggers": { "crons": ["* * * * *"] },
15 // The fonts, from packages/theme, served from the page's own origin.
16 "rules": [{ "type": "Data", "globs": ["**/*.woff2"], "fallthrough": false }],
17 // Each part's last check, 90 days of daily tallies, and incidents.
18 // Made by `npx wrangler d1 create g1t-status`; put its id here.
19 "d1_databases": [
20 {
21 "binding": "DB",
22 "database_name": "g1t-status",
23 "database_id": "dba85721-96dc-401d-9121-a6c587d614b2",
24 "migrations_dir": "migrations"
25 }
26 ],
27 // Billing has no public address: its price book is read through this.
28 // Nothing else is bound, so every other check goes over the internet.
29 "services": [{ "binding": "BILLING", "service": "g1t-billing" }],
30 // Email to subscribers (confirmations, incident and maintenance
31 // updates) and the staff alert for detected drafts, through Cloudflare
32 // Email Sending, as identity sends its own. Subscriptions also need the
33 // STATUS_SECRET secret, which signs unsubscribe links:
34 // npx wrangler secret put STATUS_SECRET
35 // Without either, the page offers the feeds only.
36 "send_email": [{ "name": "EMAIL", "remote": true }],
37 "vars": {
38 // Where each part is. An empty one leaves that part off the page,
39 // for an installation that does not run it.
40 "SITE_URL": "https://g1t.sh",
41 "API_URL": "https://api.g1t.sh",
42 "MCP_URL": "https://mcp.g1t.sh",
43 "DOCS_URL": "https://docs.g1t.sh",
44 "PAGES_URL": "https://g1t.page",
45 "MODELS_URL": "https://models.g1t.sh",
46 // A public repository that always exists, whose branches are listed
47 // as a clone would.
48 "PROBE_REPO": "flagon-io/g1t",
49 "SUPPORT_URL": "https://g1t.sh/support",
50 // This page's own address, for links in email and the feeds.
51 "STATUS_URL": "https://status.g1t.sh",
52 // sudo, for the link in the staff alert.
53 "SUDO_URL": "https://sudo.g1t.sh",
54 // Who hears when a part fails three checks in a row and a draft
55 // incident is made. Empty sends none.
56 "STATUS_ALERT_EMAIL": "hey@flagon.io",
57 "STATUS_FROM": "g1t status <noreply@g1t.sh>",
58 "OG_IMAGE": "https://og.g1t.sh/image?path=%2Fstatus&v=2"
59 },
60 "observability": { "enabled": true }
61}