fix: automatically add the workspace mount to allowed volumes (#1203)

Automatically allow workspace mounts in `valid_volumes` for the mounts done via `bind_workdir`, this obsoletes the need for `/workspace/**` or other insecure configurations which would expose workspaces between tasks.

Reviewed-on: https://gitea.com/gitea/runner/pulls/1203
Reviewed-by: bircni <[email protected]>
Co-authored-by: silverwind <[email protected]>
This commit is contained in:
silverwind authored and silverwind committed 2026-09-02 20:32:41 +00:00
1 parent b9018aca31
commit fca6b44c60
3 files changed
+9 -1

No files matched your search

+5
View File
@@ -604,6 +604,11 @@ func TestRunContextValidVolumes(t *testing.T) {
// a job may mount it only while the runner does
rc.Config.SharedToolCache = false
assert.NotContains(t, rc.validVolumes(), sharedToolCacheVolume)
rc.Config.Workdir = "/workspace/1/owner/repo"
assert.NotContains(t, rc.validVolumes(), rc.Config.Workdir)
rc.Config.BindWorkdir = true
assert.Contains(t, rc.validVolumes(), rc.Config.Workdir)
}
func TestCleanupJobResourcesCleansServicesWithoutJobContainer(t *testing.T) {