client/commands/commands.py (21 lines of code) (raw):

# Copyright (c) Meta Platforms, Inc. and affiliates. # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. import enum import signal class ExitCode(enum.IntEnum): SUCCESS = 0 FOUND_ERRORS = 1 FAILURE = 2 BUCK_INTERNAL_ERROR = 3 SERVER_NOT_FOUND = 4 INCONSISTENT_SERVER = 5 CONFIGURATION_ERROR = 6 BUCK_USER_ERROR = 7 WATCHMAN_ERROR = 8 TAINT_CONFIGURATION_ERROR = 9 MODEL_VERIFICATION_ERROR = 10 UNSUPPORTED_PLATFORM = 11 # If the process exited due to a signal, this will be the negative signal number. SIGSEGV = -signal.SIGSEGV class ClientException(Exception): exit_code: ExitCode def __init__(self, message: str, exit_code: ExitCode = ExitCode.FAILURE) -> None: super().__init__(message) self.exit_code = exit_code