Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/vole.git

Write over SSH with a registered key:

git clone ssh://git@rodent.software:2222/vole.git

A free and open-source forge that lives in your Git repo.

#263

Turn off the disk reserve for test-spawned runners

merged · by keenan 1h ago · merged into main at c284cb2c by keenan 1h ago

keenan opened this 1h ago

What

Every runner a server integration test spawns now gets --disk-reserve 0, built in one place (fixture.runnerCmd), with a comment saying why. Production behavior is unchanged: the runner’s default stays 2G.

Why

t.TempDir() is under /tmp. In a CI job that is the runtime’s tmpfs, sized by --container-tmpfs (1G), so a nested runner can never meet the 2G --disk-reserve default and stops its job at the first one-second check. TestKilledRunnerIsRequeued (sleep 3) and TestRunLogStreamsWhileTheJobRuns were the two whose steps outlive that tick, which is why main’s test step failed on a README-only commit.

The reserve bounds a host filesystem; a test’s throwaway directory is already bounded by the tmpfs. ci/agent/disk_test.go keeps testing the check itself.

Checks

  • Reproduced before the change in the file:verify image with --tmpfs /tmp:size=1g: both tests failed with “below its 2.0 GiB reserve”.
  • Both tests pass with the change in the same 1 GiB /tmp.
  • go test -race -count=1 ./server passes in the same container.
  • ./vole workflow run verify passes locally.

Discussion (0)

No discussion yet.