Files
Jarek Potiuk 489471afd0 Switch CI dependency management from constraints to uv.lock (#63609)
* Switch CI dependency management from constraints to uv.lock

closes: #54609

* Fix selective_checks tests for push events without upgrade

Push events no longer trigger upgrade-to-newer-dependencies unless
uv.lock or pyproject.toml files changed. Updated test expectations.

* Fix remaining selective_checks tests for push events

Update two more test cases that expected upgrade-to-newer-dependencies
to be true for PUSH events.

* Fix CI failures: include uv.lock in Docker context and handle missing constraints

- Add uv.lock to .dockerignore allowlist so uv sync --frozen works in Docker builds
- Make packaging install in install_from_docker_context_files.sh conditional on
  constraints.txt existing, since the uv.lock path skips constraints download

* Fix static checks: update uv.lock and breeze docs after rebase

* Use install script with uv.lock constraints for dev dependencies in CI

Revert the entrypoint_ci.sh change from `uv sync --all-packages` back
to using the install_development_dependencies.py script. The uv sync
approach fails when provider source directories are not fully available
in the container (e.g. with selected mounts).

Instead, generate constraints from uv.lock via `uv export` and pass
them to the existing script, which installs only the needed development
dependencies via `uv pip install`.

Also add uv.lock to VOLUMES_FOR_SELECTED_MOUNTS so it is available
inside containers using the "tests and providers" mount mode.
2026-03-15 15:20:53 +01:00

302 lines
4.6 KiB
Plaintext

# Airflow configuration
airflow.cfg
airflow_login.py
dbinit.py
initdb.py
secrets.py
# Airflow sqlite databases
airflow.db
# Airflow temporary artifacts
airflow-core/src/airflow/git_version
# ERD diagrams (generated at doc build time)
airflow-core/docs/img/airflow_erd.svg
providers/fab/docs/img/fab_erd.svg
providers/edge3/docs/img/edge3_erd.svg
airflow-core/src/airflow/ui/coverage/
# and legacy ones
airflow/git_version
airflow/ui/coverage/
logs/
airflow-webserver.pid
airflow-api-server.pid
standalone_admin_password.txt
warnings.txt
warn-summary-*.txt
# Ruff cache
.ruff-cache
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
.pytest_cache/
# C extensions
*.so
# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.coverage
.coverage.*
.cache
nosetests.xml
coverage*.xml
*,cover
.hypothesis/
.pytest_cache
# Translations
*.mo
*.pot
# Django stuff:
# *.log
local_settings.py
# Flask stuff:
instance/
.webassets-cache
/webserver_config.py
# Scrapy stuff:
.scrapy
# PyBuilder
target/
# Jupyter Notebook
.ipynb_checkpoints
# pyenv
.python-version
# nvm (Node Version Manager)
.nvmrc
# celery beat schedule file
celerybeat-schedule
# SageMath parsed files
*.sage.py
# dotenv
.env
.env.local
.autoenv*.zsh
# virtualenv
.venv*
venv*
ENV/
# Spyder project settings
.spyderproject
# Rope project settings
.ropeproject
# PyCharm
.idea/
*.iml
# Claude Code
.claude/
# Cursor
.cursor/
# vim
*.swp
# Emacs
*~
\#*\#
/.emacs.desktop
/.emacs.desktop.lock
*.elc
auto-save-list
tramp
.\#*
# OSX
.DS_Store
# SQL Server backups
*.bkp
# Spark
rat-results.txt
# Git stuff
# Kubernetes generated templated files
*.generated
*.tar.gz
scripts/ci/kubernetes/kube/.generated/airflow.yaml
scripts/ci/kubernetes/docker/requirements.txt
# Node & Webpack Stuff
*.entry.js
node_modules
npm-debug.log*
derby.log
metastore_db
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
.vscode/*
!.vscode/extensions.json
/.vite/
# Exclude the ui .vite dir
airflow-core/src/airflow/ui/.vite/
# And the legacy old files just in case
airflow/ui/.vite/
# Add the auth manager vite folder just in case
airflow-core/src/airflow/api_fastapi/auth/managers/simple/ui/.vite/
.pnpm-store
*.tsbuildinfo
# Airflow log files when airflow is run locally
airflow-*.err
airflow-*.out
airflow-*.log
airflow-*.pid
.airflow_db_initialised
# Generated doc files
_api
_build
_doctree
_inventory_cache
# mypy
.mypy_cache/
.dmypy.json
dmypy.json
# Needed for CI Dockerfile.ci build system
.build
/tmp
/files
/hive_scratch_dir/
/.bash_aliases
/.bash_history
/.kube
/.inputrc
log.txt*
# Legacy Provider-related ignores
/airflow/providers/__init__.py
# Docker context files
/docker-context-files/*
!/docker-context-files/.README.md
# Local .terraform directories
**/.terraform/*
# .tfstate files
*.tfstate
*.tfstate.*
# Terraform variables
*.tfvars
# Might be generated when you build wheels
pip-wheel-metadata
.pypirc
# Dev files
packages.txt
Dockerfile.pmc
# Generated UI licenses
3rd-party-licenses/LICENSES-ui.txt
licenses/LICENSES-ui.txt
# Packaged breeze on Windows
/breeze.exe
# Generated out dir
/out
# files generated by memray
*.py.*.html
*.py.*.bin
# used to checkout target-branch in CI
/target-airflow
# This directory used for store autogenerated images
/images
# Dask Executor tests generate this directory
/tests/executors/dask-worker-space/
# airflow-build-dockerfile and correconding ignore file
airflow-build-dockerfile*
# Ignore zip files https://github.com/apache/airflow/issues/46449
*.zip
_api/
#while running go tests inside the go-sdk, it can generate log files for dags, ignore all logs
go-sdk/**/*.log
# E2e tests
_e2e_test_report.json
# UV cache
.uv-cache/
# Allow logs folder in task-sdk-integration-tests (they logs folders are ignored above in general)
!/task-sdk-integration-tests/logs/
# Generated registry data (versions/{provider}/{version}/{metadata,parameters,connections}.json)
# Generated by dev/registry/extract_metadata.py
registry/src/_data/modules.json
registry/src/_data/providers.json
registry/src/_data/search-index.json
# Generated by dev/registry/extract_versions.py, dev/registry/extract_parameters.py,
# dev/registry/extract_connections.py
registry/src/_data/versions/
dev/registry/output/
dev/registry/logos/
dev/registry/modules.json
dev/registry/providers.json