Ask runner to wait for docker daemon from DinD. (#2292)
This commit is contained in:
		
							parent
							
								
									f677fd5872
								
							
						
					
					
						commit
						256e08eb45
					
				|  | @ -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: | ||||
|  |  | |||
|  | @ -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) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue