clan-core/pkgs/clan-cli/clan_cli/errors.py

35 lines
624 B
Python
Raw Normal View History

from pathlib import Path
from typing import NamedTuple
class CmdOut(NamedTuple):
stdout: str
stderr: str
cwd: Path
command: str
returncode: int
2023-07-26 13:50:27 +00:00
class ClanError(Exception):
"""Base class for exceptions in this module."""
pass
2023-11-21 13:34:31 +00:00
class ClanHttpError(ClanError):
status_code: int
msg: str
2023-11-30 12:42:15 +00:00
def __init__(self, status_code: int, msg: str) -> None:
2023-11-21 13:34:31 +00:00
self.status_code = status_code
self.msg = msg
super().__init__(msg)
class ClanCmdError(ClanError):
cmd: CmdOut
def __init__(self, cmd: CmdOut) -> None:
self.cmd = cmd
super().__init__()