Nuwan Goonasekera 5 лет назад
Родитель
Сommit
693dfe5636
2 измененных файлов с 31 добавлено и 26 удалено
  1. 31 24
      cloudbridge/providers/gcp/provider.py
  2. 0 2
      cloudbridge/providers/mock/provider.py

+ 31 - 24
cloudbridge/providers/gcp/provider.py

@@ -9,16 +9,18 @@ import re
 import time
 from string import Template
 
+import google_auth_httplib2
+
 import googleapiclient
 from googleapiclient import discovery
 
-import google_auth_httplib2
 import httplib2
 
 from oauth2client.client import GoogleCredentials
 from oauth2client.service_account import ServiceAccountCredentials
 
 from google.auth.credentials import with_scopes_if_required
+
 from google.oauth2.service_account import Credentials
 
 from cloudbridge.base import BaseCloudProvider
@@ -34,6 +36,7 @@ log = logging.getLogger(__name__)
 
 CLOUD_SCOPES = ['https://www.googleapis.com/auth/cloud-platform']
 
+
 class GCPResourceUrl(object):
 
     def __init__(self, resource, connection):
@@ -201,7 +204,6 @@ class GCPResources(object):
 
 
 class GCPCloudProvider(BaseCloudProvider):
-
     PROVIDER_ID = 'gcp'
 
     def __init__(self, config):
@@ -210,15 +212,15 @@ class GCPCloudProvider(BaseCloudProvider):
         # Disable warnings about file_cache not being available when using
         # oauth2client >= 4.0.0.
         logging.getLogger('googleapiclient.discovery_cache').setLevel(
-                logging.ERROR)
+            logging.ERROR)
 
         # Initialize cloud connection fields
         self.credentials_file = self._get_config_value(
-                'gcp_service_creds_file',
-                os.getenv('GCP_SERVICE_CREDS_FILE'))
+            'gcp_service_creds_file',
+            os.getenv('GCP_SERVICE_CREDS_FILE'))
         self.credentials_dict = self._get_config_value(
-                'gcp_service_creds_dict',
-                json.loads(os.getenv('GCP_SERVICE_CREDS_DICT', '{}')))
+            'gcp_service_creds_dict',
+            json.loads(os.getenv('GCP_SERVICE_CREDS_DICT', '{}')))
         self.credentials_obj = self._get_config_value('gcp_credentials_obj')
         self.vm_default_user_name = self._get_config_value(
             'gcp_vm_default_username',
@@ -304,10 +306,10 @@ class GCPCloudProvider(BaseCloudProvider):
     def _compute_resources(self):
         if not self._compute_resources_cache:
             self._compute_resources_cache = GCPResources(
-                    self.gcp_compute,
-                    project=self.project_name,
-                    region=self.region_name,
-                    zone=self.zone_name)
+                self.gcp_compute,
+                project=self.project_name,
+                region=self.region_name,
+                zone=self.zone_name)
         return self._compute_resources_cache
 
     @property
@@ -329,11 +331,11 @@ class GCPCloudProvider(BaseCloudProvider):
         if not self.credentials_obj:
             if self.credentials_dict:
                 self.credentials_obj = (
-                        ServiceAccountCredentials.from_json_keyfile_dict(
-                                self.credentials_dict))
+                    ServiceAccountCredentials.from_json_keyfile_dict(
+                        self.credentials_dict))
             else:
                 self.credentials_obj = (
-                        GoogleCredentials.get_application_default())
+                    GoogleCredentials.get_application_default())
         return self.credentials_obj
 
     def sign_blob(self, string_to_sign):
@@ -344,13 +346,18 @@ class GCPCloudProvider(BaseCloudProvider):
         return self._credentials.service_account_email
 
     def _get_build_request(self):
-        credentials = Credentials.from_service_account_info(self.credentials_dict)
+        credentials = Credentials.from_service_account_info(
+            self.credentials_dict)
         credentials = with_scopes_if_required(credentials, list(CLOUD_SCOPES))
-        # FROM: https://github.com/googleapis/google-api-python-client/blob/master/docs/thread_safety.md
+
+        # FROM: https://github.com/googleapis/google-api-python-client/blob/
+        # master/docs/thread_safety.md
         # Create a new Http() object for every request
         def build_request(http, *args, **kwargs):
-          new_http = google_auth_httplib2.AuthorizedHttp(credentials, http=httplib2.Http())
-          return googleapiclient.http.HttpRequest(new_http, *args, **kwargs)
+            new_http = google_auth_httplib2.AuthorizedHttp(
+                credentials, http=httplib2.Http())
+            return googleapiclient.http.HttpRequest(new_http, *args, **kwargs)
+
         return build_request
 
     def _connect_gcp_storage(self):
@@ -399,12 +406,12 @@ class GCPCloudProvider(BaseCloudProvider):
         if not url_or_name:
             return None
         resource_url = (
-            self._compute_resources.get_resource_url_with_default(
-                resource, url_or_name, **kwargs) or
-            self._storage_resources.get_resource_url_with_default(
-                resource, url_or_name, **kwargs) or
-            self._dns_resources.get_resource_url_with_default(
-                resource, url_or_name, **kwargs))
+                self._compute_resources.get_resource_url_with_default(
+                    resource, url_or_name, **kwargs) or
+                self._storage_resources.get_resource_url_with_default(
+                    resource, url_or_name, **kwargs) or
+                self._dns_resources.get_resource_url_with_default(
+                    resource, url_or_name, **kwargs))
         if resource_url is None:
             return None
         try:

+ 0 - 2
cloudbridge/providers/mock/provider.py

@@ -10,8 +10,6 @@ from moto import mock_ec2
 from moto import mock_route53
 from moto import mock_s3
 
-import responses
-
 from ..aws import AWSCloudProvider
 from ...interfaces.provider import TestMockHelperMixin