Composer Airflow - 没有名为 "exchangelib" 的模块
Composer Airflow - No module named "exchangelib"
我在将 DAG 部署到 Composer Airflow 环境时遇到了一个非常奇怪的错误。
我使用以下导入创建了自定义运算符:
from exchangelib import DELEGATE, Account, Credentials, Message, FileAttachment, HTMLBody
自定义运算符在名为 airflow_mail_operator.py 的文件中定义,DAG 在名为 test_main.py.
的文件中定义
我收到的错误来自 airflow 网络服务器并指出 ModuleNotFoundError: No module named 'exchangelib' 即使 Composer 环境已经提供了这个库。
如果我在 DAG 文件中添加导入语句,错误将停止显示,这对我来说真的很奇怪!
遵循完整的堆栈跟踪:
Traceback (most recent call last): File "/usr/local/lib/airflow/airflow/models/dagbag.py", line 243, in process_file m = imp.load_source(mod_name, filepath) File "/opt/python3.6/lib/python3.6/imp.py", line 172, in load_source module = _load(spec) File "<frozen importlib._bootstrap>", line 684, in _load File "<frozen importlib._bootstrap>", line 665, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 678, in exec_module File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed File "/home/airflow/gcs/dags/dg_dags/test_main.py", line 5, in <module> from dg_dags.airflow_mail_operator import CustomEmailOperator File "/home/airflow/gcs/dags/dg_dags/airflow_mail_operator.py", line 5, in <module> from exchangelib import DELEGATE, Account, Credentials, Message, FileAttachment, HTMLBody ModuleNotFoundError: No module named 'exchangelib'
有人遇到过(并可能解决过)类似的错误吗?
我的环境是:
composer-1.10.0-airflow-1.10.6
python3
提前致谢!
我的解决方案是通过更新底层 k8s 集群来强制更新 Composer 集群!
我在将 DAG 部署到 Composer Airflow 环境时遇到了一个非常奇怪的错误。
我使用以下导入创建了自定义运算符:
from exchangelib import DELEGATE, Account, Credentials, Message, FileAttachment, HTMLBody
自定义运算符在名为 airflow_mail_operator.py 的文件中定义,DAG 在名为 test_main.py.
的文件中定义我收到的错误来自 airflow 网络服务器并指出 ModuleNotFoundError: No module named 'exchangelib' 即使 Composer 环境已经提供了这个库。
如果我在 DAG 文件中添加导入语句,错误将停止显示,这对我来说真的很奇怪!
遵循完整的堆栈跟踪:
Traceback (most recent call last): File "/usr/local/lib/airflow/airflow/models/dagbag.py", line 243, in process_file m = imp.load_source(mod_name, filepath) File "/opt/python3.6/lib/python3.6/imp.py", line 172, in load_source module = _load(spec) File "<frozen importlib._bootstrap>", line 684, in _load File "<frozen importlib._bootstrap>", line 665, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 678, in exec_module File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed File "/home/airflow/gcs/dags/dg_dags/test_main.py", line 5, in <module> from dg_dags.airflow_mail_operator import CustomEmailOperator File "/home/airflow/gcs/dags/dg_dags/airflow_mail_operator.py", line 5, in <module> from exchangelib import DELEGATE, Account, Credentials, Message, FileAttachment, HTMLBody ModuleNotFoundError: No module named 'exchangelib'
有人遇到过(并可能解决过)类似的错误吗?
我的环境是:
composer-1.10.0-airflow-1.10.6
python3
提前致谢!
我的解决方案是通过更新底层 k8s 集群来强制更新 Composer 集群!