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