-
Notifications
You must be signed in to change notification settings - Fork 16.4k
Add more selective provider tests #24666
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
5d1b3a9 to
9934de2
Compare
9934de2 to
a1f9ec5
Compare
|
Resolved @bhirsz :). Thanks for feedback. The for/else clause made my day. |
|
BTW. This one is going to help quite a bit with the elapsed time neeed for "localized" PRs to providers :) and together with #24671 it will be even more localised as any changes to provider including it's dependencies will limit tests to only this provider, they won't need the "core" tests at all. |
d459df2 to
c3bd97d
Compare
|
Anyone ? This should speed up the tests in most cases and adds a way how to run tests per provider (will be useful in the future when we split providers). |
e75b3f0 to
928049c
Compare
|
Nice I added tests :). In the meantime I changed the provider_dependencies.json structure and the tests nicely caught it :) |
After implementing apache#24610 and few follow-up fixes, it is now easy to add more optimizations to our unit test execution in CI (and to give this capability back to our contributors). This PR adds capability of running tests for selected set of providers - not for the whole "Providers" group. You can specify `--test-type "Providers[airbyte,http]" to only run tests for the two selected providers. This is the step towards separating providers to separate repositories, but it also allows to optimize the experience of the contributors developing only single provider changes (which is vast majority of contributions). This also allows to optimize build and elapsed time needd to run tests for those PRs that only affects selected providers (again - vast majority of PRs). The CI selection of which provider tests is done now in Selective Checkcs - they are a bit smarter in just selecting the providers that has been changed, they also check if there are any other providers that depend on it (we keep automatically updated by pre-commit dependencies.json file and this file determines which files should be run.
928049c to
f04bc8b
Compare
After implementing #24610 and few follow-up fixes, it is now easy to add more optimizations to our unit test execution in CI (and to give this capability back to our contributors). This PR adds capability of running tests for selected set of providers - not for the whole "Providers" group. You can specify `--test-type "Providers[airbyte,http]" to only run tests for the two selected providers. This is the step towards separating providers to separate repositories, but it also allows to optimize the experience of the contributors developing only single provider changes (which is vast majority of contributions). This also allows to optimize build and elapsed time needd to run tests for those PRs that only affects selected providers (again - vast majority of PRs). The CI selection of which provider tests is done now in Selective Checkcs - they are a bit smarter in just selecting the providers that has been changed, they also check if there are any other providers that depend on it (we keep automatically updated by pre-commit dependencies.json file and this file determines which files should be run. (cherry picked from commit 3dedbd3)
After implementing #24610 and few follow-up fixes, it is now easy
to add more optimizations to our unit test execution in CI (and
to give this capability back to our contributors).
This PR adds capability of running tests for selected set of
providers - not for the whole "Providers" group. You can
specify `--test-type "Providers[airbyte,http]" to only run tests
for the two selected providers.
This is the step towards separating providers to separate
repositories, but it also allows to optimize the experience of
the contributors developing only single provider changes (which
is vast majority of contributions).
This also allows to optimize build and elapsed time needd to run
tests for those PRs that only affects selected providers (again -
vast majority of PRs).
The CI selection of which provider tests is done now in Selective
Checkcs - they are a bit smarter in just selecting the providers
that has been changed, they also check if there are any other
providers that depend on it (we keep automatically updated by
pre-commit dependencies.json file and this file determines
which files should be run.
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragement file, named
{pr_number}.significant.rst, in newsfragments.