-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
[CT-449] Make it easy to run integration tests in an adapter plugin against a dbt-core PR #4988
Comments
Probably a cross-repo GHA workflow, which dynamically updates Halfway step here: Trigger on merge to @colin-rogers-dbt's idea: Always run against Honestly would just be very helpful to have this as a manually triggered GHA, too! Rather than the manual PR process today... |
The adapters are already going to need a script to automate updating |
Possible hacky solution to running integ tests off a core branch: dbt-labs/dbt-redshift#329 |
If we propagate this change to the other adapters we can run integration tests against a core branch. The remaining problem is how to have core invoke the adapter test workflows:
I'd recommend we go with option 1 and just duplicate configuration until we can use a shared secrets manager. |
I dream of the ability to:
test redshift
,test snowflake
,test bigquery
,test spark
This makes it easy to ensure that a PR changing adapter-facing functionality, such as #4986, does not include breaking changes for our adapter plugins. The alternative is to find out a day later, when the nightly integration tests have failed for that plugin.
challenge
This would require the GHA for adapter integration tests to take an optional configuration, for the branch of
dbt-core
that they install indev_requirements.txt
. The configuration of that branch is already a problem for us, which requires manual intervention whenever we cut a minor version.latest
branch: dbt-labs/dbt-snowflake#128, dbt-labs/dbt-redshift#89Would it be possible to set this up so that:
dbt-core
installed bydev_requirements.txt
is alwaysmain
(i.e. local development). If you're making local changes todbt-core
as well, this shouldn't even take effect, since you already have your working local version ofdbt-core
installed in the same virtualenvdbt-core
, as above). If not set, it should use the "target" PR branch (main
,1.0.latest
,1.1.latest
, ...) — just requires us to be consistent in our branch naming acrossdbt-core
+ pluginsThe text was updated successfully, but these errors were encountered: