From f392ec4caa14df49faa38bc5113a5160bb5366dc Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Thu, 14 Aug 2025 10:08:50 +0200 Subject: [PATCH] chore: refactor GetBindsAndMounts to have a context.Context arg --- act/runner/action.go | 2 +- act/runner/run_context.go | 4 ++-- act/runner/run_context_test.go | 4 ++-- act/runner/step_docker.go | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/act/runner/action.go b/act/runner/action.go index 8ca5f510..98b880d1 100644 --- a/act/runner/action.go +++ b/act/runner/action.go @@ -428,7 +428,7 @@ func newStepContainer(ctx context.Context, step step, image string, cmd, entrypo envList = append(envList, fmt.Sprintf("%s=%s", "RUNNER_ARCH", container.RunnerArch(ctx))) envList = append(envList, fmt.Sprintf("%s=%s", "RUNNER_TEMP", "/tmp")) - binds, mounts, validVolumes := rc.GetBindsAndMounts() + binds, mounts, validVolumes := rc.GetBindsAndMounts(ctx) networkMode := fmt.Sprintf("container:%s", rc.jobContainerName()) if rc.IsHostEnv(ctx) { networkMode = "default" diff --git a/act/runner/run_context.go b/act/runner/run_context.go index 15efc312..a4c6a893 100644 --- a/act/runner/run_context.go +++ b/act/runner/run_context.go @@ -124,7 +124,7 @@ func getDockerDaemonSocketMountPath(daemonPath string) string { } // Returns the binds and mounts for the container, resolving paths as appopriate -func (rc *RunContext) GetBindsAndMounts() ([]string, map[string]string, []string) { +func (rc *RunContext) GetBindsAndMounts(ctx context.Context) ([]string, map[string]string, []string) { name := rc.jobContainerName() if rc.Config.ContainerDaemonSocket == "" { @@ -443,7 +443,7 @@ func (rc *RunContext) prepareJobContainer(ctx context.Context) error { envList = append(envList, fmt.Sprintf("%s=%s", "LANG", "C.UTF-8")) // Use same locale as GitHub Actions ext := container.LinuxContainerEnvironmentExtensions{} - binds, mounts, validVolumes := rc.GetBindsAndMounts() + binds, mounts, validVolumes := rc.GetBindsAndMounts(ctx) networkName, createAndDeleteNetwork := rc.getNetworkName(ctx) // add service containers diff --git a/act/runner/run_context_test.go b/act/runner/run_context_test.go index 09506d47..0f70e12d 100644 --- a/act/runner/run_context_test.go +++ b/act/runner/run_context_test.go @@ -219,7 +219,7 @@ func TestRunContext_GetBindsAndMounts(t *testing.T) { config := testcase.rc.Config config.Workdir = testcase.name config.BindWorkdir = bindWorkDir - gotbind, gotmount, _ := rctemplate.GetBindsAndMounts() + gotbind, gotmount, _ := rctemplate.GetBindsAndMounts(t.Context()) // Name binds/mounts are either/or if config.BindWorkdir { @@ -271,7 +271,7 @@ func TestRunContext_GetBindsAndMounts(t *testing.T) { rc.Run.JobID = "job1" rc.Run.Workflow.Jobs = map[string]*model.Job{"job1": job} - gotbind, gotmount, _ := rc.GetBindsAndMounts() + gotbind, gotmount, _ := rc.GetBindsAndMounts(t.Context()) if len(testcase.wantbind) > 0 { assert.Contains(t, gotbind, testcase.wantbind) diff --git a/act/runner/step_docker.go b/act/runner/step_docker.go index 055098a8..24cb467d 100644 --- a/act/runner/step_docker.go +++ b/act/runner/step_docker.go @@ -110,7 +110,7 @@ func (sd *stepDocker) newStepContainer(ctx context.Context, image string, cmd, e envList = append(envList, fmt.Sprintf("%s=%s", "RUNNER_ARCH", container.RunnerArch(ctx))) envList = append(envList, fmt.Sprintf("%s=%s", "RUNNER_TEMP", "/tmp")) - binds, mounts, validVolumes := rc.GetBindsAndMounts() + binds, mounts, validVolumes := rc.GetBindsAndMounts(ctx) stepContainer := ContainerNewContainer(&container.NewContainerInput{ Cmd: cmd, Entrypoint: entrypoint,