summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/podman-run.1.md2
-rw-r--r--libpod/container_api.go4
-rw-r--r--test/e2e/logs_test.go17
3 files changed, 20 insertions, 3 deletions
diff --git a/docs/podman-run.1.md b/docs/podman-run.1.md
index eca98514b..123f7ee5f 100644
--- a/docs/podman-run.1.md
+++ b/docs/podman-run.1.md
@@ -669,7 +669,7 @@ Signal to stop a container. Default is SIGTERM.
Timeout (in seconds) to stop a container. Default is 10.
-**--subuidname**=*name*
+**--subgidname**=*name*
Run the container in a new user namespace using the map with 'name' in the `/etc/subgid` file.
If calling podman run as an unprivileged user, the user needs to have the right to use the mapping. See `subgid(5)`.
diff --git a/libpod/container_api.go b/libpod/container_api.go
index 52d3afc0a..0e877d04e 100644
--- a/libpod/container_api.go
+++ b/libpod/container_api.go
@@ -180,7 +180,7 @@ func (c *Container) StopWithTimeout(timeout uint) error {
if c.state.State == ContainerStateConfigured ||
c.state.State == ContainerStateUnknown ||
c.state.State == ContainerStatePaused {
- return errors.Wrapf(ErrCtrStateInvalid, "can only stop created, running, or stopped containers. %s in state %s", c.ID(), c.state.State.String())
+ return errors.Wrapf(ErrCtrStateInvalid, "can only stop created, running, or stopped containers. %s is in state %s", c.ID(), c.state.State.String())
}
if c.state.State == ContainerStateStopped ||
@@ -203,7 +203,7 @@ func (c *Container) Kill(signal uint) error {
}
if c.state.State != ContainerStateRunning {
- return errors.Wrapf(ErrCtrStateInvalid, "can only kill running containers")
+ return errors.Wrapf(ErrCtrStateInvalid, "can only kill running containers. %s is in state %s", c.ID(), c.state.State.String())
}
defer c.newContainerEvent(events.Kill)
diff --git a/test/e2e/logs_test.go b/test/e2e/logs_test.go
index cc50c4d95..d17f60a5d 100644
--- a/test/e2e/logs_test.go
+++ b/test/e2e/logs_test.go
@@ -218,4 +218,21 @@ var _ = Describe("Podman logs", func() {
Expect(results.ExitCode()).To(Equal(0))
Expect(len(results.OutputToStringArray())).To(Equal(3))
})
+
+ It("podman logs -f two lines", func() {
+ containerName := "logs-f-rm"
+
+ logc := podmanTest.Podman([]string{"run", "--rm", "--name", containerName, "-dt", ALPINE, "sh", "-c", "echo podman; sleep 1; echo podman"})
+ logc.WaitWithDefaultTimeout()
+ Expect(logc.ExitCode()).To(Equal(0))
+
+ results := podmanTest.Podman([]string{"logs", "-f", containerName})
+ results.WaitWithDefaultTimeout()
+ Expect(results.ExitCode()).To(Equal(0))
+
+ // Verify that the cleanup process worked correctly and we can recreate a container with the same name
+ logc = podmanTest.Podman([]string{"run", "--rm", "--name", containerName, "-dt", ALPINE, "true"})
+ logc.WaitWithDefaultTimeout()
+ Expect(logc.ExitCode()).To(Equal(0))
+ })
})