Skip to content

Commit 61398c1

Browse files
committed
fix(lib): reduce error renderer complexity
1 parent cd9ed6e commit 61398c1

1 file changed

Lines changed: 6 additions & 5 deletions

File tree

packages/lib/src/usecases/errors.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,11 @@ const isParseError = (error: AppError): error is ParseError =>
4040
error._tag === "InvalidOption" ||
4141
error._tag === "UnexpectedArgument"
4242

43+
const renderDockerAccessHeadline = (issue: DockerAccessError["issue"]): string =>
44+
issue === "PermissionDenied"
45+
? "Cannot access Docker daemon socket: permission denied."
46+
: "Cannot connect to Docker daemon."
47+
4348
const renderPrimaryError = (error: NonParseError): string | null => {
4449
if (error._tag === "FileExistsError") {
4550
return `File already exists: ${error.path} (use --force to overwrite)`
@@ -53,12 +58,8 @@ const renderPrimaryError = (error: NonParseError): string | null => {
5358
}
5459

5560
if (error._tag === "DockerAccessError") {
56-
const headline =
57-
error.issue === "PermissionDenied"
58-
? "Cannot access Docker daemon socket: permission denied."
59-
: "Cannot connect to Docker daemon."
6061
return [
61-
headline,
62+
renderDockerAccessHeadline(error.issue),
6263
"Hint: ensure Docker daemon is running and current user can access the docker socket.",
6364
"Hint: if you use rootless Docker, set DOCKER_HOST to your user socket (for example unix:///run/user/$UID/docker.sock).",
6465
`Details: ${error.details}`

0 commit comments

Comments
 (0)