aboutsummaryrefslogtreecommitdiff
path: root/wrangler.jsonc
blob: 7144cdcd5292ca3be569bd5b27569ae8f16a611a (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
{
	// One worker, one durable object, one container. The name is fixed at
	// "forge" in worker.js, so exactly one container serves the bucket.
	"name": "git-forge",
	"main": "worker.js",
	"compatibility_date": "2026-08-01",
	"observability": { "enabled": true },

	"containers": [
		{
			"class_name": "Forge",
			"image": "./Containerfile",
			// 1/4 vCPU, 1 GiB, 4 GB disk. Disk is the ceiling on the datadir,
			// and git gc needs room to repack on top of it.
			"instance_type": "basic",
			"max_instances": 1
		}
	],

	"durable_objects": {
		"bindings": [{ "name": "FORGE", "class_name": "Forge" }]
	},
	"migrations": [{ "tag": "v1", "new_sqlite_classes": ["Forge"] }],

	"r2_buckets": [{ "binding": "BUCKET", "bucket_name": "git-forge" }],

	// No vars: an environment value pins what the admin page could otherwise
	// change. GIT_FORGE_BASE_URL is the exception, for a custom domain fronting
	// a hostname requests do not arrive on.

	// Outbound mail: worker.js answers Mailgun's api shape and decides what
	// sends. Nothing is sent until forge.json names the intercepted host;
	// delete this line to rule mail out.
	"send_email": [{ "name": "SEND_EMAIL" }]
}