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_r383425146
##########
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:
> So actually.. now I want to change my "vote" to +1 for 2. And make sure
that we define it like this "The first level is the provider that can be
installed via a provider package which can contain sub-domains".
My thought was that it would be much better to have
"operators"/"hooks"/"sensors" always staring as the "first" level of the
provider. It think it makes much more sense to have all "operators" of the
provider in one directory rather than split. But I think we are talking about
the same, just looking at it from a different direction.
For me it should always be:
providers."PROVIDER".operators , where "PROVIDER" might have "." as well.
----------------------------------------------------------------
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