Browse code

testutil/daemon: print all arguments when failing to start daemon

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

Sebastiaan van Stijn authored on 2019/10/09 20:25:21
Showing 1 changed files
... ...
@@ -73,6 +73,7 @@ type Daemon struct {
73 73
 	dockerdBinary              string
74 74
 	log                        logT
75 75
 	pidFile                    string
76
+	args                       []string
76 77
 
77 78
 	// swarm related field
78 79
 	swarmListenAddr string
... ...
@@ -224,7 +225,7 @@ func (d *Daemon) Cleanup(t testing.TB) {
224 224
 func (d *Daemon) Start(t testing.TB, args ...string) {
225 225
 	t.Helper()
226 226
 	if err := d.StartWithError(args...); err != nil {
227
-		t.Fatalf("[%s] failed to start daemon with arguments %v : %v", d.id, args, err)
227
+		t.Fatalf("[%s] failed to start daemon with arguments %v : %v", d.id, d.args, err)
228 228
 	}
229 229
 }
230 230
 
... ...
@@ -251,7 +252,7 @@ func (d *Daemon) StartWithLogFile(out *os.File, providedArgs ...string) error {
251 251
 		d.pidFile = filepath.Join(d.Folder, "docker.pid")
252 252
 	}
253 253
 
254
-	args := append(d.GlobalFlags,
254
+	d.args = append(d.GlobalFlags,
255 255
 		"--containerd", containerdSocket,
256 256
 		"--data-root", d.Root,
257 257
 		"--exec-root", d.execRoot,
... ...
@@ -261,19 +262,19 @@ func (d *Daemon) StartWithLogFile(out *os.File, providedArgs ...string) error {
261 261
 		"--containerd-plugins-namespace", d.id+"p",
262 262
 	)
263 263
 	if d.defaultCgroupNamespaceMode != "" {
264
-		args = append(args, []string{"--default-cgroupns-mode", d.defaultCgroupNamespaceMode}...)
264
+		d.args = append(d.args, []string{"--default-cgroupns-mode", d.defaultCgroupNamespaceMode}...)
265 265
 	}
266 266
 	if d.experimental {
267
-		args = append(args, "--experimental")
267
+		d.args = append(d.args, "--experimental")
268 268
 	}
269 269
 	if d.init {
270
-		args = append(args, "--init")
270
+		d.args = append(d.args, "--init")
271 271
 	}
272 272
 	if !(d.UseDefaultHost || d.UseDefaultTLSHost) {
273
-		args = append(args, []string{"--host", d.Sock()}...)
273
+		d.args = append(d.args, []string{"--host", d.Sock()}...)
274 274
 	}
275 275
 	if root := os.Getenv("DOCKER_REMAP_ROOT"); root != "" {
276
-		args = append(args, []string{"--userns-remap", root}...)
276
+		d.args = append(d.args, []string{"--userns-remap", root}...)
277 277
 	}
278 278
 
279 279
 	// If we don't explicitly set the log-level or debug flag(-D) then
... ...
@@ -289,14 +290,14 @@ func (d *Daemon) StartWithLogFile(out *os.File, providedArgs ...string) error {
289 289
 		}
290 290
 	}
291 291
 	if !foundLog {
292
-		args = append(args, "--debug")
292
+		d.args = append(d.args, "--debug")
293 293
 	}
294 294
 	if d.storageDriver != "" && !foundSd {
295
-		args = append(args, "--storage-driver", d.storageDriver)
295
+		d.args = append(d.args, "--storage-driver", d.storageDriver)
296 296
 	}
297 297
 
298
-	args = append(args, providedArgs...)
299
-	d.cmd = exec.Command(dockerdBinary, args...)
298
+	d.args = append(d.args, providedArgs...)
299
+	d.cmd = exec.Command(dockerdBinary, d.args...)
300 300
 	d.cmd.Env = append(os.Environ(), "DOCKER_SERVICE_PREFER_OFFLINE_IMAGE=1")
301 301
 	d.cmd.Stdout = out
302 302
 	d.cmd.Stderr = out