Skip to content

Where people and agents ship software together. The open-source git platform for the whole job: issues, agents, checks and deploys to the edge.

Room for public repositories' ubuntu-latest jobs: 30 sandboxes on the 4-core machine, a pool of 60 #171

Mergedsyntaqx merged runner-capacity into main
4 files+17−110/4 viewed
+1−1
5454
5555 | | |
5656 | --------------------------- | ------------------------------------------------------------------------------------------------- |
57−| Hosted jobs running at once | 4 per workspace always, up to 12 while the pool of 40 sandboxes keeps 8 free for other workspaces |
57+| Hosted jobs running at once | 4 per workspace always, up to 12 while the pool of 60 sandboxes keeps 8 free for other workspaces |
5858 | A hosted job's timeout | 60 minutes at most |
5959 | A self-hosted job's timeout | 24 hours at most |
6060 | Logs | 4 MiB a job, kept 90 days |
+2−2
342342 16 GB), and so is `runs-on: g1t-2core`, in a class of its own; jobs that
343343 ask for `runs-on: g1t-4core`, and `ubuntu-latest` jobs in a public
344344 repository, get `standard-4` (4 vCPU, 12 GiB, 20 GB). At
345−the `max_instances` in `services/runner/wrangler.jsonc` (20, 10 and 10),
346−40 sandboxes at once hold 100 vCPU, 360 GiB of memory and 680 GB of disk,
345+the `max_instances` in `services/runner/wrangler.jsonc` (20, 10 and 30),
346+60 sandboxes at once hold 180 vCPU, 600 GiB of memory and 1,080 GB of disk,
347347 which your account's Containers limits for live instances must allow.
348348
349349 Set the runner Worker's `DOCKER` variable to `off` to give workflow jobs no
+3−2
6565 /// The most one workspace may run at once while the pool has room to spare.
6666 pub const BURST_PER_WORKSPACE: u32 = 12;
6767 /// Sandboxes g1t's own machines have between them (services/runner's
68−/// wrangler.jsonc: 20 standard, 10 g1t-2core, 10 g1t-4core).
69−pub const HOSTED_POOL: u32 = 40;
68+/// wrangler.jsonc: 20 standard, 10 g1t-2core, 30 g1t-4core, which every
69+/// public repository's ubuntu-latest jobs run on).
70+pub const HOSTED_POOL: u32 = 60;
7071 /// Kept free while workspaces run past their share, so another workspace's
7172 /// first jobs still start at once.
7273 pub const POOL_HEADROOM: u32 = 8;
+11−6
99 // types: standard-3 (2 vCPU, 8 GiB, 16 GB of disk) for the standard
1010 // machine and g1t-2core, which is kept as a name of it so workflows that
1111 // ask for it keep working, and standard-4 (4 vCPU, 12 GiB, 20 GB) for
12− // g1t-4core. At these max_instances, 40 sandboxes at once hold 100 vCPU,
13− // 360 GiB and 680 GB, well inside the account's limits for live
14− // instances (1,500 vCPU, 6 TiB of memory). crates/contracts
12+ // g1t-4core, which is also what ubuntu-latest gets in a public
13+ // repository. At these max_instances, 60 sandboxes at once hold 180 vCPU,
14+ // 600 GiB and 1,080 GB, well inside the account's limits for live
15+ // instances (1,500 vCPU, 6 TiB of memory, 30 TB of disk). crates/contracts
1516 // (INSTANCE_TYPES) and services/billing (keeper.rs) say the same sizes.
1617 // scripts/deploy.mjs deploys with each image set to the reference it
1718 // built and pushed ("The runner's images" in
2223 "class_name": "AttemptSandbox",
2324 "image": "./Dockerfile",
2425 // Workflow jobs with `runs-on: ubuntu-latest` (and every other
25− // hosted label), and all other work: 2 vCPU, 8 GiB, 16 GB.
26+ // hosted label) in a private repository, checks, the merge queue and
27+ // all other work: 2 vCPU, 8 GiB, 16 GB.
2628 "instance_type": "standard-3",
2729 "max_instances": 20,
2830 // A deploy that changes the image or these settings replaces every
4143 "rollout_active_grace_period": 7200
4244 },
4345 {
44− // Workflow jobs with `runs-on: g1t-4core`: 4 vCPU, 12 GiB, 20 GB.
46+ // Workflow jobs with `runs-on: g1t-4core`, and `ubuntu-latest` (and
47+ // every other hosted label) in a public repository: 4 vCPU, 12 GiB,
48+ // 20 GB. Every public repository's workflow jobs run here, so it has
49+ // the most room.
4550 "class_name": "Sandbox4Core",
4651 "image": "./Dockerfile",
4752 "instance_type": "standard-4",
48− "max_instances": 10,
53+ "max_instances": 30,
4954 "rollout_active_grace_period": 7200
5055 }
5156 ],