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

Logging to other Cloud Storages. #4501

Merged
merged 20 commits into from
Jul 7, 2021
Merged

Conversation

davinchia
Copy link
Contributor

What

#4200

How

Describe the solution

Recommended reading order

  1. x.java
  2. y.python

Pre-merge Checklist

Expand the checklist which is relevant for this PR.

Connector checklist

  • Issue acceptance criteria met
  • PR name follows PR naming conventions
  • Secrets are annotated with airbyte_secret in the connector's spec
  • Credentials added to Github CI if needed and not already present. instructions for injecting secrets into CI.
  • Unit & integration tests added as appropriate (and are passing)
    • Community members: please provide proof of this succeeding locally e.g: screenshot or copy-paste 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.
  • /test connector=connectors/<name> command as documented here is passing.
    • Community members can skip this, Airbyters will run this for you.
  • Code reviews completed
  • Documentation updated
    • README.md
    • docs/SUMMARY.md if it's a new connector
    • Created or updated reference docs in docs/integrations/<source or destination>/<name>.
    • Changelog in the appropriate page in docs/integrations/.... See changelog example
    • docs/integrations/README.md contains a reference to the new connector
    • Build status added to build page
  • Build is successful
  • Connector version bumped like described here
  • New Connector version released on Dockerhub by running the /publish command described here
  • No major blockers
  • PR merged into master branch
  • Follow up tickets have been created
  • Associated tickets have been closed & stakeholders notified

Connector Generator checklist

  • 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.

@github-actions github-actions bot added area/platform issues related to the platform area/worker Related to worker labels Jul 2, 2021
@cgardens
Copy link
Contributor

cgardens commented Jul 2, 2021

Nice. Skimmed this. I like the direction.

@davinchia
Copy link
Contributor Author

@jrhizor besides the test, this is almost there. want to give it a look over?

*/
boolean hasEmptyConfigs(Configs configs);
static boolean hasEmptyConfigs(Configs configs) {
Copy link
Contributor

Choose a reason for hiding this comment

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

This is not a great interface to pass Configs. You're passing too much data and with a lot that has nothing to do with the logging feature

Copy link
Contributor

Choose a reason for hiding this comment

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

A class that groups the s3 fields or gcp fields into individual objects would help achieve this.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good point. I did think about this but didn't think it was too confusing at the time.

I created a logging configuration interface that has a subset of the logging related config methods. The implementation to the logging configuration interface delgates to the configs interface so force a dependency to avoid multiple ways of configuration the same thing.

build.gradle Show resolved Hide resolved
*/
boolean hasEmptyConfigs(Configs configs);
static boolean hasEmptyConfigs(Configs configs) {
Copy link
Contributor

Choose a reason for hiding this comment

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

A class that groups the s3 fields or gcp fields into individual objects would help achieve this.

@davinchia davinchia marked this pull request as ready for review July 7, 2021 13:06
@davinchia davinchia merged commit e2074a4 into master Jul 7, 2021
@davinchia davinchia deleted the davinchia/logging-other-clouds branch July 7, 2021 13:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/platform issues related to the platform area/worker Related to worker
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants