Only grant permissions to new extensions from sync if they have the expected version
[chromium-blink-merge.git] / tools / telemetry / third_party / gsutilz / gslib / devshell_auth_plugin.py
blob540b037ec672a7ced61b45d5aad1273229e4c6ee
1 # -*- coding: utf-8 -*-
2 # Copyright 2015 Google Inc. All Rights Reserved.
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 """Developer Shell auth bridge.
17 This enables Boto API auth in Developer Shell environment.
18 """
20 from __future__ import absolute_import
22 import oauth2client.devshell as devshell
23 from boto.auth_handler import AuthHandler
24 from boto.auth_handler import NotReadyToAuthenticate
27 class DevshellAuth(AuthHandler):
28 """Developer Shell authorization plugin class."""
30 capability = ['s3']
32 def __init__(self, path, config, provider):
33 try:
34 self.creds = devshell.DevshellCredentials()
35 except:
36 raise NotReadyToAuthenticate()
38 def add_auth(self, http_request):
39 http_request.headers['Authorization'] = 'Bearer %s' % self.creds.access_token