Нет модуля с именем provider.google.cloud.operators.pubsub: Google Cloud Composer - PullRequest
1 голос
/ 29 января 2020

Я пытаюсь настроить группу обеспечения доступности баз данных, которая отвечала бы на сообщения Cloud Pub / Sub. Мне нужно добавить следующие операторы импорта в мой код DAG:

from airflow.providers.google.cloud.operators.pubsub import (
PubSubCreateSubscriptionOperator, PubSubCreateTopicOperator, PubSubDeleteSubscriptionOperator,
PubSubDeleteTopicOperator, PubSubPublishMessageOperator,
)
from airflow.providers.google.cloud.sensors.pubsub import PubSubPullSensor

Импорт DAG не выполняется, поскольку он не может разрешить зависимости. Может кто-нибудь сообщить мне необходимые зависимости и как привести их в среде Cloud Composer?

1 Ответ

4 голосов
/ 30 января 2020

На данный момент Google Cloud Composer выпущен только до Airflow V1.10.3. Структура папок для V1.10.3 или V1.10.2 отличается от структуры в текущей основной ветке. И имена операторов также могут отличаться.

Таким образом, импорт операторов и датчика Google Cloud Pub / Sub должен выглядеть следующим образом:

from airflow.contrib.operators.pubsub_operator import (
    PubSubPublishOperator, PubSubSubscriptionCreateOperator,
    PubSubSubscriptionDeleteOperator, PubSubTopicCreateOperator,
    PubSubTopicDeleteOperator)
from airflow.contrib.sensors.pubsub_sensor import PubSubPullSensor

Ссылка:

V1.10.2 Pub / Sub

https://github.com/apache/airflow/blob/1.10.2/airflow/contrib/operators/pubsub_operator.py https://github.com/apache/airflow/blob/1.10.2/airflow/contrib/sensors/pubsub_sensor.py

V1.10.3 Pub / Sub

https://github.com/apache/airflow/blob/1.10.3/airflow/contrib/operators/pubsub_operator.py https://github.com/apache/airflow/blob/1.10.3/airflow/contrib/sensors/pubsub_sensor.py

...