2025-07-08 23:25:08 -07:00

42 lines
1.8 KiB
INI

# tox (https://tox.readthedocs.io/) is a tool for running tests
# in multiple virtualenvs. This configuration file will run the
# test suite on all supported python versions. To use it, "pip install tox"
# and then run "tox" from this directory.
[tox]
envlist = py39-airflow27, py310-airflow27, py310-airflow28, py311-airflow29, py311-airflow210
[testenv]
use_develop = true
extras =
dev
integration-tests
plugin-v1
plugin-v2
deps =
# This should be kept in sync with the Github Actions matrix.
-e ../../metadata-ingestion/
# Airflow version
airflow27: apache-airflow~=2.7.0
airflow28: apache-airflow~=2.8.0
airflow29: apache-airflow~=2.9.0
airflow210: apache-airflow~=2.10.0
# Respect the Airflow constraints files.
py39-airflow27: -c https://raw.githubusercontent.com/apache/airflow/constraints-2.7.3/constraints-3.9.txt
py310-airflow27: -c https://raw.githubusercontent.com/apache/airflow/constraints-2.7.3/constraints-3.10.txt
py310-airflow28: -c https://raw.githubusercontent.com/apache/airflow/constraints-2.8.1/constraints-3.10.txt
py311-airflow29: -c https://raw.githubusercontent.com/apache/airflow/constraints-2.9.3/constraints-3.11.txt
py311-airflow210: -c https://raw.githubusercontent.com/apache/airflow/constraints-2.10.3/constraints-3.11.txt
# Before pinning to the constraint files, we previously left the dependencies
# more open. There were a number of packages for which this caused issues.
# We've left those changes in here, commented out, for reference.
; airflow27: pydantic==2.4.2
; # Apparently Flask-Session 0.6.0 was released by accident.
; # See https://github.com/pallets-eco/flask-session/issues/209
; airflow24,airflow26,airflow27,airflow28: Flask-Session<0.6.0
commands =
pytest --cov-append {posargs}