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_r383026128
 
 

 ##########
 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:
   BTW, If you look at 
https://travis-ci.org/apache/airflow/jobs/653861799?utm_medium=notification&utm_source=github_status
 - you will se the kind of static check errors that are printed when one 
provider package imports directly another provider without try/except clause. 
There are just 63 cases left and I am happy to fix them all once we agree that 
this is good idea and right approach of handling cross-provider-package 
dependencies.

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