-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
[airbyte-ci] test connectors inside their built container #30474
[airbyte-ci] test connectors inside their built container #30474
Conversation
Current dependencies on/for this PR:
This comment was auto-generated by Graphite. |
41ce5f5
to
b387477
Compare
f9bea4b
to
b608d76
Compare
b387477
to
0113f6a
Compare
b608d76
to
10448cc
Compare
157ca30
to
894e0b9
Compare
10448cc
to
72b1de6
Compare
72b1de6
to
3fffee5
Compare
db634ba
to
8e3804a
Compare
3fffee5
to
0a60854
Compare
8e3804a
to
82971ce
Compare
0a60854
to
94f6f82
Compare
94f6f82
to
0a1d09c
Compare
7086a9d
to
7cc99f4
Compare
eaf9fbc
to
d6d0a87
Compare
destination-duckdb test report (commit
|
Step | Result |
---|---|
Build destination-duckdb docker image for platform linux/x86_64 | ✅ |
Unit tests | ✅ |
Integration tests | ✅ |
Acceptance tests | ✅ |
Code format checks | ❌ |
Validate airbyte-integrations/connectors/destination-duckdb/metadata.yaml | ✅ |
Connector version semver check | ✅ |
QA checks | ✅ |
☁️ View runs for commit in Dagger Cloud
Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command
airbyte-ci connectors --name=destination-duckdb test
source-faker test report (commit
|
Step | Result |
---|---|
Build source-faker docker image for platform linux/x86_64 | ✅ |
Unit tests | ✅ |
Acceptance tests | ✅ |
Code format checks | ✅ |
Validate airbyte-integrations/connectors/source-faker/metadata.yaml | ✅ |
Connector version semver check | ✅ |
QA checks | ✅ |
☁️ View runs for commit in Dagger Cloud
Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command
airbyte-ci connectors --name=source-faker test
The test results above show that we did not break the test run:
|
db45b8e
to
28a886b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not much to say, but I have 👀 this PR
@@ -404,6 +404,7 @@ This command runs the Python tests for a airbyte-ci poetry package. | |||
## Changelog | |||
| Version | PR | Description | | |||
|---------| --------------------------------------------------------- |-----------------------------------------------------------------------------------------------------------| | |||
| 1.6.0 | [#30474](https://github.com/airbytehq/airbyte/pull/30474) | Test connector insider their containers. | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 1.6.0 | [#30474](https://github.com/airbytehq/airbyte/pull/30474) | Test connector insider their containers. | | |
| 1.6.0 | [#30474](https://github.com/airbytehq/airbyte/pull/30474) | Test connectors inside their containers. | |
airbyte-ci/connectors/pipelines/pipelines/actions/environments.py
Outdated
Show resolved
Hide resolved
96068a5
to
18693fc
Compare
b14764c
to
02361d2
Compare
02361d2
to
310ec11
Compare
What
Our original implementation of python connector testing was the following:
The problem with this approach is that we're running connector tests inside their real environment: their docker image.
So far our test environment had to keep up with the system dependencies of the connectors.
These test environment could also install python dependencies that are not declare in the original connector python package.
How
The state of this "prepared" container is not kept for other steps like CAT or publish. It's just used in the python Unit / integration test step (subclasses of the PytestStep).