Просмотр исходного кода

Add retry on secret payload fetching.

Nashwan Azhari 7 лет назад
Родитель
Сommit
9615fb7401
1 измененных файлов с 3 добавлено и 1 удалено
  1. 3 1
      coriolis/secrets.py

+ 3 - 1
coriolis/secrets.py

@@ -13,4 +13,6 @@ def get_secret(ctxt, secret_ref):
     session = keystone.create_keystone_session(ctxt)
     barbican = barbican_client.Client(session=session)
     sec = utils.retry_on_error()(barbican.secrets.get)(secret_ref)
-    return json.loads(sec.payload)
+    # NOTE: accessing `payload` leads to another API call being made:
+    payload = utils.retry_on_error()(getattr)(sec, "payload")
+    return json.loads(payload)