potiuk commented on a change in pull request #7506: [AIRFLOW-6877] [WIP] check 
cross providers dependencies depends on [AIRFLOW-6663]
URL: https://github.com/apache/airflow/pull/7506#discussion_r383419743
 
 

 ##########
 File path: 
airflow/providers/google/marketing_platform/operators/campaign_manager.py
 ##########
 @@ -20,16 +20,23 @@
 """
 import tempfile
 import uuid
+import warnings
 from typing import Any, Dict, List, Optional
 
 from googleapiclient import http
 
 from airflow.exceptions import AirflowException
 from airflow.models import BaseOperator
-from airflow.providers.google.cloud.hooks.gcs import GCSHook
 from airflow.providers.google.marketing_platform.hooks.campaign_manager import 
GoogleCampaignManagerHook
 from airflow.utils.decorators import apply_defaults
 
+try:
+    from airflow.providers.google.cloud.hooks.gcs import GCSHook
+except ImportError:
+    warnings.warn("The package google-cloud must be installed to use the 
operator.",
 
 Review comment:
   > Which would mean `cncf.kubernets` becomes `cncf`, `amazon.aws` becomes 
`amazon`, ...
   
   Not necessarily - I think we can still keep some sub-packages for those 
packages that have little cross dependencies. For example there are nearly no 
cross dependencies in "providers/apache" ... 
   
   The above discussion is strictly about "google" top-level provider and 
whether to split it or combine.I think it could be a decision made individually 
for each "top-level" provider - whether to split further or keep everything at 
one level. I think that's perfectly fine to have both options available.
   

----------------------------------------------------------------
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]


With regards,
Apache Git Services

Reply via email to