exception.py 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. from ray_release.result import ExitCode
  2. class ReleaseTestError(RuntimeError):
  3. exit_code = ExitCode.UNSPECIFIED
  4. class ReleaseTestPackageError(ReleaseTestError):
  5. pass
  6. class ReleaseTestConfigError(ReleaseTestPackageError):
  7. exit_code = ExitCode.CONFIG_ERROR
  8. class ReleaseTestCLIError(ReleaseTestPackageError):
  9. exit_code = ExitCode.CLI_ERROR
  10. class ReleaseTestSetupError(ReleaseTestPackageError):
  11. exit_code = ExitCode.SETUP_ERROR
  12. class RayWheelsError(ReleaseTestError):
  13. exit_code = ExitCode.CLI_ERROR
  14. class RayWheelsUnspecifiedError(RayWheelsError):
  15. exit_code = ExitCode.CLI_ERROR
  16. class RayWheelsNotFoundError(RayWheelsError):
  17. exit_code = ExitCode.CLI_ERROR
  18. class RayWheelsTimeoutError(RayWheelsError):
  19. exit_code = ExitCode.RAY_WHEELS_TIMEOUT
  20. class ClusterManagerError(ReleaseTestError):
  21. exit_code = ExitCode.CLUSTER_RESOURCE_ERROR
  22. class ClusterEnvCreateError(ClusterManagerError):
  23. exit_code = ExitCode.CLUSTER_RESOURCE_ERROR
  24. class ClusterEnvBuildError(ClusterManagerError):
  25. exit_code = ExitCode.CLUSTER_ENV_BUILD_ERROR
  26. class ClusterEnvBuildTimeout(ClusterManagerError):
  27. exit_code = ExitCode.CLUSTER_ENV_BUILD_TIMEOUT
  28. class ClusterComputeCreateError(ClusterManagerError):
  29. exit_code = ExitCode.CLUSTER_RESOURCE_ERROR
  30. class ClusterCreationError(ClusterManagerError):
  31. exit_code = ExitCode.CLUSTER_RESOURCE_ERROR
  32. class ClusterStartupError(ClusterManagerError):
  33. exit_code = ExitCode.CLUSTER_STARTUP_ERROR
  34. class CloudInfoError(ClusterManagerError):
  35. exit_code = ExitCode.CLUSTER_RESOURCE_ERROR
  36. class ClusterStartupTimeout(ClusterManagerError):
  37. exit_code = ExitCode.CLUSTER_STARTUP_TIMEOUT
  38. class ClusterStartupFailed(ClusterManagerError):
  39. exit_code = ExitCode.CLUSTER_STARTUP_ERROR
  40. class EnvironmentSetupError(ReleaseTestError):
  41. exit_code = ExitCode.CLUSTER_STARTUP_ERROR
  42. class LocalEnvSetupError(EnvironmentSetupError):
  43. exit_code = ExitCode.LOCAL_ENV_SETUP_ERROR
  44. class RemoteEnvSetupError(EnvironmentSetupError):
  45. exit_code = ExitCode.REMOTE_ENV_SETUP_ERROR
  46. class FileManagerError(ReleaseTestError):
  47. pass
  48. class FileUploadError(FileManagerError):
  49. pass
  50. class FileDownloadError(FileManagerError):
  51. pass
  52. class ClusterNodesWaitTimeout(ReleaseTestError):
  53. exit_code = ExitCode.CLUSTER_WAIT_TIMEOUT
  54. class CommandTimeout(ReleaseTestError):
  55. exit_code = ExitCode.COMMAND_TIMEOUT
  56. class PrepareCommandTimeout(CommandTimeout):
  57. exit_code = ExitCode.CLUSTER_WAIT_TIMEOUT
  58. class TestCommandTimeout(CommandTimeout):
  59. exit_code = ExitCode.COMMAND_TIMEOUT
  60. class CommandError(ReleaseTestError):
  61. exit_code = ExitCode.COMMAND_ERROR
  62. class PrepareCommandError(CommandError):
  63. exit_code = ExitCode.PREPARE_ERROR
  64. class TestCommandError(CommandError):
  65. exit_code = ExitCode.COMMAND_ERROR
  66. class FetchResultError(FileManagerError):
  67. exit_code = ExitCode.FETCH_RESULT_ERROR
  68. class LogsError(CommandError):
  69. pass
  70. class ResultsAlert(CommandError):
  71. exit_code = ExitCode.COMMAND_ALERT
  72. class JobBrokenError(ReleaseTestError):
  73. exit_code = ExitCode.ANYSCALE_ERROR
  74. class JobTerminatedBeforeStartError(ReleaseTestError):
  75. exit_code = ExitCode.CLUSTER_STARTUP_TIMEOUT
  76. class JobTerminatedError(ReleaseTestError):
  77. exit_code = ExitCode.ANYSCALE_ERROR
  78. class JobOutOfRetriesError(ReleaseTestError):
  79. exit_code = ExitCode.ANYSCALE_ERROR
  80. class JobStartupFailed(ClusterStartupFailed):
  81. pass
  82. class JobStartupTimeout(ClusterStartupTimeout):
  83. pass
  84. class JobNoLogsError(ReleaseTestError):
  85. exit_code = ExitCode.ANYSCALE_ERROR