aboutsummaryrefslogtreecommitdiffstats
path: root/wrangler.jsonc
blob: 768f49b881f8856e05a9b93b7dd1bef5f7d18ea3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{
  // dgit: a cgit-style git host that runs entirely on Cloudflare.
  // Each repository lives in its own SQLite-backed Durable Object ("cell").
  // NOTE: the script name stays "git-cells" — Durable Object data is bound
  // to it, and renaming would orphan every hosted repository.
  "name": "git-cells",
  "main": "src/index.ts",
  "compatibility_date": "2026-08-01",
  "routes": [
    { "pattern": "git.littledivy.com", "custom_domain": true }
  ],
  "limits": {
    // pack indexing of a large push is CPU-bound; 5 minutes is the paid-plan max
    "cpu_ms": 300000
  },
  "durable_objects": {
    "bindings": [
      { "name": "REPO", "class_name": "RepoCell" },
      { "name": "REGISTRY", "class_name": "Registry" }
    ]
  },
  "migrations": [
    { "tag": "v1", "new_sqlite_classes": ["RepoCell", "Registry"] }
  ],
  // Optional: with PACK_CACHE bound, pushed pack bytes are stored in R2 (off the
  // DO's SQLite) and full clones are served straight from R2 by the Worker.
  // Remove this binding to fall back to the SQLite-only path (as on celld).
  "r2_buckets": [
    { "binding": "PACK_CACHE", "bucket_name": "dgit-pack-cache" }
  ],
  "vars": {
    "SITE_NAME": "git.littledivy.com",
    "SITE_DESC": "a fast webinterface for the git dscm, on Cloudflare",
    "SITE_OWNER": "divy"
  }
  // Push auth: run `wrangler secret put GIT_TOKEN` (use .dev.vars locally).
}