The cinder.volume.drivers.ibm.ibm_storage.ds8k_restclient
Module¶
-
exception
APIAuthenticationException
(message=None, **kwargs)¶ Bases:
cinder.volume.drivers.ibm.ibm_storage.ds8k_restclient.APIException
Exception raised for errors in the Authentication.
-
exception
APIException
(message=None, **kwargs)¶ Bases:
cinder.exception.VolumeBackendAPIException
Exception raised for errors in the REST APIs.
-
class
AbstractRESTConnector
¶ Bases:
object
Inherit this class when you define your own connector.
-
close
()¶ close the connector.
If the connector uses persistent connection, please provide a way to close it in this method, otherwise you can just leave this method empty.
Input: None Output: None Exception: can raise any exceptions
-
send
(method=”, url=”, headers=None, payload=”, timeout=900)¶ send the request.
Input: see above Output:
if we reached the server and read an HTTP response: (INTEGER__HTTP_RESPONSE_STATUS_CODE, STRING__BODY_OF_RESPONSE_EVEN_IF_STATUS_NOT_200) if we were not able to reach the server or response was invalid HTTP(like certificate error, or could not resolve domain etc): (False, STRING__SHORT_EXPLANATION_OF_REASON_FOR_NOT_
REACHING_SERVER_OR_GETTING_INVALID_RESPONSE)- Exception: should not raise any exceptions itself as all
- the expected scenarios are covered above. Unexpected exceptions are permitted.
-
-
class
DefaultRESTConnector
(verify)¶ Bases:
cinder.volume.drivers.ibm.ibm_storage.ds8k_restclient.AbstractRESTConnector
User can write their own connector and pass it to RESTScheduler.
-
close
()¶
-
connect
()¶
-
send
(method=”, url=”, headers=None, payload=”, timeout=900)¶
-
-
exception
LssFullException
(message=None, **kwargs)¶ Bases:
cinder.volume.drivers.ibm.ibm_storage.ds8k_restclient.APIException
Exception raised for errors when LSS is full.
-
exception
LssIDExhaustError
(message=None, **kwargs)¶ Bases:
cinder.exception.VolumeBackendAPIException
Exception raised for errors when can not find available LSS.
-
class
RESTScheduler
(host, user, passw, connector_obj, verify=False)¶ Bases:
object
This class is multithread friendly.
it isn’t optimally (token handling) but good enough for low-mid traffic.
-
close
()¶
-
connect
()¶
-
fetchall
(*args, **kwargs)¶
-
fetchid
(*args, **kwargs)¶
-
fetchone
(*args, **kwargs)¶
-
send
(method, endpoint, data=None, badStatusException=True, params=None, fields=None, timeout=900)¶
-
statusok
(*args, **kwargs)¶
-
-
exception
TimeoutException
(message=None, **kwargs)¶ Bases:
cinder.volume.drivers.ibm.ibm_storage.ds8k_restclient.APIException
Exception raised when the request is time out.