Skip to content

Missing crucial packages in the slim-3.1.0-python3.13 image #56123

@opeida

Description

@opeida

Apache Airflow version

3.1.0

If "Other Airflow 2 version" selected, which one?

No response

What happened?

The database migration job failed during migration from apache/airflow:slim-3.0.6-python3.12 to apache/airflow:slim-3.1.0-python3.13. The logs contained the following error (the full log listing is provided below):
ModuleNotFoundError: No module named 'connexion'

After manual installation, the error pointed to the another package.

What you think should happen instead?

The migration job should be completed successfully.

How to reproduce

Run a metadatabase migration job on slim-3.1.0-python3.13.

Operating System

Debian GNU/Linux 12 (bookworm)

Versions of Apache Airflow Providers

apache-airflow-providers-celery==3.12.3
apache-airflow-providers-common-compat==1.7.4
apache-airflow-providers-common-io==1.6.3
apache-airflow-providers-common-sql==1.28.1
apache-airflow-providers-fab==2.4.3
apache-airflow-providers-google==18.0.0
apache-airflow-providers-http==5.3.4
apache-airflow-providers-postgres==6.3.0
apache-airflow-providers-redis==4.3.1
apache-airflow-providers-smtp==2.2.1
apache-airflow-providers-standard==1.8.0

Deployment

Official Apache Airflow Helm Chart

Deployment details

Deployed on GKE with extended image based on apache/airflow:slim-3.0.6-python3.12 and Helm chart 1.18.0.

Anything else?

Log listing

➜  airflow git:(v3) ✗ kubectl logs airflow-run-airflow-migrations-65fr6

2025-09-25 21:26:34 [info     ] Getting connection using `google.auth.default()` since no explicit credentials are provided.
2025-09-25T21:26:36.144111Z [warning  ] No module named 'connexion'    [airflow.configuration] loc=configuration.py:1266
2025-09-25T21:26:36.144975Z [warning  ] cannot load CLI commands from auth manager: The object could not be loaded. Please check "auth_manager" key in "core" section. Current value: "airflow.providers.fab.auth_manager.fab_auth_manager.FabAuthManager". [airflow.cli.cli_parser] loc=cli_parser.py:81
2025-09-25T21:26:36.145143Z [warning  ] Auth manager is not configured and api-server will not be able to start. [airflow.cli.cli_parser] loc=cli_parser.py:82
DB: postgresql://airflow_user:***@airflow-pgbouncer.airflow.svc.cluster.local:6543/airflow-metadata
Performing upgrade to the metadata database postgresql://airflow_user:***@airflow-pgbouncer.airflow.svc.cluster.local:6543/airflow-metadata
2025-09-25T21:26:36.539213Z [info     ] Context impl PostgresqlImpl.   [alembic.runtime.migration] loc=migration.py:211
2025-09-25T21:26:36.539579Z [info     ] Will assume transactional DDL. [alembic.runtime.migration] loc=migration.py:214
2025-09-25T21:26:36.580865Z [info     ] Migrating the Airflow database [airflow.utils.db] loc=db.py:1129
2025-09-25T21:26:36.621483Z [info     ] Context impl PostgresqlImpl.   [alembic.runtime.migration] loc=migration.py:211
2025-09-25T21:26:36.621766Z [info     ] Will assume transactional DDL. [alembic.runtime.migration] loc=migration.py:214
2025-09-25T21:26:36.788401Z [info     ] Context impl PostgresqlImpl.   [alembic.runtime.migration] loc=migration.py:211
2025-09-25T21:26:36.788724Z [info     ] Will assume transactional DDL. [alembic.runtime.migration] loc=migration.py:214
2025-09-25T21:26:36.847099Z [warning  ] No module named 'connexion'    [airflow.configuration] loc=configuration.py:1266
Traceback (most recent call last):
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/configuration.py", line 1264, in getimport
    return import_string(full_qualified_path)
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/utils/module_loading.py", line 41, in import_string
    module = import_module(module_path)
  File "/usr/python/lib/python3.13/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 1026, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/fab/auth_manager/fab_auth_manager.py", line 27, in <module>
    from connexion import FlaskApi
ModuleNotFoundError: No module named 'connexion'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/airflow/.local/bin/airflow", line 7, in <module>
    sys.exit(main())
             ~~~~^^
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/__main__.py", line 55, in main
    args.func(args)
    ~~~~~~~~~^^^^^^
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/cli/cli_config.py", line 49, in command
    return func(*args, **kwargs)
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/utils/cli.py", line 114, in wrapper
    return f(*args, **kwargs)
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/utils/providers_configuration_loader.py", line 54, in wrapped_function
    return func(*args, **kwargs)
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/cli/commands/db_command.py", line 207, in migratedb
    run_db_migrate_command(args, db.upgradedb, _REVISION_HEADS_MAP)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/cli/commands/db_command.py", line 135, in run_db_migrate_command
    command(
    ~~~~~~~^
        to_revision=to_revision,
        ^^^^^^^^^^^^^^^^^^^^^^^^
        from_revision=from_revision,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        show_sql_only=args.show_sql_only,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/utils/session.py", line 100, in wrapper
    return func(*args, session=session, **kwargs)
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/utils/db.py", line 1142, in upgradedb
    external_db_manager = RunDBManager()
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/utils/db_manager.py", line 157, in __init__
    auth_manager_db_manager = create_auth_manager().get_db_manager()
                              ~~~~~~~~~~~~~~~~~~~^^
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/api_fastapi/app.py", line 141, in create_auth_manager
    auth_manager_cls = get_auth_manager_cls()
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/api_fastapi/app.py", line 128, in get_auth_manager_cls
    auth_manager_cls = conf.getimport(section="core", key="auth_manager")
  File "/home/airflow/.local/lib/python3.13/site-packages/airflow/configuration.py", line 1267, in getimport
    raise AirflowConfigException(
    ...<2 lines>...
    )
airflow.exceptions.AirflowConfigException: The object could not be loaded. Please check "auth_manager" key in "core" section. Current value: "airflow.providers.fab.auth_manager.fab_auth_manager.FabAuthManager".

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:corearea:production-imageProduction image improvements and fixeskind:bugThis is a clearly a bugneeds-triagelabel for new issues that we didn't triage yet

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions