aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel J Walsh <dwalsh@redhat.com>2019-06-12 05:06:00 -0400
committerDaniel J Walsh <dwalsh@redhat.com>2019-06-13 23:38:10 -0400
commitc7ee7f868df7170bae2d65a1831a52ce851dc49d (patch)
tree03982149875dff358d5db91b4a58c5f1345294df
parent56957db468a018063af34489f671274498b1ef28 (diff)
downloadpodman-c7ee7f868df7170bae2d65a1831a52ce851dc49d.tar.gz
podman-c7ee7f868df7170bae2d65a1831a52ce851dc49d.tar.bz2
podman-c7ee7f868df7170bae2d65a1831a52ce851dc49d.zip
Document exit codes for podman exec
Also fix podman run exit codes to show real messages when failures happen. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
-rw-r--r--docs/podman-exec.1.md28
-rw-r--r--docs/podman-run.1.md17
-rw-r--r--docs/podman.1.md11
3 files changed, 39 insertions, 17 deletions
diff --git a/docs/podman-exec.1.md b/docs/podman-exec.1.md
index a6a58df01..07d24e295 100644
--- a/docs/podman-exec.1.md
+++ b/docs/podman-exec.1.md
@@ -52,6 +52,34 @@ The default working directory for running binaries within a container is the roo
The image developer can set a different default with the WORKDIR instruction, which can be overridden
when creating the container.
+## Exit Status
+
+The exit code from `podman exec` gives information about why the command within the container failed to run or why it exited. When `podman exec` exits with a
+non-zero code, the exit codes follow the `chroot` standard, see below:
+
+**_125_** if the error is with podman **_itself_**
+
+ $ podman exec --foo ctrID /bin/sh; echo $?
+ Error: unknown flag: --foo
+ 125
+
+**_126_** if the **_contained command_** cannot be invoked
+
+ $ podman exec ctrID /etc; echo $?
+ Error: container_linux.go:346: starting container process caused "exec: \"/etc\": permission denied": OCI runtime error
+ 126
+
+**_127_** if the **_contained command_** cannot be found
+
+ $ podman exec ctrID foo; echo $?
+ Error: container_linux.go:346: starting container process caused "exec: \"foo\": executable file not found in $PATH": OCI runtime error
+ 127
+
+**_Exit code_** of **_contained command_** otherwise
+
+ $ podman exec ctrID /bin/sh -c 'exit 3'
+ # 3
+
## EXAMPLES
$ podman exec -it ctrID ls
diff --git a/docs/podman-run.1.md b/docs/podman-run.1.md
index 5bf7aeee8..8facccd3c 100644
--- a/docs/podman-run.1.md
+++ b/docs/podman-run.1.md
@@ -902,28 +902,25 @@ the exit codes follow the `chroot` standard, see below:
**_125_** if the error is with podman **_itself_**
$ podman run --foo busybox; echo $?
- # flag provided but not defined: --foo
- See 'podman run --help'.
- 125
+ Error: unknown flag: --foo
+ 125
**_126_** if the **_contained command_** cannot be invoked
$ podman run busybox /etc; echo $?
- # exec: "/etc": permission denied
- podman: Error response from daemon: Contained command could not be invoked
- 126
+ Error: container_linux.go:346: starting container process caused "exec: \"/etc\": permission denied": OCI runtime error
+ 126
**_127_** if the **_contained command_** cannot be found
$ podman run busybox foo; echo $?
- # exec: "foo": executable file not found in $PATH
- podman: Error response from daemon: Contained command not found or does not exist
- 127
+ Error: container_linux.go:346: starting container process caused "exec: \"foo\": executable file not found in $PATH": OCI runtime error
+ 127
**_Exit code_** of **_contained command_** otherwise
$ podman run busybox /bin/sh -c 'exit 3'
- # 3
+ 3
## EXAMPLES
diff --git a/docs/podman.1.md b/docs/podman.1.md
index b6c0628ed..1696fe464 100644
--- a/docs/podman.1.md
+++ b/docs/podman.1.md
@@ -103,24 +103,21 @@ the exit codes follow the `chroot` standard, see below:
**_125_** if the error is with podman **_itself_**
$ podman run --foo busybox; echo $?
- # flag provided but not defined: --foo
- See 'podman run --help'.
+ Error: unknown flag: --foo
125
**_126_** if executing a **_container command_** and the the **_command_** cannot be invoked
$ podman run busybox /etc; echo $?
- # exec: "/etc": permission denied
- podman: Error response from daemon: Contained command could not be invoked
+ Error: container_linux.go:346: starting container process caused "exec: \"/etc\": permission denied": OCI runtime error
126
**_127_** if executing a **_container command_** and the the **_command_** cannot be found
$ podman run busybox foo; echo $?
- # exec: "foo": executable file not found in $PATH
- podman: Error response from daemon: Contained command not found or does not exist
+ Error: container_linux.go:346: starting container process caused "exec: \"foo\": executable file not found in $PATH": OCI runtime error
127
-**_Exit code_** of **_container command_** otherwise
+**_Exit code_** of **_contained command_** otherwise
$ podman run busybox /bin/sh -c 'exit 3'
# 3