Skip to content
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

✨Add common async methods #29003

Merged
merged 2 commits into from
Aug 2, 2023

Conversation

benmoriceau
Copy link
Contributor

@benmoriceau benmoriceau commented Aug 2, 2023

What

Implement the async methods for the common classes that weren't using it.

How

Implement the methods needed by the async framework in the shared destination class.

Recommended reading order

  1. SwitchingDestination.java
  2. SshWrappedDestination.java
  3. SerializedAirbyteMessageConsumer.java

🚨 User Impact 🚨

Are there any breaking changes? What is the end result perceived by the user?

For connector PRs, use this section to explain which type of semantic versioning bump occurs as a result of the changes. Refer to our Semantic Versioning for Connectors guidelines for more information. Breaking changes to connectors must be documented by an Airbyte engineer (PR author, or reviewer for community PRs) by using the Breaking Change Release Playbook.

If there are breaking changes, please merge this PR with the 🚨🚨 emoji so changelog authors can further highlight this if needed.

Pre-merge Actions

Expand the relevant checklist and delete the others.

New Connector

Community member or Airbyter

  • Community member? Grant edit access to maintainers (instructions)
  • Unit & integration tests added and passing. Community members, please provide proof of success locally e.g: screenshot or copy-paste unit, integration, and acceptance test output. To run acceptance tests for a Python connector, follow instructions in the README. For java connectors run ./gradlew :airbyte-integrations:connectors:<name>:integrationTest.
  • Connector version is set to 0.0.1
    • Dockerfile has version 0.0.1
  • Documentation updated
    • Connector's README.md
    • Connector's bootstrap.md. See description and examples
    • docs/integrations/<source or destination>/<name>.md including changelog with an entry for the initial version. See changelog example
    • docs/integrations/README.md

Airbyter

If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.

  • Create a non-forked branch based on this PR and test the below items on it
  • Build is successful
  • If new credentials are required for use in CI, add them to GSM. Instructions.
Updating a connector

Community member or Airbyter

  • Grant edit access to maintainers (instructions)
  • Unit & integration tests added

Airbyter

If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.

  • Create a non-forked branch based on this PR and test the below items on it
  • Build is successful
  • If new credentials are required for use in CI, add them to GSM. Instructions.
Connector Generator
  • Issue acceptance criteria met
  • PR name follows PR naming conventions
  • If adding a new generator, add it to the list of scaffold modules being tested
  • The generator test modules (all connectors with -scaffold in their name) have been updated with the latest scaffold by running ./gradlew :airbyte-integrations:connector-templates:generator:testScaffoldTemplates then checking in your changes
  • Documentation which references the generator is updated as needed

@benmoriceau benmoriceau requested a review from tryangul August 2, 2023 17:34
@benmoriceau benmoriceau requested review from a team as code owners August 2, 2023 17:34
Copy link
Contributor

@tryangul tryangul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚢

@benmoriceau benmoriceau requested a review from davinchia August 2, 2023 17:37
@benmoriceau benmoriceau changed the title Add common async methods ✨Add common async methods Aug 2, 2023
@benmoriceau
Copy link
Contributor Author

benmoriceau commented Aug 2, 2023

/legacy-test connector=destination-snowflake

🕑 destination-snowflake https://github.com/airbytehq/airbyte/actions/runs/5742173344
✅ destination-snowflake https://github.com/airbytehq/airbyte/actions/runs/5742173344
Python tests coverage:

Name                                                              Stmts   Miss  Cover
-------------------------------------------------------------------------------------
normalization/transform_config/__init__.py                            2      0   100%
normalization/transform_catalog/reserved_keywords.py                 15      0   100%
normalization/transform_catalog/__init__.py                           2      0   100%
normalization/destination_type.py                                    18      0   100%
normalization/__init__.py                                             4      0   100%
normalization/transform_catalog/destination_name_transformer.py     171     10    94%
normalization/transform_catalog/table_name_registry.py              174     34    80%
normalization/transform_config/transform.py                         195     48    75%
normalization/transform_catalog/utils.py                             51     14    73%
normalization/transform_catalog/dbt_macro.py                         22      7    68%
normalization/transform_catalog/catalog_processor.py                147     80    46%
normalization/transform_catalog/transform.py                         65     39    40%
normalization/transform_catalog/stream_processor.py                 603    407    33%
-------------------------------------------------------------------------------------
TOTAL                                                              1469    639    57%

Build Passed

Test summary info:

All Passed

@benmoriceau
Copy link
Contributor Author

benmoriceau commented Aug 2, 2023

/legacy-test connector=destination-postgres

🕑 destination-postgres https://github.com/airbytehq/airbyte/actions/runs/5742174304
✅ destination-postgres https://github.com/airbytehq/airbyte/actions/runs/5742174304
Python tests coverage:

Name                                                              Stmts   Miss  Cover
-------------------------------------------------------------------------------------
normalization/transform_config/__init__.py                            2      0   100%
normalization/transform_catalog/reserved_keywords.py                 15      0   100%
normalization/transform_catalog/__init__.py                           2      0   100%
normalization/destination_type.py                                    18      0   100%
normalization/__init__.py                                             4      0   100%
normalization/transform_catalog/destination_name_transformer.py     171     10    94%
normalization/transform_catalog/table_name_registry.py              174     34    80%
normalization/transform_config/transform.py                         195     48    75%
normalization/transform_catalog/utils.py                             51     14    73%
normalization/transform_catalog/dbt_macro.py                         22      7    68%
normalization/transform_catalog/catalog_processor.py                147     80    46%
normalization/transform_catalog/transform.py                         65     39    40%
normalization/transform_catalog/stream_processor.py                 603    407    33%
-------------------------------------------------------------------------------------
TOTAL                                                              1469    639    57%

Build Passed

Test summary info:

All Passed

@benmoriceau
Copy link
Contributor Author

/approve-and-merge reason="Tests are passing"

@octavia-approvington
Copy link
Contributor

Enough! Let's do this
goooooo!

@octavia-approvington octavia-approvington merged commit 792a2e5 into master Aug 2, 2023
@octavia-approvington octavia-approvington deleted the bmoric/comn-class-t-async-framewotk branch August 2, 2023 18:32
@octavia-squidington-iii
Copy link
Collaborator

destination-mariadb-columnstore test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 91mn08s

Step Result
Validate airbyte-integrations/connectors/destination-mariadb-columnstore/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build destination-mariadb-columnstore docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:destination-mariadb-columnstore:integrationTest

🔗 View the logs here

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-mariadb-columnstore test

@octavia-squidington-iii
Copy link
Collaborator

destination-elasticsearch-strict-encrypt test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 05mn59s

Step Result
Validate airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build destination-elasticsearch-strict-encrypt docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:destination-elasticsearch-strict-encrypt:integrationTest

🔗 View the logs here

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-elasticsearch-strict-encrypt test

@octavia-squidington-iii
Copy link
Collaborator

destination-dynamodb test report (commit ea74e1dc71) - ✅

⏲️ Total pipeline duration: 15mn50s

Step Result
Validate airbyte-integrations/connectors/destination-dynamodb/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build destination-dynamodb docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:destination-dynamodb:integrationTest

🔗 View the logs here

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-dynamodb test

@octavia-squidington-iii
Copy link
Collaborator

destination-postgres test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 31mn32s

Step Result
Validate airbyte-integrations/connectors/destination-postgres/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build destination-postgres docker image for platform linux/x86_64
Build airbyte/normalization:dev
./gradlew :airbyte-integrations:connectors:destination-postgres:integrationTest

🔗 View the logs here

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-postgres test

@octavia-squidington-iii
Copy link
Collaborator

source-alloydb test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 05mn34s

Step Result
Validate airbyte-integrations/connectors/source-alloydb/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build source-alloydb docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:source-alloydb:integrationTest
Acceptance tests

🔗 View the logs here

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-alloydb test

bnchrch pushed a commit that referenced this pull request Aug 3, 2023
* Add common async methods

* Automated Commit - Format and Process Resources Changes

---------

Co-authored-by: benmoriceau <benmoriceau@users.noreply.github.com>
@octavia-squidington-iii
Copy link
Collaborator

source-clickhouse-strict-encrypt test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 303mn20s

Step Result
Validate airbyte-integrations/connectors/source-clickhouse-strict-encrypt/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build source-clickhouse-strict-encrypt docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:source-clickhouse-strict-encrypt:integrationTest
Acceptance tests

🔗 View the logs here

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-clickhouse-strict-encrypt test

@octavia-squidington-iii
Copy link
Collaborator

source-teradata test report (commit ea74e1dc71) - ✅

⏲️ Total pipeline duration: 12mn53s

Step Result
Validate airbyte-integrations/connectors/source-teradata/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build source-teradata docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:source-teradata:integrationTest
Acceptance tests

🔗 View the logs here

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-teradata test

@octavia-squidington-iii
Copy link
Collaborator

destination-yugabytedb test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 24mn46s

Step Result
Validate airbyte-integrations/connectors/destination-yugabytedb/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build destination-yugabytedb docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:destination-yugabytedb:integrationTest

🔗 View the logs here

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-yugabytedb test

@octavia-squidington-iii
Copy link
Collaborator

destination-tidb test report (commit ea74e1dc71) - ✅

⏲️ Total pipeline duration: 17mn40s

Step Result
Validate airbyte-integrations/connectors/destination-tidb/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build destination-tidb docker image for platform linux/x86_64
Build airbyte/normalization-tidb:dev
./gradlew :airbyte-integrations:connectors:destination-tidb:integrationTest

🔗 View the logs here

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-tidb test

@octavia-squidington-iii
Copy link
Collaborator

source-mssql-strict-encrypt test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 16mn40s

Step Result
Validate airbyte-integrations/connectors/source-mssql-strict-encrypt/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build source-mssql-strict-encrypt docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:source-mssql-strict-encrypt:integrationTest
Acceptance tests

🔗 View the logs here

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-mssql-strict-encrypt test

@octavia-squidington-iii
Copy link
Collaborator

destination-local-json test report (commit ea74e1dc71) - ✅

⏲️ Total pipeline duration: 05mn28s

Step Result
Validate airbyte-integrations/connectors/destination-local-json/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build destination-local-json docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:destination-local-json:integrationTest

🔗 View the logs here

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-local-json test

@octavia-squidington-iii
Copy link
Collaborator

destination-oracle test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 303mn43s

Step Result
Validate airbyte-integrations/connectors/destination-oracle/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build destination-oracle docker image for platform linux/x86_64
Build airbyte/normalization-oracle:dev
./gradlew :airbyte-integrations:connectors:destination-oracle:integrationTest

🔗 View the logs here

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-oracle test

@octavia-squidington-iii
Copy link
Collaborator

source-mongodb-strict-encrypt test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 04mn22s

Step Result
Validate airbyte-integrations/connectors/source-mongodb-strict-encrypt/metadata.yaml
Connector version semver check
QA checks
Build connector tar
Build source-mongodb-strict-encrypt docker image for platform linux/x86_64
./gradlew :airbyte-integrations:connectors:source-mongodb-strict-encrypt:integrationTest

🔗 View the logs here

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-mongodb-strict-encrypt test

@octavia-squidington-iii
Copy link
Collaborator

destination-vertica test report (commit ea74e1dc71) - ❌

⏲️ Total pipeline duration: 01mn43s

Step Result
Validate airbyte-integrations/connectors/destination-vertica/metadata.yaml
Connector version semver check
QA checks
Build connector tar

🔗 View the logs here

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-vertica test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants