Files
docker-cli/cli/command
Laura Brehm aee9eebf34 run: return error code when only STDIN attached
During a `docker run`, the CLI has some different behavior/output
depending on whether the run is "detached" or not.

In some cases, the CLI is checking whether either `stdin`, `stdout` or
`stderr` are attached, but in other cases we're only checking `stdout`
and `stderr`, which leads to some inconsistencies:

```
$ docker run -a stdout --rm --name test alpine top
[docker kill test]
exit status 137

$ docker run -a stderr --rm --name test alpine top
[docker kill test]
exit status 137

$ docker run -a stdin --rm --name test alpine top
56820d94a89b96889478241ae68920323332c6d4cf9b51ba9340cba01e9e0565
[docker kill test]
[no exit code]
```

Since we're not checking for whether `stdin` is attached when deciding
whether to early exit without receiving on `statusChan`, the `docker run
-a stdin` is falling into the "detached mode" logic, which simply prints
the container ID and doesn't print/return the exit code.

This patch makes the "attached" checks consistent.

Signed-off-by: Laura Brehm <laurabrehm@hey.com>
2024-12-02 14:31:26 +00:00
..
2024-07-04 01:35:12 +02:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-12 12:38:18 +01:00
2024-11-27 16:46:34 +00:00
2024-11-12 12:38:18 +01:00