Uh oh!
There was an error while loading. Please reload this page.
Run check-provider-yaml-valid when prek scripts or providers config change - #70230
Conversation
…hange When only `scripts/ci/prek/check_provider_yaml_files.py` or `providers/.pre-commit-config.yaml` changed, selective checks incorrectly skipped `check-provider-yaml-valid` because those paths matched neither `ALL_PROVIDERS_DISTRIBUTION_CONFIG_FILES` nor `ALL_PROVIDERS_PYTHON_FILES`. This meant a bug introduced in the check script itself (like the path resolution bug in apache#70007) would go undetected in CI. Fix by: - Including `providers/.pre-commit-config.yaml` in `ALL_PROVIDERS_DISTRIBUTION_CONFIG_FILES` - Adding `PREK_FILES` as a third condition that keeps `check-provider-yaml-valid` from being skipped Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
287e67c to
81fbfcbCompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
376320a to
101c4b7CompareUh oh!
There was an error while loading. Please reload this page.
Backport failed to create: v3-3-test. View the failure log Run detailsNote: As of Merging PRs targeted for Airflow 3.X In matter of doubt please ask in #release-management Slack channel.
You can attempt to backport this manually by running: cherry_picker ff0ac28 v3-3-testThis should apply the commit to the v3-3-test branch and leave the commit in conflict state marking After you have resolved the conflicts, you can continue the backport process by running: cherry_picker --continueIf you don't have cherry-picker installed, see the installation guide. |
Currently, selective checks skip
check-provider-yaml-validunless aprovider.yaml,pyproject.toml, or provider Python file changed. This means that when onlyscripts/ci/prek/check_provider_yaml_files.pyorproviders/.pre-commit-config.yamlis modified, the check is silently skipped — so a bug introduced in the check script itself goes undetected in CI.This was the root cause of the
FileNotFoundErrorforproviders/apache/provider.yamlreported after #70007 merged: the_resolve_provider_yaml_files()function mapped any provider Python file to<pkg>/provider.yamlwithout guarding against non-provider-package paths likeapache/, butcheck-provider-yaml-validnever ran in that PR's CI to catch it.Changes
providers/.pre-commit-config.yamltoALL_PROVIDERS_DISTRIBUTION_CONFIG_FILESso changes to the providersprek configuration are treated like
provider.yamlchanges.PREK_FILESas an additional condition: when any prek scriptchanges,
check-provider-yaml-validis no longer skipped.dev/breeze/doc/ci/04_selective_checks.mdto document the newrule.
Related
Was generative AI tooling used to co-author this PR?
Claude Sonnet 4.6 (GitHub Copilot CLI)
{pr_number}.significant.rst, in airflow-core/newsfragments. You can add this file in a follow-up commit after the PR is created so you know the PR number.