https://cr-buildbucket.appspot.com/restricted/ereporter2/request/5b296aa900ff0647307aa85b4b0001737e63722d6275696c646275636b6574000131363034312d6535356461326500010105 minted token for the same user FOR EACH build. Fix that.
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/b16395c45bc3991c71ed4d8a538b636cb9cbb72c commit b16395c45bc3991c71ed4d8a538b636cb9cbb72c Author: Nodir Turakulov <nodir@google.com> Date: Wed Jun 20 21:46:00 2018 [buildbucket] Rename acl.py to user.py Delegation token minting will be moved to user.py and user.py will grow request-level cache for the current user, e.g. delegation token and a list of accessible buckets. Bug: 854484 , 854339 Change-Id: I8eade6ef8af1bea3f1771904fdf432b0b267ff1c Reviewed-on: https://chromium-review.googlesource.com/1108181 Commit-Queue: Nodir Turakulov <nodir@chromium.org> Reviewed-by: Vadim Shtayura <vadimsh@chromium.org> [modify] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/access/api.py [rename] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/test/user_test.py [modify] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/v2/test/api_test.py [modify] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/service.py [modify] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/swarming/swarmbucket_api.py [modify] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/api.py [modify] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/swarming/test/swarmbucket_api_test.py [modify] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/access/test/api_test.py [modify] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/test/service_test.py [rename] https://crrev.com/b16395c45bc3991c71ed4d8a538b636cb9cbb72c/appengine/cr-buildbucket/user.py
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/6d32cf17e15b226a257fb4f86f2698f159ed9396 commit 6d32cf17e15b226a257fb4f86f2698f159ed9396 Author: Nodir Turakulov <nodir@google.com> Date: Wed Jun 20 22:31:01 2018 [buildbucket] Add per-request caching on accessible buckets We don't have a python lib for per-request or process caching, so roll our own, scoped down to the current identity in the current request, based on threading.Local. It caches a future. Will be used for delegation cache too. Bug: 854339 , 854484 Change-Id: I495f4ecec768c078a06f10c4e23eedcdf3ef7bd9 Reviewed-on: https://chromium-review.googlesource.com/1108387 Commit-Queue: Nodir Turakulov <nodir@chromium.org> Reviewed-by: Vadim Shtayura <vadimsh@chromium.org> [modify] https://crrev.com/6d32cf17e15b226a257fb4f86f2698f159ed9396/appengine/cr-buildbucket/swarming/test/swarmbucket_api_test.py [modify] https://crrev.com/6d32cf17e15b226a257fb4f86f2698f159ed9396/appengine/cr-buildbucket/user.py [modify] https://crrev.com/6d32cf17e15b226a257fb4f86f2698f159ed9396/appengine/cr-buildbucket/test/user_test.py
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/61dfdea50614089edc72a52897d7abbb2e93b349 commit 61dfdea50614089edc72a52897d7abbb2e93b349 Author: Nodir Turakulov <nodir@google.com> Date: Wed Jun 20 23:39:21 2018 [buildbucket] Move delegation token minting to user.py Move delegation token minting from swarming.py to user.py and add per-request caching. Also, in _get_or_create_cached_future ensure we are not waiting on a future that was created in a different ndb context. Bug: 854339 Change-Id: I87ec29b4dc6849f3976b1fce5dce1e63a2e36aee Reviewed-on: https://chromium-review.googlesource.com/1108498 Commit-Queue: Nodir Turakulov <nodir@chromium.org> Reviewed-by: Vadim Shtayura <vadimsh@chromium.org> [modify] https://crrev.com/61dfdea50614089edc72a52897d7abbb2e93b349/appengine/cr-buildbucket/swarming/swarming.py [modify] https://crrev.com/61dfdea50614089edc72a52897d7abbb2e93b349/appengine/cr-buildbucket/user.py [modify] https://crrev.com/61dfdea50614089edc72a52897d7abbb2e93b349/appengine/cr-buildbucket/test/user_test.py
Comment 1 by tandrii@chromium.org
, Jun 20 2018