diff options
author | Ghanshyam Mann <gmann@ghanshyammann.com> | 2022-04-05 17:38:00 -0500 |
---|---|---|
committer | Ghanshyam <gmann@ghanshyammann.com> | 2022-04-05 23:41:14 +0000 |
commit | fc1791f8589cb8dba9d8d9ef7856be17b2bc77f3 (patch) | |
tree | 034f0b3ccd9559c3227abac0e54abbd3f4f67920 /tempest_lib/exceptions.py | |
parent | 023426894a4f72d906ed6f79c55ed7152a732b44 (diff) | |
download | tempest-lib-master.tar.gz |
As of the 1.0.0 release tempest-lib as a separate
repository and project is deprecated. We moved all the
code to tempest.lib temepst version 10.
Hoping everyone is moved to tempest.lib now, We can retire
the tempest-lib. We discussed the same in PTG and agreed to
proceed on retirement
- https://etherpad.opendev.org/p/qa-zed-ptg
Needed-By: https://review.opendev.org/c/openstack/governance/+/836704
Change-Id: I37ceb96e084f569ea59e4849ca8770742ce17846
Diffstat (limited to 'tempest_lib/exceptions.py')
-rw-r--r-- | tempest_lib/exceptions.py | 205 |
1 files changed, 0 insertions, 205 deletions
diff --git a/tempest_lib/exceptions.py b/tempest_lib/exceptions.py deleted file mode 100644 index 2bf7cdd..0000000 --- a/tempest_lib/exceptions.py +++ /dev/null @@ -1,205 +0,0 @@ -# Copyright 2012 OpenStack Foundation -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -import testtools - - -class TempestException(Exception): - """Base Tempest Exception - - To correctly use this class, inherit from it and define - a 'message' property. That message will get printf'd - with the keyword arguments provided to the constructor. - """ - message = "An unknown exception occurred" - - def __init__(self, *args, **kwargs): - super(TempestException, self).__init__() - try: - self._error_string = self.message % kwargs - except Exception: - # at least get the core message out if something happened - self._error_string = self.message - if len(args) > 0: - # If there is a non-kwarg parameter, assume it's the error - # message or reason description and tack it on to the end - # of the exception message - # Convert all arguments into their string representations... - args = ["%s" % arg for arg in args] - self._error_string = (self._error_string + - "\nDetails: %s" % '\n'.join(args)) - - def __str__(self): - return self._error_string - - -class RestClientException(TempestException, - testtools.TestCase.failureException): - def __init__(self, resp_body=None, *args, **kwargs): - if 'resp' in kwargs: - self.resp = kwargs.get('resp') - self.resp_body = resp_body - message = kwargs.get("message", resp_body) - super(RestClientException, self).__init__(message, *args, **kwargs) - - -class OtherRestClientException(RestClientException): - pass - - -class ServerRestClientException(RestClientException): - pass - - -class ClientRestClientException(RestClientException): - pass - - -class InvalidHttpSuccessCode(OtherRestClientException): - message = "The success code is different than the expected one" - - -class NotFound(ClientRestClientException): - message = "Object not found" - - -class Unauthorized(ClientRestClientException): - message = 'Unauthorized' - - -class Forbidden(ClientRestClientException): - message = "Forbidden" - - -class TimeoutException(OtherRestClientException): - message = "Request timed out" - - -class BadRequest(ClientRestClientException): - message = "Bad request" - - -class UnprocessableEntity(ClientRestClientException): - message = "Unprocessable entity" - - -class RateLimitExceeded(ClientRestClientException): - message = "Rate limit exceeded" - - -class OverLimit(ClientRestClientException): - message = "Quota exceeded" - - -class ServerFault(ServerRestClientException): - message = "Got server fault" - - -class NotImplemented(ServerRestClientException): - message = "Got NotImplemented error" - - -class Conflict(ClientRestClientException): - message = "An object with that identifier already exists" - - -class Gone(ClientRestClientException): - message = "The requested resource is no longer available" - - -class ResponseWithNonEmptyBody(OtherRestClientException): - message = ("RFC Violation! Response with %(status)d HTTP Status Code " - "MUST NOT have a body") - - -class ResponseWithEntity(OtherRestClientException): - message = ("RFC Violation! Response with 205 HTTP Status Code " - "MUST NOT have an entity") - - -class InvalidHTTPResponseBody(OtherRestClientException): - message = "HTTP response body is invalid json or xml" - - -class InvalidHTTPResponseHeader(OtherRestClientException): - message = "HTTP response header is invalid" - - -class InvalidContentType(ClientRestClientException): - message = "Invalid content type provided" - - -class UnexpectedContentType(OtherRestClientException): - message = "Unexpected content type provided" - - -class UnexpectedResponseCode(OtherRestClientException): - message = "Unexpected response code received" - - -class InvalidStructure(TempestException): - message = "Invalid structure of table with details" - - -class BadAltAuth(TempestException): - """Used when trying and failing to change to alt creds. - - If alt creds end up the same as primary creds, use this - exception. This is often going to be the case when you assume - project_id is in the url, but it's not. - - """ - message = "The alt auth looks the same as primary auth for %(part)s" - - -class CommandFailed(Exception): - def __init__(self, returncode, cmd, output, stderr): - super(CommandFailed, self).__init__() - self.returncode = returncode - self.cmd = cmd - self.stdout = output - self.stderr = stderr - - def __str__(self): - return ("Command '%s' returned non-zero exit status %d.\n" - "stdout:\n%s\n" - "stderr:\n%s" % (self.cmd, - self.returncode, - self.stdout, - self.stderr)) - - -class IdentityError(TempestException): - message = "Got identity error" - - -class EndpointNotFound(TempestException): - message = "Endpoint not found" - - -class InvalidCredentials(TempestException): - message = "Invalid Credentials" - - -class SSHTimeout(TempestException): - message = ("Connection to the %(host)s via SSH timed out.\n" - "User: %(user)s, Password: %(password)s") - - -class SSHExecCommandFailed(TempestException): - """Raised when remotely executed command returns nonzero status.""" - message = ("Command '%(command)s', exit status: %(exit_status)d, " - "stderr:\n%(stderr)s\n" - "stdout:\n%(stdout)s") |