Compare commits

...

2 Commits

Author SHA1 Message Date
Claire Carroll
7746cbf5bd Update plugins/bigquery/dbt/adapters/bigquery/connections.py 2021-03-30 21:00:39 -04:00
Claire Carroll
4933d72f79 Broken commit: allow no-launch-browser logins 2021-03-30 20:31:48 -04:00
2 changed files with 9 additions and 3 deletions

View File

@@ -19,8 +19,11 @@ def gcloud_installed():
return False
def setup_default_credentials():
def setup_default_credentials(credentials):
if gcloud_installed():
run_cmd('.', ["gcloud", "auth", "application-default", "login"])
if credentials.launch_browser:
run_cmd('.', ["gcloud", "auth", "application-default", "login"])
else:
run_cmd('.', ["gcloud", "auth", "application-default", "login", "--no-launch-browser"])
else:
raise dbt.exceptions.RuntimeException(NOT_INSTALLED_MSG)

View File

@@ -90,6 +90,9 @@ class BigQueryCredentials(Credentials):
maximum_bytes_billed: Optional[int] = None
impersonate_service_account: Optional[str] = None
# oauth
launch_browser: Optional[bool] = True
# Keyfile json creds
keyfile: Optional[str] = None
keyfile_json: Optional[Dict[str, Any]] = None
@@ -266,7 +269,7 @@ class BigQueryConnectionManager(BaseConnectionManager):
except google.auth.exceptions.DefaultCredentialsError:
logger.info("Please log into GCP to continue")
gcloud.setup_default_credentials()
gcloud.setup_default_credentials(connection.credentials)
handle = cls.get_bigquery_client(connection.credentials)