mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Explicitly add --detach to service CLI calls
The behavior of service (create/update/scale) was changed in a recent PR to docker/cli. This commit serves to remedy test failures experienced when attempting to use service calls. Should not affect current behavior. Signed-off-by: Eli Uriegas <eli.uriegas@docker.com>
This commit is contained in:
parent
853df8f32b
commit
e5b3ebbc64
8 changed files with 85 additions and 85 deletions
|
@ -186,7 +186,7 @@ func (s *DockerSwarmSuite) TestAPISwarmServicesUpdate(c *check.C) {
|
||||||
|
|
||||||
// Roll back to the previous version. This uses the CLI because
|
// Roll back to the previous version. This uses the CLI because
|
||||||
// rollback used to be a client-side operation.
|
// rollback used to be a client-side operation.
|
||||||
out, err := daemons[0].Cmd("service", "update", "--rollback", id)
|
out, err := daemons[0].Cmd("service", "update", "--detach", "--rollback", id)
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// first batch
|
// first batch
|
||||||
|
@ -295,7 +295,7 @@ func (s *DockerSwarmSuite) TestAPISwarmServicesUpdateStartFirst(c *check.C) {
|
||||||
|
|
||||||
// Roll back to the previous version. This uses the CLI because
|
// Roll back to the previous version. This uses the CLI because
|
||||||
// rollback is a client-side operation.
|
// rollback is a client-side operation.
|
||||||
out, err := d.Cmd("service", "update", "--rollback", id)
|
out, err := d.Cmd("service", "update", "--detach", "--rollback", id)
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// first batch
|
// first batch
|
||||||
|
@ -340,7 +340,7 @@ func (s *DockerSwarmSuite) TestAPISwarmServicesFailedUpdate(c *check.C) {
|
||||||
|
|
||||||
// Roll back to the previous version. This uses the CLI because
|
// Roll back to the previous version. This uses the CLI because
|
||||||
// rollback used to be a client-side operation.
|
// rollback used to be a client-side operation.
|
||||||
out, err := daemons[0].Cmd("service", "update", "--rollback", id)
|
out, err := daemons[0].Cmd("service", "update", "--detach", "--rollback", id)
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
waitAndAssert(c, defaultReconciliationTimeout, daemons[0].CheckRunningTaskImages, checker.DeepEquals,
|
waitAndAssert(c, defaultReconciliationTimeout, daemons[0].CheckRunningTaskImages, checker.DeepEquals,
|
||||||
|
|
|
@ -54,7 +54,7 @@ func (s *DockerSwarmSuite) TestPruneNetwork(c *check.C) {
|
||||||
|
|
||||||
serviceName := "testprunesvc"
|
serviceName := "testprunesvc"
|
||||||
replicas := 1
|
replicas := 1
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image",
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image",
|
||||||
"--name", serviceName,
|
"--name", serviceName,
|
||||||
"--replicas", strconv.Itoa(replicas),
|
"--replicas", strconv.Itoa(replicas),
|
||||||
"--network", "n3",
|
"--network", "n3",
|
||||||
|
|
|
@ -76,7 +76,7 @@ func (s *DockerSwarmSuite) TestServiceCreateWithSecretSimple(c *check.C) {
|
||||||
})
|
})
|
||||||
c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("secrets: %s", id))
|
c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("secrets: %s", id))
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", serviceName, "--secret", testName, "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "--secret", testName, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}", serviceName)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}", serviceName)
|
||||||
|
@ -122,7 +122,7 @@ func (s *DockerSwarmSuite) TestServiceCreateWithSecretSourceTargetPaths(c *check
|
||||||
}
|
}
|
||||||
|
|
||||||
serviceName := "svc"
|
serviceName := "svc"
|
||||||
serviceCmd := []string{"service", "create", "--no-resolve-image", "--name", serviceName}
|
serviceCmd := []string{"service", "create", "--detach", "--no-resolve-image", "--name", serviceName}
|
||||||
serviceCmd = append(serviceCmd, secretFlags...)
|
serviceCmd = append(serviceCmd, secretFlags...)
|
||||||
serviceCmd = append(serviceCmd, "busybox", "top")
|
serviceCmd = append(serviceCmd, "busybox", "top")
|
||||||
out, err := d.Cmd(serviceCmd...)
|
out, err := d.Cmd(serviceCmd...)
|
||||||
|
@ -175,7 +175,7 @@ func (s *DockerSwarmSuite) TestServiceCreateWithSecretReferencedTwice(c *check.C
|
||||||
c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("secrets: %s", id))
|
c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("secrets: %s", id))
|
||||||
|
|
||||||
serviceName := "svc"
|
serviceName := "svc"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", serviceName, "--secret", "source=mysecret,target=target1", "--secret", "source=mysecret,target=target2", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "--secret", "source=mysecret,target=target1", "--secret", "source=mysecret,target=target2", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}", serviceName)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}", serviceName)
|
||||||
|
@ -224,7 +224,7 @@ func (s *DockerSwarmSuite) TestServiceCreateWithConfigSimple(c *check.C) {
|
||||||
})
|
})
|
||||||
c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("configs: %s", id))
|
c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("configs: %s", id))
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", serviceName, "--config", testName, "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "--config", testName, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Configs }}", serviceName)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Configs }}", serviceName)
|
||||||
|
@ -269,7 +269,7 @@ func (s *DockerSwarmSuite) TestServiceCreateWithConfigSourceTargetPaths(c *check
|
||||||
}
|
}
|
||||||
|
|
||||||
serviceName := "svc"
|
serviceName := "svc"
|
||||||
serviceCmd := []string{"service", "create", "--no-resolve-image", "--name", serviceName}
|
serviceCmd := []string{"service", "create", "--detach", "--no-resolve-image", "--name", serviceName}
|
||||||
serviceCmd = append(serviceCmd, configFlags...)
|
serviceCmd = append(serviceCmd, configFlags...)
|
||||||
serviceCmd = append(serviceCmd, "busybox", "top")
|
serviceCmd = append(serviceCmd, "busybox", "top")
|
||||||
out, err := d.Cmd(serviceCmd...)
|
out, err := d.Cmd(serviceCmd...)
|
||||||
|
@ -322,7 +322,7 @@ func (s *DockerSwarmSuite) TestServiceCreateWithConfigReferencedTwice(c *check.C
|
||||||
c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("configs: %s", id))
|
c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("configs: %s", id))
|
||||||
|
|
||||||
serviceName := "svc"
|
serviceName := "svc"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", serviceName, "--config", "source=myconfig,target=target1", "--config", "source=myconfig,target=target2", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "--config", "source=myconfig,target=target1", "--config", "source=myconfig,target=target2", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Configs }}", serviceName)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Configs }}", serviceName)
|
||||||
|
|
|
@ -31,7 +31,7 @@ func (s *DockerSwarmSuite) TestServiceLogs(c *check.C) {
|
||||||
}
|
}
|
||||||
|
|
||||||
for name, message := range services {
|
for name, message := range services {
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox",
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox",
|
||||||
"sh", "-c", fmt.Sprintf("echo %s; tail -f /dev/null", message))
|
"sh", "-c", fmt.Sprintf("echo %s; tail -f /dev/null", message))
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
@ -74,7 +74,7 @@ func (s *DockerSwarmSuite) TestServiceLogsCompleteness(c *check.C) {
|
||||||
name := "TestServiceLogsCompleteness"
|
name := "TestServiceLogsCompleteness"
|
||||||
|
|
||||||
// make a service that prints 6 lines
|
// make a service that prints 6 lines
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", "for line in $(seq 0 5); do echo log test $line; done; sleep 100000")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", "for line in $(seq 0 5); do echo log test $line; done; sleep 100000")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -101,7 +101,7 @@ func (s *DockerSwarmSuite) TestServiceLogsTail(c *check.C) {
|
||||||
name := "TestServiceLogsTail"
|
name := "TestServiceLogsTail"
|
||||||
|
|
||||||
// make a service that prints 6 lines
|
// make a service that prints 6 lines
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", "for line in $(seq 1 6); do echo log test $line; done; sleep 100000")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", "for line in $(seq 1 6); do echo log test $line; done; sleep 100000")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -125,7 +125,7 @@ func (s *DockerSwarmSuite) TestServiceLogsSince(c *check.C) {
|
||||||
|
|
||||||
name := "TestServiceLogsSince"
|
name := "TestServiceLogsSince"
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", "for i in $(seq 1 3); do sleep .1; echo log$i; done; sleep 10000000")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", "for i in $(seq 1 3); do sleep .1; echo log$i; done; sleep 10000000")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
waitAndAssert(c, defaultReconciliationTimeout, d.CheckActiveContainerCount, checker.Equals, 1)
|
waitAndAssert(c, defaultReconciliationTimeout, d.CheckActiveContainerCount, checker.Equals, 1)
|
||||||
|
@ -159,7 +159,7 @@ func (s *DockerSwarmSuite) TestServiceLogsFollow(c *check.C) {
|
||||||
|
|
||||||
name := "TestServiceLogsFollow"
|
name := "TestServiceLogsFollow"
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", "while true; do echo log test; sleep 0.1; done")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", "while true; do echo log test; sleep 0.1; done")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -207,7 +207,7 @@ func (s *DockerSwarmSuite) TestServiceLogsTaskLogs(c *check.C) {
|
||||||
|
|
||||||
result := icmd.RunCmd(d.Command(
|
result := icmd.RunCmd(d.Command(
|
||||||
// create a service with the name
|
// create a service with the name
|
||||||
"service", "create", "--no-resolve-image", "--name", name,
|
"service", "create", "--detach", "--no-resolve-image", "--name", name,
|
||||||
// which has some number of replicas
|
// which has some number of replicas
|
||||||
fmt.Sprintf("--replicas=%v", replicas),
|
fmt.Sprintf("--replicas=%v", replicas),
|
||||||
// which has this the task id as an environment variable templated in
|
// which has this the task id as an environment variable templated in
|
||||||
|
@ -259,7 +259,7 @@ func (s *DockerSwarmSuite) TestServiceLogsTTY(c *check.C) {
|
||||||
|
|
||||||
result := icmd.RunCmd(d.Command(
|
result := icmd.RunCmd(d.Command(
|
||||||
// create a service
|
// create a service
|
||||||
"service", "create", "--no-resolve-image",
|
"service", "create", "--detach", "--no-resolve-image",
|
||||||
// name it $name
|
// name it $name
|
||||||
"--name", name,
|
"--name", name,
|
||||||
// use a TTY
|
// use a TTY
|
||||||
|
@ -297,7 +297,7 @@ func (s *DockerSwarmSuite) TestServiceLogsNoHangDeletedContainer(c *check.C) {
|
||||||
|
|
||||||
result := icmd.RunCmd(d.Command(
|
result := icmd.RunCmd(d.Command(
|
||||||
// create a service
|
// create a service
|
||||||
"service", "create", "--no-resolve-image",
|
"service", "create", "--detach", "--no-resolve-image",
|
||||||
// name it $name
|
// name it $name
|
||||||
"--name", name,
|
"--name", name,
|
||||||
// busybox image, shell string
|
// busybox image, shell string
|
||||||
|
@ -346,7 +346,7 @@ func (s *DockerSwarmSuite) TestServiceLogsDetails(c *check.C) {
|
||||||
|
|
||||||
result := icmd.RunCmd(d.Command(
|
result := icmd.RunCmd(d.Command(
|
||||||
// create a service
|
// create a service
|
||||||
"service", "create", "--no-resolve-image",
|
"service", "create", "--detach", "--no-resolve-image",
|
||||||
// name it $name
|
// name it $name
|
||||||
"--name", name,
|
"--name", name,
|
||||||
// add an environment variable
|
// add an environment variable
|
||||||
|
|
|
@ -14,11 +14,11 @@ func (s *DockerSwarmSuite) TestServiceScale(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
service1Name := "TestService1"
|
service1Name := "TestService1"
|
||||||
service1Args := append([]string{"service", "create", "--no-resolve-image", "--name", service1Name, defaultSleepImage}, sleepCommandForDaemonPlatform()...)
|
service1Args := append([]string{"service", "create", "--detach", "--no-resolve-image", "--name", service1Name, defaultSleepImage}, sleepCommandForDaemonPlatform()...)
|
||||||
|
|
||||||
// global mode
|
// global mode
|
||||||
service2Name := "TestService2"
|
service2Name := "TestService2"
|
||||||
service2Args := append([]string{"service", "create", "--no-resolve-image", "--name", service2Name, "--mode=global", defaultSleepImage}, sleepCommandForDaemonPlatform()...)
|
service2Args := append([]string{"service", "create", "--detach", "--no-resolve-image", "--name", service2Name, "--mode=global", defaultSleepImage}, sleepCommandForDaemonPlatform()...)
|
||||||
|
|
||||||
// Create services
|
// Create services
|
||||||
out, err := d.Cmd(service1Args...)
|
out, err := d.Cmd(service1Args...)
|
||||||
|
@ -27,10 +27,10 @@ func (s *DockerSwarmSuite) TestServiceScale(c *check.C) {
|
||||||
out, err = d.Cmd(service2Args...)
|
out, err = d.Cmd(service2Args...)
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
out, err = d.Cmd("service", "scale", "TestService1=2")
|
out, err = d.Cmd("service", "scale", "--detach", "TestService1=2")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
out, err = d.Cmd("service", "scale", "TestService1=foobar")
|
out, err = d.Cmd("service", "scale", "--detach", "TestService1=foobar")
|
||||||
c.Assert(err, checker.NotNil)
|
c.Assert(err, checker.NotNil)
|
||||||
|
|
||||||
str := fmt.Sprintf("%s: invalid replicas value %s", service1Name, "foobar")
|
str := fmt.Sprintf("%s: invalid replicas value %s", service1Name, "foobar")
|
||||||
|
@ -38,7 +38,7 @@ func (s *DockerSwarmSuite) TestServiceScale(c *check.C) {
|
||||||
c.Errorf("got: %s, expected has sub string: %s", out, str)
|
c.Errorf("got: %s, expected has sub string: %s", out, str)
|
||||||
}
|
}
|
||||||
|
|
||||||
out, err = d.Cmd("service", "scale", "TestService1=-1")
|
out, err = d.Cmd("service", "scale", "--detach", "TestService1=-1")
|
||||||
c.Assert(err, checker.NotNil)
|
c.Assert(err, checker.NotNil)
|
||||||
|
|
||||||
str = fmt.Sprintf("%s: invalid replicas value %s", service1Name, "-1")
|
str = fmt.Sprintf("%s: invalid replicas value %s", service1Name, "-1")
|
||||||
|
@ -47,7 +47,7 @@ func (s *DockerSwarmSuite) TestServiceScale(c *check.C) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// TestService2 is a global mode
|
// TestService2 is a global mode
|
||||||
out, err = d.Cmd("service", "scale", "TestService2=2")
|
out, err = d.Cmd("service", "scale", "--detach", "TestService2=2")
|
||||||
c.Assert(err, checker.NotNil)
|
c.Assert(err, checker.NotNil)
|
||||||
|
|
||||||
str = fmt.Sprintf("%s: scale can only be used with replicated mode\n", service2Name)
|
str = fmt.Sprintf("%s: scale can only be used with replicated mode\n", service2Name)
|
||||||
|
|
|
@ -15,7 +15,7 @@ func (s *DockerSwarmSuite) TestServiceUpdatePort(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
serviceName := "TestServiceUpdatePort"
|
serviceName := "TestServiceUpdatePort"
|
||||||
serviceArgs := append([]string{"service", "create", "--no-resolve-image", "--name", serviceName, "-p", "8080:8081", defaultSleepImage}, sleepCommandForDaemonPlatform()...)
|
serviceArgs := append([]string{"service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "-p", "8080:8081", defaultSleepImage}, sleepCommandForDaemonPlatform()...)
|
||||||
|
|
||||||
// Create a service with a port mapping of 8080:8081.
|
// Create a service with a port mapping of 8080:8081.
|
||||||
out, err := d.Cmd(serviceArgs...)
|
out, err := d.Cmd(serviceArgs...)
|
||||||
|
@ -23,7 +23,7 @@ func (s *DockerSwarmSuite) TestServiceUpdatePort(c *check.C) {
|
||||||
waitAndAssert(c, defaultReconciliationTimeout, d.CheckActiveContainerCount, checker.Equals, 1)
|
waitAndAssert(c, defaultReconciliationTimeout, d.CheckActiveContainerCount, checker.Equals, 1)
|
||||||
|
|
||||||
// Update the service: changed the port mapping from 8080:8081 to 8082:8083.
|
// Update the service: changed the port mapping from 8080:8081 to 8082:8083.
|
||||||
_, err = d.Cmd("service", "update", "--publish-add", "8082:8083", "--publish-rm", "8081", serviceName)
|
_, err = d.Cmd("service", "update", "--detach", "--publish-add", "8082:8083", "--publish-rm", "8081", serviceName)
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
// Inspect the service and verify port mapping
|
// Inspect the service and verify port mapping
|
||||||
|
@ -48,39 +48,39 @@ func (s *DockerSwarmSuite) TestServiceUpdatePort(c *check.C) {
|
||||||
|
|
||||||
func (s *DockerSwarmSuite) TestServiceUpdateLabel(c *check.C) {
|
func (s *DockerSwarmSuite) TestServiceUpdateLabel(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name=test", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name=test", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
service := d.GetService(c, "test")
|
service := d.GetService(c, "test")
|
||||||
c.Assert(service.Spec.Labels, checker.HasLen, 0)
|
c.Assert(service.Spec.Labels, checker.HasLen, 0)
|
||||||
|
|
||||||
// add label to empty set
|
// add label to empty set
|
||||||
out, err = d.Cmd("service", "update", "test", "--label-add", "foo=bar")
|
out, err = d.Cmd("service", "update", "--detach", "test", "--label-add", "foo=bar")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
service = d.GetService(c, "test")
|
service = d.GetService(c, "test")
|
||||||
c.Assert(service.Spec.Labels, checker.HasLen, 1)
|
c.Assert(service.Spec.Labels, checker.HasLen, 1)
|
||||||
c.Assert(service.Spec.Labels["foo"], checker.Equals, "bar")
|
c.Assert(service.Spec.Labels["foo"], checker.Equals, "bar")
|
||||||
|
|
||||||
// add label to non-empty set
|
// add label to non-empty set
|
||||||
out, err = d.Cmd("service", "update", "test", "--label-add", "foo2=bar")
|
out, err = d.Cmd("service", "update", "--detach", "test", "--label-add", "foo2=bar")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
service = d.GetService(c, "test")
|
service = d.GetService(c, "test")
|
||||||
c.Assert(service.Spec.Labels, checker.HasLen, 2)
|
c.Assert(service.Spec.Labels, checker.HasLen, 2)
|
||||||
c.Assert(service.Spec.Labels["foo2"], checker.Equals, "bar")
|
c.Assert(service.Spec.Labels["foo2"], checker.Equals, "bar")
|
||||||
|
|
||||||
out, err = d.Cmd("service", "update", "test", "--label-rm", "foo2")
|
out, err = d.Cmd("service", "update", "--detach", "test", "--label-rm", "foo2")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
service = d.GetService(c, "test")
|
service = d.GetService(c, "test")
|
||||||
c.Assert(service.Spec.Labels, checker.HasLen, 1)
|
c.Assert(service.Spec.Labels, checker.HasLen, 1)
|
||||||
c.Assert(service.Spec.Labels["foo2"], checker.Equals, "")
|
c.Assert(service.Spec.Labels["foo2"], checker.Equals, "")
|
||||||
|
|
||||||
out, err = d.Cmd("service", "update", "test", "--label-rm", "foo")
|
out, err = d.Cmd("service", "update", "--detach", "test", "--label-rm", "foo")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
service = d.GetService(c, "test")
|
service = d.GetService(c, "test")
|
||||||
c.Assert(service.Spec.Labels, checker.HasLen, 0)
|
c.Assert(service.Spec.Labels, checker.HasLen, 0)
|
||||||
c.Assert(service.Spec.Labels["foo"], checker.Equals, "")
|
c.Assert(service.Spec.Labels["foo"], checker.Equals, "")
|
||||||
|
|
||||||
// now make sure we can add again
|
// now make sure we can add again
|
||||||
out, err = d.Cmd("service", "update", "test", "--label-add", "foo=bar")
|
out, err = d.Cmd("service", "update", "--detach", "test", "--label-add", "foo=bar")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
service = d.GetService(c, "test")
|
service = d.GetService(c, "test")
|
||||||
c.Assert(service.Spec.Labels, checker.HasLen, 1)
|
c.Assert(service.Spec.Labels, checker.HasLen, 1)
|
||||||
|
@ -100,11 +100,11 @@ func (s *DockerSwarmSuite) TestServiceUpdateSecrets(c *check.C) {
|
||||||
testTarget := "testing"
|
testTarget := "testing"
|
||||||
serviceName := "test"
|
serviceName := "test"
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", serviceName, "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// add secret
|
// add secret
|
||||||
out, err = d.CmdRetryOutOfSequence("service", "update", "test", "--secret-add", fmt.Sprintf("source=%s,target=%s", testName, testTarget))
|
out, err = d.CmdRetryOutOfSequence("service", "update", "--detach", "test", "--secret-add", fmt.Sprintf("source=%s,target=%s", testName, testTarget))
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}", serviceName)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}", serviceName)
|
||||||
|
@ -119,7 +119,7 @@ func (s *DockerSwarmSuite) TestServiceUpdateSecrets(c *check.C) {
|
||||||
c.Assert(refs[0].File.Name, checker.Equals, testTarget)
|
c.Assert(refs[0].File.Name, checker.Equals, testTarget)
|
||||||
|
|
||||||
// remove
|
// remove
|
||||||
out, err = d.CmdRetryOutOfSequence("service", "update", "test", "--secret-rm", testName)
|
out, err = d.CmdRetryOutOfSequence("service", "update", "--detach", "test", "--secret-rm", testName)
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}", serviceName)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}", serviceName)
|
||||||
|
@ -142,11 +142,11 @@ func (s *DockerSwarmSuite) TestServiceUpdateConfigs(c *check.C) {
|
||||||
testTarget := "/testing"
|
testTarget := "/testing"
|
||||||
serviceName := "test"
|
serviceName := "test"
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", serviceName, "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// add config
|
// add config
|
||||||
out, err = d.CmdRetryOutOfSequence("service", "update", "test", "--config-add", fmt.Sprintf("source=%s,target=%s", testName, testTarget))
|
out, err = d.CmdRetryOutOfSequence("service", "update", "--detach", "test", "--config-add", fmt.Sprintf("source=%s,target=%s", testName, testTarget))
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Configs }}", serviceName)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Configs }}", serviceName)
|
||||||
|
@ -161,7 +161,7 @@ func (s *DockerSwarmSuite) TestServiceUpdateConfigs(c *check.C) {
|
||||||
c.Assert(refs[0].File.Name, checker.Equals, testTarget)
|
c.Assert(refs[0].File.Name, checker.Equals, testTarget)
|
||||||
|
|
||||||
// remove
|
// remove
|
||||||
out, err = d.CmdRetryOutOfSequence("service", "update", "test", "--config-rm", testName)
|
out, err = d.CmdRetryOutOfSequence("service", "update", "--detach", "test", "--config-rm", testName)
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Configs }}", serviceName)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ json .Spec.TaskTemplate.ContainerSpec.Configs }}", serviceName)
|
||||||
|
|
|
@ -172,7 +172,7 @@ func (s *DockerSwarmSuite) TestSwarmServiceTemplatingHostname(c *check.C) {
|
||||||
hostname, err := d.Cmd("node", "inspect", "--format", "{{.Description.Hostname}}", "self")
|
hostname, err := d.Cmd("node", "inspect", "--format", "{{.Description.Hostname}}", "self")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(hostname))
|
c.Assert(err, checker.IsNil, check.Commentf(hostname))
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", "test", "--hostname", "{{.Service.Name}}-{{.Task.Slot}}-{{.Node.Hostname}}", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "test", "--hostname", "{{.Service.Name}}-{{.Task.Slot}}-{{.Node.Hostname}}", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// make sure task has been deployed.
|
// make sure task has been deployed.
|
||||||
|
@ -191,15 +191,15 @@ func (s *DockerSwarmSuite) TestSwarmServiceListFilter(c *check.C) {
|
||||||
name1 := "redis-cluster-md5"
|
name1 := "redis-cluster-md5"
|
||||||
name2 := "redis-cluster"
|
name2 := "redis-cluster"
|
||||||
name3 := "other-cluster"
|
name3 := "other-cluster"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name1, "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name1, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", name2, "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name2, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", name3, "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name3, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -249,7 +249,7 @@ func (s *DockerSwarmSuite) TestSwarmNodeTaskListFilter(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
name := "redis-cluster-md5"
|
name := "redis-cluster-md5"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "--replicas=3", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "--replicas=3", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -276,17 +276,17 @@ func (s *DockerSwarmSuite) TestSwarmPublishAdd(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
name := "top"
|
name := "top"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "--label", "x=y", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "--label", "x=y", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
out, err = d.Cmd("service", "update", "--publish-add", "80:80", name)
|
out, err = d.Cmd("service", "update", "--detach", "--publish-add", "80:80", name)
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
out, err = d.CmdRetryOutOfSequence("service", "update", "--publish-add", "80:80", name)
|
out, err = d.CmdRetryOutOfSequence("service", "update", "--detach", "--publish-add", "80:80", name)
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
out, err = d.CmdRetryOutOfSequence("service", "update", "--publish-add", "80:80", "--publish-add", "80:20", name)
|
out, err = d.CmdRetryOutOfSequence("service", "update", "--detach", "--publish-add", "80:80", "--publish-add", "80:20", name)
|
||||||
c.Assert(err, checker.NotNil)
|
c.Assert(err, checker.NotNil)
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ .Spec.EndpointSpec.Ports }}", name)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ .Spec.EndpointSpec.Ports }}", name)
|
||||||
|
@ -298,7 +298,7 @@ func (s *DockerSwarmSuite) TestSwarmServiceWithGroup(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
name := "top"
|
name := "top"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "--user", "root:root", "--group", "wheel", "--group", "audio", "--group", "staff", "--group", "777", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "--user", "root:root", "--group", "wheel", "--group", "audio", "--group", "staff", "--group", "777", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -487,7 +487,7 @@ func (s *DockerSwarmSuite) TestSwarmIngressNetwork(c *check.C) {
|
||||||
c.Assert(strings.TrimSpace(out), checker.Contains, "is already present")
|
c.Assert(strings.TrimSpace(out), checker.Contains, "is already present")
|
||||||
|
|
||||||
// It cannot be removed if it is being used
|
// It cannot be removed if it is being used
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", "srv1", "-p", "9000:8000", "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "srv1", "-p", "9000:8000", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
result = removeNetwork("new-ingress")
|
result = removeNetwork("new-ingress")
|
||||||
|
@ -497,24 +497,24 @@ func (s *DockerSwarmSuite) TestSwarmIngressNetwork(c *check.C) {
|
||||||
})
|
})
|
||||||
|
|
||||||
// But it can be removed once no more services depend on it
|
// But it can be removed once no more services depend on it
|
||||||
out, err = d.Cmd("service", "update", "--publish-rm", "9000:8000", "srv1")
|
out, err = d.Cmd("service", "update", "--detach", "--publish-rm", "9000:8000", "srv1")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
result = removeNetwork("new-ingress")
|
result = removeNetwork("new-ingress")
|
||||||
result.Assert(c, icmd.Success)
|
result.Assert(c, icmd.Success)
|
||||||
|
|
||||||
// A service which needs the ingress network cannot be created if no ingress is present
|
// A service which needs the ingress network cannot be created if no ingress is present
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", "srv2", "-p", "500:500", "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "srv2", "-p", "500:500", "busybox", "top")
|
||||||
c.Assert(err, checker.NotNil)
|
c.Assert(err, checker.NotNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Contains, "no ingress network is present")
|
c.Assert(strings.TrimSpace(out), checker.Contains, "no ingress network is present")
|
||||||
|
|
||||||
// An existing service cannot be updated to use the ingress nw if the nw is not present
|
// An existing service cannot be updated to use the ingress nw if the nw is not present
|
||||||
out, err = d.Cmd("service", "update", "--publish-add", "9000:8000", "srv1")
|
out, err = d.Cmd("service", "update", "--detach", "--publish-add", "9000:8000", "srv1")
|
||||||
c.Assert(err, checker.NotNil)
|
c.Assert(err, checker.NotNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Contains, "no ingress network is present")
|
c.Assert(strings.TrimSpace(out), checker.Contains, "no ingress network is present")
|
||||||
|
|
||||||
// But services which do not need routing mesh can be created regardless
|
// But services which do not need routing mesh can be created regardless
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", "srv3", "--endpoint-mode", "dnsrr", "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "srv3", "--endpoint-mode", "dnsrr", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -531,7 +531,7 @@ func (s *DockerSwarmSuite) TestSwarmCreateServiceWithNoIngressNetwork(c *check.C
|
||||||
// Make sure nothing panics because ingress network is missing
|
// Make sure nothing panics because ingress network is missing
|
||||||
out, err := d.Cmd("network", "create", "-d", "overlay", "another-network")
|
out, err := d.Cmd("network", "create", "-d", "overlay", "another-network")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", "srv4", "--network", "another-network", "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "srv4", "--network", "another-network", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -541,7 +541,7 @@ func (s *DockerSwarmSuite) TestSwarmTaskListFilter(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
name := "redis-cluster-md5"
|
name := "redis-cluster-md5"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "--replicas=3", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "--replicas=3", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -575,7 +575,7 @@ func (s *DockerSwarmSuite) TestSwarmTaskListFilter(c *check.C) {
|
||||||
c.Assert(out, checker.Not(checker.Contains), name+".3")
|
c.Assert(out, checker.Not(checker.Contains), name+".3")
|
||||||
|
|
||||||
name = "redis-cluster-sha1"
|
name = "redis-cluster-sha1"
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", name, "--mode=global", "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "--mode=global", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -604,7 +604,7 @@ func (s *DockerSwarmSuite) TestPsListContainersFilterIsTask(c *check.C) {
|
||||||
bareID := strings.TrimSpace(out)[:12]
|
bareID := strings.TrimSpace(out)[:12]
|
||||||
// Create a service
|
// Create a service
|
||||||
name := "busybox-top"
|
name := "busybox-top"
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -823,7 +823,7 @@ func (s *DockerSwarmSuite) TestSwarmServiceEnvFile(c *check.C) {
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
name := "worker"
|
name := "worker"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--env-file", path, "--env", "VAR1=B", "--env", "VAR1=C", "--env", "VAR2=", "--env", "VAR2", "--name", name, "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--env-file", path, "--env", "VAR1=B", "--env", "VAR1=C", "--env", "VAR2=", "--env", "VAR2", "--name", name, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -842,7 +842,7 @@ func (s *DockerSwarmSuite) TestSwarmServiceTTY(c *check.C) {
|
||||||
|
|
||||||
// Without --tty
|
// Without --tty
|
||||||
expectedOutput := "none"
|
expectedOutput := "none"
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", ttyCheck)
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox", "sh", "-c", ttyCheck)
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
// Make sure task has been deployed.
|
// Make sure task has been deployed.
|
||||||
|
@ -865,7 +865,7 @@ func (s *DockerSwarmSuite) TestSwarmServiceTTY(c *check.C) {
|
||||||
|
|
||||||
// With --tty
|
// With --tty
|
||||||
expectedOutput = "TTY"
|
expectedOutput = "TTY"
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", name, "--tty", "busybox", "sh", "-c", ttyCheck)
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "--tty", "busybox", "sh", "-c", ttyCheck)
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
// Make sure task has been deployed.
|
// Make sure task has been deployed.
|
||||||
|
@ -886,7 +886,7 @@ func (s *DockerSwarmSuite) TestSwarmServiceTTYUpdate(c *check.C) {
|
||||||
|
|
||||||
// Create a service
|
// Create a service
|
||||||
name := "top"
|
name := "top"
|
||||||
_, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox", "top")
|
_, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
// Make sure task has been deployed.
|
// Make sure task has been deployed.
|
||||||
|
@ -896,7 +896,7 @@ func (s *DockerSwarmSuite) TestSwarmServiceTTYUpdate(c *check.C) {
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
c.Assert(strings.TrimSpace(out), checker.Equals, "false")
|
c.Assert(strings.TrimSpace(out), checker.Equals, "false")
|
||||||
|
|
||||||
_, err = d.Cmd("service", "update", "--tty", name)
|
_, err = d.Cmd("service", "update", "--detach", "--tty", name)
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ .Spec.TaskTemplate.ContainerSpec.TTY }}", name)
|
out, err = d.Cmd("service", "inspect", "--format", "{{ .Spec.TaskTemplate.ContainerSpec.TTY }}", name)
|
||||||
|
@ -921,7 +921,7 @@ func (s *DockerSwarmSuite) TestSwarmServiceNetworkUpdate(c *check.C) {
|
||||||
|
|
||||||
// Create a service
|
// Create a service
|
||||||
name := "top"
|
name := "top"
|
||||||
result = icmd.RunCmd(d.Command("service", "create", "--no-resolve-image", "--network", "foo", "--network", "bar", "--name", name, "busybox", "top"))
|
result = icmd.RunCmd(d.Command("service", "create", "--detach", "--no-resolve-image", "--network", "foo", "--network", "bar", "--name", name, "busybox", "top"))
|
||||||
result.Assert(c, icmd.Success)
|
result.Assert(c, icmd.Success)
|
||||||
|
|
||||||
// Make sure task has been deployed.
|
// Make sure task has been deployed.
|
||||||
|
@ -929,14 +929,14 @@ func (s *DockerSwarmSuite) TestSwarmServiceNetworkUpdate(c *check.C) {
|
||||||
map[string]int{fooNetwork: 1, barNetwork: 1})
|
map[string]int{fooNetwork: 1, barNetwork: 1})
|
||||||
|
|
||||||
// Remove a network
|
// Remove a network
|
||||||
result = icmd.RunCmd(d.Command("service", "update", "--network-rm", "foo", name))
|
result = icmd.RunCmd(d.Command("service", "update", "--detach", "--network-rm", "foo", name))
|
||||||
result.Assert(c, icmd.Success)
|
result.Assert(c, icmd.Success)
|
||||||
|
|
||||||
waitAndAssert(c, defaultReconciliationTimeout, d.CheckRunningTaskNetworks, checker.DeepEquals,
|
waitAndAssert(c, defaultReconciliationTimeout, d.CheckRunningTaskNetworks, checker.DeepEquals,
|
||||||
map[string]int{barNetwork: 1})
|
map[string]int{barNetwork: 1})
|
||||||
|
|
||||||
// Add a network
|
// Add a network
|
||||||
result = icmd.RunCmd(d.Command("service", "update", "--network-add", "baz", name))
|
result = icmd.RunCmd(d.Command("service", "update", "--detach", "--network-add", "baz", name))
|
||||||
result.Assert(c, icmd.Success)
|
result.Assert(c, icmd.Success)
|
||||||
|
|
||||||
waitAndAssert(c, defaultReconciliationTimeout, d.CheckRunningTaskNetworks, checker.DeepEquals,
|
waitAndAssert(c, defaultReconciliationTimeout, d.CheckRunningTaskNetworks, checker.DeepEquals,
|
||||||
|
@ -948,7 +948,7 @@ func (s *DockerSwarmSuite) TestDNSConfig(c *check.C) {
|
||||||
|
|
||||||
// Create a service
|
// Create a service
|
||||||
name := "top"
|
name := "top"
|
||||||
_, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "--dns=1.2.3.4", "--dns-search=example.com", "--dns-option=timeout:3", "busybox", "top")
|
_, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "--dns=1.2.3.4", "--dns-search=example.com", "--dns-option=timeout:3", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
// Make sure task has been deployed.
|
// Make sure task has been deployed.
|
||||||
|
@ -975,13 +975,13 @@ func (s *DockerSwarmSuite) TestDNSConfigUpdate(c *check.C) {
|
||||||
|
|
||||||
// Create a service
|
// Create a service
|
||||||
name := "top"
|
name := "top"
|
||||||
_, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "busybox", "top")
|
_, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
// Make sure task has been deployed.
|
// Make sure task has been deployed.
|
||||||
waitAndAssert(c, defaultReconciliationTimeout, d.CheckActiveContainerCount, checker.Equals, 1)
|
waitAndAssert(c, defaultReconciliationTimeout, d.CheckActiveContainerCount, checker.Equals, 1)
|
||||||
|
|
||||||
_, err = d.Cmd("service", "update", "--dns-add=1.2.3.4", "--dns-search-add=example.com", "--dns-option-add=timeout:3", name)
|
_, err = d.Cmd("service", "update", "--detach", "--dns-add=1.2.3.4", "--dns-search-add=example.com", "--dns-option-add=timeout:3", name)
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
out, err := d.Cmd("service", "inspect", "--format", "{{ .Spec.TaskTemplate.ContainerSpec.DNSConfig }}", name)
|
out, err := d.Cmd("service", "inspect", "--format", "{{ .Spec.TaskTemplate.ContainerSpec.DNSConfig }}", name)
|
||||||
|
@ -1497,7 +1497,7 @@ func (s *DockerSwarmSuite) TestExtraHosts(c *check.C) {
|
||||||
|
|
||||||
// Create a service
|
// Create a service
|
||||||
name := "top"
|
name := "top"
|
||||||
_, err := d.Cmd("service", "create", "--no-resolve-image", "--name", name, "--host=example.com:1.2.3.4", "busybox", "top")
|
_, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", name, "--host=example.com:1.2.3.4", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
// Make sure task has been deployed.
|
// Make sure task has been deployed.
|
||||||
|
@ -1547,7 +1547,7 @@ func (s *DockerSwarmSuite) TestSwarmNetworkIPAMOptions(c *check.C) {
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
c.Assert(strings.TrimSpace(out), checker.Equals, "map[foo:bar]")
|
c.Assert(strings.TrimSpace(out), checker.Equals, "map[foo:bar]")
|
||||||
|
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--network=foo", "--name", "top", "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--network=foo", "--name", "top", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// make sure task has been deployed.
|
// make sure task has been deployed.
|
||||||
|
@ -1565,7 +1565,7 @@ func (s *DockerTrustedSwarmSuite) TestTrustedServiceCreate(c *check.C) {
|
||||||
repoName := s.trustSuite.setupTrustedImage(c, "trusted-pull")
|
repoName := s.trustSuite.setupTrustedImage(c, "trusted-pull")
|
||||||
|
|
||||||
name := "trusted"
|
name := "trusted"
|
||||||
cli.Docker(cli.Args("-D", "service", "create", "--no-resolve-image", "--name", name, repoName, "top"), trustedCmd, cli.Daemon(d.Daemon)).Assert(c, icmd.Expected{
|
cli.Docker(cli.Args("-D", "service", "create", "--detach", "--no-resolve-image", "--name", name, repoName, "top"), trustedCmd, cli.Daemon(d.Daemon)).Assert(c, icmd.Expected{
|
||||||
Err: "resolved image tag to",
|
Err: "resolved image tag to",
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -1582,7 +1582,7 @@ func (s *DockerTrustedSwarmSuite) TestTrustedServiceCreate(c *check.C) {
|
||||||
cli.DockerCmd(c, "rmi", repoName)
|
cli.DockerCmd(c, "rmi", repoName)
|
||||||
|
|
||||||
name = "untrusted"
|
name = "untrusted"
|
||||||
cli.Docker(cli.Args("service", "create", "--no-resolve-image", "--name", name, repoName, "top"), trustedCmd, cli.Daemon(d.Daemon)).Assert(c, icmd.Expected{
|
cli.Docker(cli.Args("service", "create", "--detach", "--no-resolve-image", "--name", name, repoName, "top"), trustedCmd, cli.Daemon(d.Daemon)).Assert(c, icmd.Expected{
|
||||||
ExitCode: 1,
|
ExitCode: 1,
|
||||||
Err: "Error: remote trust data does not exist",
|
Err: "Error: remote trust data does not exist",
|
||||||
})
|
})
|
||||||
|
@ -1600,7 +1600,7 @@ func (s *DockerTrustedSwarmSuite) TestTrustedServiceUpdate(c *check.C) {
|
||||||
name := "myservice"
|
name := "myservice"
|
||||||
|
|
||||||
// Create a service without content trust
|
// Create a service without content trust
|
||||||
cli.Docker(cli.Args("service", "create", "--no-resolve-image", "--name", name, repoName, "top"), cli.Daemon(d.Daemon)).Assert(c, icmd.Success)
|
cli.Docker(cli.Args("service", "create", "--detach", "--no-resolve-image", "--name", name, repoName, "top"), cli.Daemon(d.Daemon)).Assert(c, icmd.Success)
|
||||||
|
|
||||||
result := cli.Docker(cli.Args("service", "inspect", "--pretty", name), cli.Daemon(d.Daemon))
|
result := cli.Docker(cli.Args("service", "inspect", "--pretty", name), cli.Daemon(d.Daemon))
|
||||||
c.Assert(result.Error, checker.IsNil, check.Commentf(result.Combined()))
|
c.Assert(result.Error, checker.IsNil, check.Commentf(result.Combined()))
|
||||||
|
@ -1608,7 +1608,7 @@ func (s *DockerTrustedSwarmSuite) TestTrustedServiceUpdate(c *check.C) {
|
||||||
// DOCKER_SERVICE_PREFER_OFFLINE_IMAGE.
|
// DOCKER_SERVICE_PREFER_OFFLINE_IMAGE.
|
||||||
c.Assert(result.Combined(), check.Not(checker.Contains), repoName+"@", check.Commentf(result.Combined()))
|
c.Assert(result.Combined(), check.Not(checker.Contains), repoName+"@", check.Commentf(result.Combined()))
|
||||||
|
|
||||||
cli.Docker(cli.Args("-D", "service", "update", "--no-resolve-image", "--image", repoName, name), trustedCmd, cli.Daemon(d.Daemon)).Assert(c, icmd.Expected{
|
cli.Docker(cli.Args("-D", "service", "update", "--detach", "--no-resolve-image", "--image", repoName, name), trustedCmd, cli.Daemon(d.Daemon)).Assert(c, icmd.Expected{
|
||||||
Err: "resolved image tag to",
|
Err: "resolved image tag to",
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -1624,7 +1624,7 @@ func (s *DockerTrustedSwarmSuite) TestTrustedServiceUpdate(c *check.C) {
|
||||||
cli.DockerCmd(c, "push", repoName)
|
cli.DockerCmd(c, "push", repoName)
|
||||||
cli.DockerCmd(c, "rmi", repoName)
|
cli.DockerCmd(c, "rmi", repoName)
|
||||||
|
|
||||||
cli.Docker(cli.Args("service", "update", "--no-resolve-image", "--image", repoName, name), trustedCmd, cli.Daemon(d.Daemon)).Assert(c, icmd.Expected{
|
cli.Docker(cli.Args("service", "update", "--detach", "--no-resolve-image", "--image", repoName, name), trustedCmd, cli.Daemon(d.Daemon)).Assert(c, icmd.Expected{
|
||||||
ExitCode: 1,
|
ExitCode: 1,
|
||||||
Err: "Error: remote trust data does not exist",
|
Err: "Error: remote trust data does not exist",
|
||||||
})
|
})
|
||||||
|
@ -1740,7 +1740,7 @@ func (s *DockerSwarmSuite) TestSwarmReadonlyRootfs(c *check.C) {
|
||||||
|
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", "top", "--read-only", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "top", "--read-only", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// make sure task has been deployed.
|
// make sure task has been deployed.
|
||||||
|
@ -1827,7 +1827,7 @@ func (s *DockerSwarmSuite) TestSwarmStopSignal(c *check.C) {
|
||||||
|
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", "top", "--stop-signal=SIGHUP", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "top", "--stop-signal=SIGHUP", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// make sure task has been deployed.
|
// make sure task has been deployed.
|
||||||
|
@ -1842,7 +1842,7 @@ func (s *DockerSwarmSuite) TestSwarmStopSignal(c *check.C) {
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
c.Assert(strings.TrimSpace(out), checker.Equals, "SIGHUP")
|
c.Assert(strings.TrimSpace(out), checker.Equals, "SIGHUP")
|
||||||
|
|
||||||
out, err = d.Cmd("service", "update", "--stop-signal=SIGUSR1", "top")
|
out, err = d.Cmd("service", "update", "--detach", "--stop-signal=SIGUSR1", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out, err = d.Cmd("service", "inspect", "--format", "{{ .Spec.TaskTemplate.ContainerSpec.StopSignal }}", "top")
|
out, err = d.Cmd("service", "inspect", "--format", "{{ .Spec.TaskTemplate.ContainerSpec.StopSignal }}", "top")
|
||||||
|
@ -1853,11 +1853,11 @@ func (s *DockerSwarmSuite) TestSwarmStopSignal(c *check.C) {
|
||||||
func (s *DockerSwarmSuite) TestSwarmServiceLsFilterMode(c *check.C) {
|
func (s *DockerSwarmSuite) TestSwarmServiceLsFilterMode(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--name", "top1", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "top1", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
out, err = d.Cmd("service", "create", "--no-resolve-image", "--name", "top2", "--mode=global", "busybox", "top")
|
out, err = d.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", "top2", "--mode=global", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
|
||||||
|
|
||||||
|
@ -2033,7 +2033,7 @@ func (s *DockerSwarmSuite) TestSwarmClusterEventsService(c *check.C) {
|
||||||
|
|
||||||
// scale service
|
// scale service
|
||||||
t2 := daemonUnixTime(c)
|
t2 := daemonUnixTime(c)
|
||||||
out, err = d.Cmd("service", "scale", "test=3")
|
out, err = d.Cmd("service", "scale", "--detach", "test=3")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
out = waitForEvent(c, d, t2, "-f scope=swarm", "service update "+serviceID, defaultRetryCount)
|
out = waitForEvent(c, d, t2, "-f scope=swarm", "service update "+serviceID, defaultRetryCount)
|
||||||
|
|
|
@ -15,7 +15,7 @@ import (
|
||||||
func (s *DockerSwarmSuite) TestSwarmVolumePlugin(c *check.C) {
|
func (s *DockerSwarmSuite) TestSwarmVolumePlugin(c *check.C) {
|
||||||
d := s.AddDaemon(c, true, true)
|
d := s.AddDaemon(c, true, true)
|
||||||
|
|
||||||
out, err := d.Cmd("service", "create", "--no-resolve-image", "--mount", "type=volume,source=my-volume,destination=/foo,volume-driver=customvolumedriver", "--name", "top", "busybox", "top")
|
out, err := d.Cmd("service", "create", "--detach", "--no-resolve-image", "--mount", "type=volume,source=my-volume,destination=/foo,volume-driver=customvolumedriver", "--name", "top", "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil, check.Commentf(out))
|
c.Assert(err, checker.IsNil, check.Commentf(out))
|
||||||
|
|
||||||
// Make sure task stays pending before plugin is available
|
// Make sure task stays pending before plugin is available
|
||||||
|
@ -74,7 +74,7 @@ func (s *DockerSwarmSuite) TestSwarmNetworkPluginV2(c *check.C) {
|
||||||
|
|
||||||
// create a global service to ensure that both nodes will have an instance
|
// create a global service to ensure that both nodes will have an instance
|
||||||
serviceName := "my-service"
|
serviceName := "my-service"
|
||||||
_, err = d1.Cmd("service", "create", "--no-resolve-image", "--name", serviceName, "--mode=global", "--network", networkName, "busybox", "top")
|
_, err = d1.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "--mode=global", "--network", networkName, "busybox", "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
// wait for tasks ready
|
// wait for tasks ready
|
||||||
|
@ -96,7 +96,7 @@ func (s *DockerSwarmSuite) TestSwarmNetworkPluginV2(c *check.C) {
|
||||||
|
|
||||||
image := "busybox:latest"
|
image := "busybox:latest"
|
||||||
// create a new global service again.
|
// create a new global service again.
|
||||||
_, err = d1.Cmd("service", "create", "--no-resolve-image", "--name", serviceName, "--mode=global", "--network", networkName, image, "top")
|
_, err = d1.Cmd("service", "create", "--detach", "--no-resolve-image", "--name", serviceName, "--mode=global", "--network", networkName, image, "top")
|
||||||
c.Assert(err, checker.IsNil)
|
c.Assert(err, checker.IsNil)
|
||||||
|
|
||||||
waitAndAssert(c, defaultReconciliationTimeout, d1.CheckRunningTaskImages, checker.DeepEquals,
|
waitAndAssert(c, defaultReconciliationTimeout, d1.CheckRunningTaskImages, checker.DeepEquals,
|
||||||
|
|
Loading…
Reference in a new issue