kaxil commented on a change in pull request #14631:
URL: https://github.com/apache/airflow/pull/14631#discussion_r590561537
##########
File path: airflow/providers/snowflake/hooks/snowflake.py
##########
@@ -58,10 +135,10 @@ def _get_conn_params(self) -> Dict[str, Optional[str]]:
conn = self.get_connection(
self.snowflake_conn_id # type: ignore[attr-defined] # pylint:
disable=no-member
)
- account = conn.extra_dejson.get('account', '')
- warehouse = conn.extra_dejson.get('warehouse', '')
- database = conn.extra_dejson.get('database', '')
- region = conn.extra_dejson.get("region", '')
+ account = conn.extra_dejson.get('extra__snowflake__account', '')
+ warehouse = conn.extra_dejson.get('extra__snowflake__warehouse', '')
+ database = conn.extra_dejson.get('extra__snowflake__database', '')
+ region = conn.extra_dejson.get('extra__snowflake__region', '')
Review comment:
If there is a way that would be good but currently it is used in a some
providers:
```
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:47: - use in
cluster configuration by using ``extra__kubernetes__in_cluster`` in connection
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:48: - use custom
config by providing path to the file using
``extra__kubernetes__kube_config_path``
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:50:
``extra__kubernetes__kube_config`` in connection
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:77:
"extra__kubernetes__in_cluster": BooleanField(lazy_gettext('In cluster
configuration')),
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:78:
"extra__kubernetes__kube_config_path": StringField(
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:81:
"extra__kubernetes__kube_config": StringField(
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:84:
"extra__kubernetes__namespace": StringField(
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:108: in_cluster
= extras.get("extra__kubernetes__in_cluster")
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:109:
kubeconfig_path = extras.get("extra__kubernetes__kube_config_path")
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:110: kubeconfig
= extras.get("extra__kubernetes__kube_config")
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:115:
"Invalid connection configuration. Options extra__kubernetes__kube_config_path,
"
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:116:
"extra__kubernetes__kube_config, extra__kubernetes__in_cluster are mutually
exclusive. "
airflow/providers/cncf/kubernetes/hooks/kubernetes.py:213: namespace
= extras.get("extra__kubernetes__namespace", "default")
airflow/providers/google/ads/hooks/ads.py:134: secret =
secret_conn.extra_dejson["extra__google_cloud_platform__keyfile_dict"]
airflow/providers/google/cloud/hooks/cloud_sql.py:402:GCP_CREDENTIALS_KEY_PATH
= "extra__google_cloud_platform__key_path"
airflow/providers/google/cloud/hooks/cloud_sql.py:403:GCP_CREDENTIALS_KEYFILE_DICT
= "extra__google_cloud_platform__keyfile_dict"
airflow/providers/google/cloud/hooks/cloud_sql.py:531: project_id
= connection.extra_dejson.get('extra__google_cloud_platform__project')
airflow/providers/google/cloud/hooks/dataprep.py:50: self._token =
extra_dejson.get("extra__dataprep__token")
airflow/providers/google/cloud/hooks/dataprep.py:51: self._base_url =
extra_dejson.get("extra__dataprep__base_url", "https://api.clouddataprep.com")
airflow/providers/google/cloud/operators/cloud_sql.py:1102:
'extra__google_cloud_platform__project'
airflow/providers/google/cloud/utils/credentials_provider.py:63: extras =
"extra__google_cloud_platform"
airflow/providers/google/common/hooks/base_google.py:173:
"extra__google_cloud_platform__project": StringField(
airflow/providers/google/common/hooks/base_google.py:176:
"extra__google_cloud_platform__key_path": StringField(
airflow/providers/google/common/hooks/base_google.py:179:
"extra__google_cloud_platform__keyfile_dict": PasswordField(
airflow/providers/google/common/hooks/base_google.py:182:
"extra__google_cloud_platform__scope": StringField(
airflow/providers/google/common/hooks/base_google.py:185:
"extra__google_cloud_platform__num_retries": IntegerField(
airflow/providers/google/common/hooks/base_google.py:293: long_f =
f'extra__google_cloud_platform__{f}'
airflow/providers/grpc/hooks/grpc.py:63:
"extra__grpc__auth_type": StringField(
airflow/providers/grpc/hooks/grpc.py:66:
"extra__grpc__credential_pem_file": StringField(
airflow/providers/grpc/hooks/grpc.py:69: "extra__grpc__scopes":
StringField(
airflow/providers/grpc/hooks/grpc.py:163: full_field_name =
f'extra__grpc__{field_name}'
airflow/providers/jdbc/hooks/jdbc.py:50: "extra__jdbc__drv_path":
StringField(lazy_gettext('Driver Path'), widget=BS3TextFieldWidget()),
airflow/providers/jdbc/hooks/jdbc.py:51:
"extra__jdbc__drv_clsname": StringField(
airflow/providers/jdbc/hooks/jdbc.py:69: jdbc_driver_loc:
Optional[str] = conn.extra_dejson.get('extra__jdbc__drv_path')
airflow/providers/jdbc/hooks/jdbc.py:70: jdbc_driver_name:
Optional[str] = conn.extra_dejson.get('extra__jdbc__drv_clsname')
airflow/providers/yandex/hooks/yandex.py:49:
"extra__yandexcloud__service_account_json": PasswordField(
airflow/providers/yandex/hooks/yandex.py:56:
"extra__yandexcloud__service_account_json_path": StringField(
airflow/providers/yandex/hooks/yandex.py:63:
"extra__yandexcloud__oauth": PasswordField(
airflow/providers/yandex/hooks/yandex.py:69:
"extra__yandexcloud__folder_id": StringField(
airflow/providers/yandex/hooks/yandex.py:75:
"extra__yandexcloud__public_ssh_key": StringField(
airflow/providers/yandex/hooks/yandex.py:135: long_f =
f'extra__yandexcloud__{field_name}'
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]