format_sandbox_unavailable_exception
SandboxNotRunningException;
the sandbox running but envd’s port not open (e.g. its network is down) a
SandboxUnreachableException; any other message (e.g. envd ending a stream
because the connection to the sandbox was lost) a SandboxUnreachableException
too, with the sandbox state reported as unknown.
SandboxException
status_code: HTTP status of the API response that produced this error, when there was one.
TimeoutException
unavailable exception type is caused by sandbox timeout.
The canceled exception type is caused by exceeding request timeout.
The deadline_exceeded exception type is caused by exceeding the timeout for process, watch, etc.
The unknown exception type is sometimes caused by the sandbox timeout when the request is not processed correctly.
InvalidArgumentException
NotEnoughSpaceException
NotFoundException
FileNotFoundException or :class:SandboxNotFoundException instead.
This class will be removed in the next major version.
FileNotFoundException
SandboxNotFoundException
SandboxNotRunningException
SandboxUnreachableException is only as good as the proxy’s
answer and the health probe: a sandbox that is gone but could not be asked
about is a SandboxUnreachableException. Handlers that want every “sandbox
is gone” case should catch both this class and SandboxNotFoundException
(the control-plane API’s answer for a sandbox that does not exist).
Subclass of TimeoutException, which this case surfaced as before.
SandboxUnreachableException
SandboxNotRunningException — but only as far as the probe can tell: a
sandbox that is gone and could not be asked about surfaces here.
This usually means the sandbox’s network is down, envd inside it is not up
(yet), or a network issue between the client and the sandbox. Check the
sandbox state with Sandbox.get_info().
Subclass of TimeoutException, which these cases surfaced as before.
AuthenticationException
GitAuthException
sandbox.commands.run() instead. The git module will be removed in the next major version.
GitUpstreamException
sandbox.commands.run() instead. The git module will be removed in the next major version.
TemplateException
RateLimitException
ServiceBusyException
AuthenticationException and unlike the other API errors, this is not
a SandboxException: it is raised for every 503 whatever the operation, so
catch it explicitly.
Arguments:
status_code: HTTP status of the API response: always 503.