web-dev-qa-db-fra.com

Échec de l'initialisation d'Airflow dans Amazon Linux

J'essaie d'installer Airflow dans EC2 (Amazon Linux) et "airflow initdb" échoue avec l'erreur suivante:

$ AIRFLOW_HOME=/var/lib/airflow airflow initdb
[2019-09-07 20:51:32,416] {__init__.py:51} INFO - Using executor SequentialExecutor
Traceback (most recent call last):
  File "/bin/airflow", line 22, in <module>
    from airflow.bin.cli import CLIFactory
  File "/usr/lib/python2.7/site-packages/airflow/bin/cli.py", line 68, in <module>
    from airflow.www_rbac.app import cached_app as cached_app_rbac
  File "/usr/lib/python2.7/site-packages/airflow/www_rbac/app.py", line 26, in <module>
    from flask_appbuilder import AppBuilder, SQLA
  File "/usr/lib/python2.7/site-packages/flask_appbuilder/__init__.py", line 5, in <module>
    from .base import AppBuilder
  File "/usr/lib/python2.7/site-packages/flask_appbuilder/base.py", line 5, in <module>
    from .api.manager import OpenApiManager
  File "/usr/lib/python2.7/site-packages/flask_appbuilder/api/__init__.py", line 11, in <module>
    from Marshmallow_sqlalchemy.fields import Related, RelatedList
  File "/usr/lib/python2.7/site-packages/Marshmallow_sqlalchemy/__init__.py", line 1, in <module>
    from .schema import TableSchemaOpts, ModelSchemaOpts, TableSchema, ModelSchema
  File "/usr/lib/python2.7/site-packages/Marshmallow_sqlalchemy/schema.py", line 101
    class TableSchema(ma.Schema, metaclass=TableSchemaMeta):
                                      ^
SyntaxError: invalid syntax

Comme il s'agit d'une erreur de syntaxe, je soupçonne qu'il existe un conflit de version entre Marshmallow_sqlalchemy et SQLAlchemy. Voici leurs versions:

Apache-airflow==1.10.5
Flask==1.1.1
Flask-SQLAlchemy==2.4.0
Marshmallow==2.20.3
Marshmallow-enum==1.5.1
Marshmallow-sqlalchemy==0.19.0
SQLAlchemy==1.3.8

Une idée?

8
kee

il semble que la version de Marshmallow-sqlalchemy ait été mise à niveau, c'est pourquoi vous obtenez cette erreur. Désinstaller la version actuelle-

pip désinstaller Marshmallow-sqlalchemy

et essayez d'installer la version ci-dessous, et alors vous devriez être prêt à partir.

pip installe Marshmallow-sqlalchemy == 0.17.1

J'étais également confronté au problème similaire, mais maintenant il est résolu de la même manière. J'espère que cela aide!

25
Devasheesh Vaid