Browse code

Fixes #987 - Before py36, py3 json was only able to load unicode str

Florent Viard authored on 2018/07/19 08:45:03
Showing 1 changed files
... ...
@@ -260,10 +260,11 @@ class Config(object):
260 260
             resp = conn.getresponse()
261 261
             files = resp.read()
262 262
             if resp.status == 200 and len(files)>1:
263
-                conn.request('GET', "/latest/meta-data/iam/security-credentials/%s"%files.decode('UTF-8'))
263
+                conn.request('GET', "/latest/meta-data/iam/security-credentials/%s" % files.decode('utf-8'))
264 264
                 resp=conn.getresponse()
265 265
                 if resp.status == 200:
266
-                    creds=json.load(resp, encoding="utf-8")
266
+                    resp_content = config_unicodise(resp.read())
267
+                    creds=json.loads(resp_content)
267 268
                     Config().update_option('access_key', config_unicodise(creds['AccessKeyId']))
268 269
                     Config().update_option('secret_key', config_unicodise(creds['SecretAccessKey']))
269 270
                     Config().update_option('access_token', config_unicodise(creds['Token']))