Python urllib3.exceptions.ResponseError() Examples
The following are 1
code examples of urllib3.exceptions.ResponseError().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
urllib3.exceptions
, or try the search function
.
Example #1
Source File: providers.py From minio-py with Apache License 2.0 | 5 votes |
def retrieve(self): """Retrieve credential value and its expiry from IAM EC2.""" # Get role names. creds_path = "/latest/meta-data/iam/security-credentials" url = self._endpoint + creds_path res = self._http_client.urlopen("GET", url) if res.status != 200: raise HTTPError( "request failed with status {0}".format(res.status), ) role_names = res.data.decode("utf-8").split("\n") if not role_names: raise ResponseError("no role names found in response") # Get credentials of first role. url = self._endpoint + creds_path + "/" + role_names[0] res = self._http_client.urlopen("GET", url) if res.status != 200: raise HTTPError( "request failed with status {0}".format(res.status), ) data = json.loads(res.data) if data["Code"] != "Success": raise ResponseError( "credential retrieval failed with code {0}".format( data["Code"]), ) try: expiration = datetime.strptime(data["Expiration"], RFC3339NANO) except ValueError: expiration = datetime.strptime(data["Expiration"], RFC3339) return Value( data["AccessKeyId"], data["SecretAccessKey"], session_token=data["Token"], ), expiration + timedelta(minutes=5)