Je ne suis pas en mesure d'importer un package de fournisseurs d'air pour Google. Commande que j'ai utilisé était
pip3 install Apache-airflow-backport-providers-google
Et ça me donne l'erreur
ERROR: Could not find a version that satisfies the requirement Apache-airflow-backport-providers-google (from versions: none)
ERROR: No matching distribution found for Apache-airflow-backport-providers-google
En raison de laquelle mon dag est bloqué et que le message d'erreur est
Broken DAGS: No module named 'airflow.providers'
J'ai vérifié dans la bibliothèque de flux d'air: env/lib/python3.5/site-packages/airflow
Impossible de trouver le dossier des fournisseurs.
EDIT : Le problème ci-dessus est résolu lorsque j'ai mis à niveau le python version à 3,6+ comme suggéré dans la réponse. Mais maintenant, face à une nouvelle émission d'erreur de valeur. Je suis en utilisant DataprocInstantiateWorkflowTemplateOperator
après l'importation airflow.providers.google.cloud.operators.dataproc
.
Veuillez trouver la trace d'erreur ci-dessous.
Traceback (most recent call last):
File "workflow_dag.py", line 6, in <module>
from airflow.providers.google.cloud.operators.dataproc import DataprocInstantiateWorkflowTemplateOperator
File "/home/kshitij/env/lib/python3.7/site-packages/airflow/providers/google/cloud/operators/dataproc.py", line 36, in <module>
from google.cloud.dataproc_v1beta2.types import ( # pylint: disable=no-name-in-module
File "/home/kshitij/env/lib/python3.7/site-packages/google/cloud/dataproc_v1beta2/__init__.py", line 18, in <module>
from .services.autoscaling_policy_service import AutoscalingPolicyServiceClient
File "/home/kshitij/env/lib/python3.7/site-packages/google/cloud/dataproc_v1beta2/services/autoscaling_policy_service/__init__.py", line 18, in <module>
from .client import AutoscalingPolicyServiceClient
File "/home/kshitij/env/lib/python3.7/site-packages/google/cloud/dataproc_v1beta2/services/autoscaling_policy_service/client.py", line 33, in <module>
from google.cloud.dataproc_v1beta2.services.autoscaling_policy_service import pagers
File "/home/kshitij/env/lib/python3.7/site-packages/google/cloud/dataproc_v1beta2/services/autoscaling_policy_service/pagers.py", line 20, in <module>
from google.cloud.dataproc_v1beta2.types import autoscaling_policies
File "/home/kshitij/env/lib/python3.7/site-packages/google/cloud/dataproc_v1beta2/types/__init__.py", line 18, in <module>
from .autoscaling_policies import (
File "/home/kshitij/env/lib/python3.7/site-packages/google/cloud/dataproc_v1beta2/types/autoscaling_policies.py", line 41, in <module>
class AutoscalingPolicy(proto.Message):
File "/home/kshitij/env/lib/python3.7/site-packages/proto/message.py", line 139, in __new__
field.descriptor.oneof_index = oneofs[field.oneof]
File "/home/kshitij/env/lib/python3.7/site-packages/proto/fields.py", line 113, in descriptor
proto3_optional=self.optional,
ValueError: Protocol message FieldDescriptorProto has no "proto3_optional" field.
Votre Python version est Python3.5 et avant de cela (voir la section Documentation et l'image ci-dessous), vous devez mettre à niveau python = TO 3.6+ si vous souhaitez utiliser le package Google Apache-Airflow-Backport-Fournisseurs.
Python 3.6 est pris en charge par Cloud Composer et vous pouvez essayer soit Mettez à niveau votre environnement ou en créer un nouveau.