-
Notifications
You must be signed in to change notification settings - Fork 18
feat(cdk): port QA checks from airbyte-ci to airbyte-python-cdk #526
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
base: main
Are you sure you want to change the base?
Conversation
Co-Authored-By: Aaron <AJ> Steers <aj@airbyte.io>
Original prompt from Aaron:
|
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
Co-Authored-By: Aaron <AJ> Steers <aj@airbyte.io>
Co-Authored-By: Aaron <AJ> Steers <aj@airbyte.io>
Co-Authored-By: Aaron <AJ> Steers <aj@airbyte.io>
Co-Authored-By: Aaron <AJ> Steers <aj@airbyte.io>
Co-Authored-By: Aaron <AJ> Steers <aj@airbyte.io>
Co-Authored-By: Aaron <AJ> Steers <aj@airbyte.io>
…ecture Co-Authored-By: Aaron <AJ> Steers <aj@airbyte.io>
config.addinivalue_line("markers", "qa_check: mark a test as a QA check") | ||
config.addinivalue_line("markers", "check_category(category): mark a test with a check category") | ||
config.addinivalue_line("markers", "connector_language(languages): mark a test as applicable to specific connector languages") | ||
config.addinivalue_line("markers", "connector_type(types): mark a test as applicable to specific connector types") | ||
config.addinivalue_line("markers", "connector_support_level(levels): mark a test as applicable to specific connector support levels") | ||
config.addinivalue_line("markers", "connector_cloud_usage(usages): mark a test as applicable to specific connector cloud usages") | ||
config.addinivalue_line("markers", "connector_ab_internal_sl(sl): mark a test as applicable to connectors with a specific ab_internal_sl") | ||
config.addinivalue_line("markers", "requires_metadata: mark a test as requiring metadata") | ||
config.addinivalue_line("markers", "runs_on_released_connectors: mark a test as running on released connectors") |
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.
do we need all these?
The markers are used to filter tests based on connector properties. We can simplify this by keeping only the essential ones: Essential markers:
Optional markers that could be removed:
I can reduce these to just the essential markers if preferred. |
Description
This PR ports the quality assurance (QA) checks from airbyte-ci to the airbyte-python-cdk, creating a new module at
airbyte_cdk.qa
with a CLI commandairbyte-cdk connector pre-release-check
.Changes
airbyte_cdk.qa
with the following components:models.py
forCheck
,CheckResult
, andReport
classesConnector
class inconnector.py
with minimal dependenciessemver
andpydash
to support the QA checksConnector
andCheckResult
classesHow to test
Run the CLI command:
Requested by
Aaron ("AJ") Steers (aj@airbyte.io)
Link to Devin run
https://app.devin.ai/sessions/765c11efdefa43578eb78b1308e7b89a