diff --git a/charts/auto-scaling-runner-set/templates/_helpers.tpl b/charts/auto-scaling-runner-set/templates/_helpers.tpl index 2ec151f6..3b51df2a 100644 --- a/charts/auto-scaling-runner-set/templates/_helpers.tpl +++ b/charts/auto-scaling-runner-set/templates/_helpers.tpl @@ -189,6 +189,7 @@ volumeMounts: {{- $setDockerHost := 1 }} {{- $setDockerTlsVerify := 1 }} {{- $setDockerCertPath := 1 }} + {{- $setRunnerWaitDocker := 1 }} env: {{- with $container.env }} {{- range $i, $env := . }} @@ -201,6 +202,9 @@ env: {{- if eq $env.name "DOCKER_CERT_PATH" }} {{- $setDockerCertPath = 0 -}} {{- end }} + {{- if eq $env.name "RUNNER_WAIT_FOR_DOCKER_IN_SECONDS" }} + {{- $setRunnerWaitDocker = 0 -}} + {{- end }} - name: {{ $env.name }} {{- range $envKey, $envVal := $env }} {{- if ne $envKey "name" }} @@ -221,6 +225,10 @@ env: - name: DOCKER_CERT_PATH value: /certs/client {{- end }} + {{- if $setRunnerWaitDocker }} + - name: RUNNER_WAIT_FOR_DOCKER_IN_SECONDS + value: "120" + {{- end }} {{- $mountWork := 1 }} {{- $mountDindCert := 1 }} volumeMounts: diff --git a/charts/auto-scaling-runner-set/tests/template_test.go b/charts/auto-scaling-runner-set/tests/template_test.go index f1f28588..89439b0f 100644 --- a/charts/auto-scaling-runner-set/tests/template_test.go +++ b/charts/auto-scaling-runner-set/tests/template_test.go @@ -594,13 +594,15 @@ func TestTemplateRenderedAutoScalingRunnerSet_EnableDinD(t *testing.T) { assert.Len(t, ars.Spec.Template.Spec.Containers, 2, "Template.Spec should have 2 container") assert.Equal(t, "runner", ars.Spec.Template.Spec.Containers[0].Name) assert.Equal(t, "ghcr.io/actions/actions-runner:latest", ars.Spec.Template.Spec.Containers[0].Image) - assert.Len(t, ars.Spec.Template.Spec.Containers[0].Env, 3, "The runner container should have 3 env vars, DOCKER_HOST, DOCKER_TLS_VERIFY and DOCKER_CERT_PATH") + assert.Len(t, ars.Spec.Template.Spec.Containers[0].Env, 4, "The runner container should have 4 env vars, DOCKER_HOST, DOCKER_TLS_VERIFY, DOCKER_CERT_PATH and RUNNER_WAIT_FOR_DOCKER_IN_SECONDS") assert.Equal(t, "DOCKER_HOST", ars.Spec.Template.Spec.Containers[0].Env[0].Name) assert.Equal(t, "tcp://localhost:2376", ars.Spec.Template.Spec.Containers[0].Env[0].Value) assert.Equal(t, "DOCKER_TLS_VERIFY", ars.Spec.Template.Spec.Containers[0].Env[1].Name) assert.Equal(t, "1", ars.Spec.Template.Spec.Containers[0].Env[1].Value) assert.Equal(t, "DOCKER_CERT_PATH", ars.Spec.Template.Spec.Containers[0].Env[2].Name) assert.Equal(t, "/certs/client", ars.Spec.Template.Spec.Containers[0].Env[2].Value) + assert.Equal(t, "RUNNER_WAIT_FOR_DOCKER_IN_SECONDS", ars.Spec.Template.Spec.Containers[0].Env[3].Name) + assert.Equal(t, "120", ars.Spec.Template.Spec.Containers[0].Env[3].Value) assert.Len(t, ars.Spec.Template.Spec.Containers[0].VolumeMounts, 2, "The runner container should have 2 volume mounts, dind-cert and work") assert.Equal(t, "work", ars.Spec.Template.Spec.Containers[0].VolumeMounts[0].Name)