1
0
mirror of synced 2026-01-20 21:06:36 -05:00
Commit Graph

198 Commits

Author SHA1 Message Date
Anne
e7cc086394 Turn on auto-detect schema env variable (#21814)
* Turn on auto-detect schema env variable
Co-authored-by: Edmundo Ruiz Ghanem <168664+edmundito@users.noreply.github.com>
2023-01-25 13:39:15 -08:00
Jonathan Pearlin
62c0972de3 Return set of role labels (#21751) 2023-01-24 10:33:29 -05:00
Jonathan Pearlin
b786a180f0 Add required roles to API endpoints (#21664)
* Restore auth poc

* Formatting

* Custom Netty pipeline handler to aid authorization

* Fix handler name

* Cleanup

* Remove cloud code

* Disable API authorization in OSS

* Remove unused dependency

* Add newline

* Add required roles
2023-01-23 12:42:43 -05:00
Charles
9415eb55cb add attempt metrics (#21286) 2023-01-17 16:13:06 -08:00
Cole Snodgrass
440a5e4de7 store env-var response (#21327)
* store env-var response

* fix formatting

* fix pmd issue

* change log message to debug

* fix file change error
2023-01-12 11:16:40 -08:00
Cole Snodgrass
afaf2d1bb2 convert EnvVariableFeatureFlag to an injected dependency (#21171)
* inject feature-flag client into integration-launcher

* inject feature-flag client into message-tracker

* inject feature-flag client into DefaultAirbyteSource

* missed reference in message-tracker
2023-01-10 08:59:02 -08:00
Benoit Moriceau
9adb63cc0b Revert "Revert Convert the server to micronaut" (#21133)
* Revert "Revert "Convert the server to micronaut (#19194)" (#21132)"

This reverts commit 31c65f8eea.

* Fix the cors

* Fix cloud
2023-01-09 10:52:19 -08:00
Benoit Moriceau
31c65f8eea Revert "Convert the server to micronaut (#19194)" (#21132)
This reverts commit 0b153d11f9.
2023-01-06 15:08:22 -06:00
Benoit Moriceau
0b153d11f9 Convert the server to micronaut (#19194)
* Extract Operation API

* Extract scheduler API

* Format

* extract source api

* Extract source definition api

* Add path

* Extract State API

* extract webbackend api

* extract webbackend api

* extract workspace api

* Extract source definition specification api

* Remove configuration API

* tmp

* Checkstyle

* tmp

* tmp

* Inject but don't resolve Bean

* tmp

* Tmp

* fix build

* TMP

* Tmp

* Clean up

* better thread pool

* Change port to 8080

* Fix port

* Rm unused

* Cors filter

* Format

* rename

* Tmp

* Config based

* Rm health controller ref

* tmp

* Pool size

* Mock healthcheck

* Revert "Mock healthcheck"

This reverts commit 466677636b.

* Revert "Revert "Mock healthcheck""

This reverts commit 267094ae14.

* Restore health check

* Tmp

* format

* Rm deprecated

* Fix PMD

* Tmp

* Fix proxy test

* Remove useless annotation

* set auto commit as false

* Clean up and PR comments

* Bmoric/convert attempt micronaut (#19847)

* tmp

* Fix build

* tmp

* Tmp

* tmp

* tmp

* Tmp

* tmp

* tmp

* Clean up

* Comments and banner

* Non related files

* rm tmp

* Fix build

* Format

* Hit the micronaut server directly

* micronaut OperationApiController (#20270)

* micronaut OperationApiController

* pass micronaut client to OperationApi

* Bmoric/convert connection micronaut (#20211)

* tmp

* Fix build

* tmp

* Tmp

* tmp

* tmp

* Tmp

* tmp

* tmp

* Clean up

* tmp

* Convert Connection Api Controller

* PR Comments

* convert openapiapicontroller to micronaut (#20258)

* convert openapiapicontroller to micronaut

* merge health/openapi locations into one entry

* Fix build

* Format

* Remove media type

* Format

Co-authored-by: Cole Snodgrass <cole@airbyte.io>

* Bmoric/convert destination controller micronaut (#20269)

* tmp

* Fix build

* tmp

* Tmp

* tmp

* tmp

* Tmp

* tmp

* tmp

* Clean up

* tmp

* Convert Connection Api Controller

* Tmp

* PR Comments

* convert openapiapicontroller to micronaut (#20258)

* convert openapiapicontroller to micronaut

* merge health/openapi locations into one entry

* Fix bean

* Add JsonSchemaValidator as a Bean

* Fix build

* Format

* Format

* Test fix

* Pr comments

* Remove media type

* Format

* Remove media type

* Format

* format

* Add missing airbyte api client

Co-authored-by: Cole Snodgrass <cole@airbyte.io>

* Bmoric/convert destination definition controller micronaut (#20277)

* tmp

* Fix build

* tmp

* Tmp

* tmp

* tmp

* Tmp

* tmp

* tmp

* Clean up

* tmp

* Convert Connection Api Controller

* Tmp

* PR Comments

* convert openapiapicontroller to micronaut (#20258)

* convert openapiapicontroller to micronaut

* merge health/openapi locations into one entry

* Fix bean

* Add JsonSchemaValidator as a Bean

* Fix build

* Format

* Format

* Test fix

* Pr comments

* Remove media type

* Format

* Remove media type

* Format

* Remove media type

* Format

* api client

* missing annotation

* format

Co-authored-by: Cole Snodgrass <cole@airbyte.io>

* convert StateApiController to Micronaut (#20329)

* convert to micronaut

* nginx updates

* format

* Move dest oauth to micronaut (#20318)

* tmp

* Fix build

* tmp

* Tmp

* tmp

* tmp

* Tmp

* tmp

* tmp

* Clean up

* tmp

* Convert Connection Api Controller

* PR Comments

* convert openapiapicontroller to micronaut (#20258)

* convert openapiapicontroller to micronaut

* merge health/openapi locations into one entry

* Fix build

* Format

* Remove media type

* Format

* Move dest oauth to micronaut

* Pr comments

* format

Co-authored-by: Cole Snodgrass <cole@airbyte.io>

* Bmoric/convert source micronaut (#20334)

* tmp

* Fix build

* tmp

* Tmp

* tmp

* tmp

* Tmp

* tmp

* tmp

* Clean up

* tmp

* Convert Connection Api Controller

* PR Comments

* convert openapiapicontroller to micronaut (#20258)

* convert openapiapicontroller to micronaut

* merge health/openapi locations into one entry

* Fix build

* Format

* Remove media type

* Format

* Tmp

* tmp

* Build

* missing bean

* format

Co-authored-by: Cole Snodgrass <cole@airbyte.io>

* Migrate to micronaut (#20339)

* Migrate source to micronaut

* convert SchedulerApiController to Micronaut (#20337)

* wip; SchedulerApiController

* remove @Named

* remove @Singleton

* add back todo message

* Bmoric/convert source definition micronaut (#20338)

* tmp

* Fix build

* tmp

* Tmp

* tmp

* tmp

* Tmp

* tmp

* tmp

* Clean up

* tmp

* Convert Connection Api Controller

* PR Comments

* convert openapiapicontroller to micronaut (#20258)

* convert openapiapicontroller to micronaut

* merge health/openapi locations into one entry

* Fix build

* Format

* Remove media type

* Format

* Tmp

* tmp

* Build

* missing bean

* Tmp

* Add Beans

* fix Bean

* Add passthrough

* Clean up

* Missing path

* FIx typo

* Fix conflicts

* for mat

Co-authored-by: Cole Snodgrass <cole@airbyte.io>

* update SourceOauthApiController to Micronaut (#20386)

* convert SourceOauthApiController to Micronaut

* remove SourceOauthApi reference

* convert WorkspaceApiController to micronaut (#20214)

* wip; broken

* convert WorkspaceApiController to micronaut

* remove test controller

* format

* format

* add @Body to SourceOauthApiController

* consolidate nginx settings

* remove unnecessary factories

* Bmoric/convert jobs micronaut (#20382)

* Convert jobs to micronaut

* Nit

* Format

* Bmoric/convert source definition specification micronaut (#20379)

* Migrate source definition specifications to micronaut

* Format

* Format

* convert database assert call to Micronaut (#20406)

* remove dupe config section; add DatabaseEventListener

* move eventlistner to correct package; update implementation

* convert NotificationsApiController to Micronaut (#20396)

* convert NotificationsApiController to Micronaut

* format

* Migrate logs to micronaut (#20400)

* Bmoric/convert webbackend micronaut (#20403)

* Convert jobs to micronaut

* Nit

* Format

* Migrate the webbackend to micronaut

* Add missing Bean

* Cleanup (#20459)

* Cleanup

* More cleanup

* Disable in order to test cloud

* Restore missing files

* Fix test

* Format and fix pmd

* Add transactional

* Fix version

* Tentative

* Cleanup the cleanup

* Rm reference to the micronaut server

* format

* pmd

* more pmd

* fix build

* Delete logs API

* Revert "Delete logs API"

This reverts commit fcb271dcdf.

* Rm flaky test

* Format

* Try to fix test

* Format

* Remove optional

* Rm import

* Test sleep

* Simplify injection

* update import

* Remove sleep

* More injection

* Remove more requirement

* imports

* Remove more requirement

* Fix yaml

* Remove unused conf

* Add role

* Test acceptance test

* Update env

* Revert "Update to Micronaut 3.8.0 (#20716)"

This reverts commit a28f93747f.

* Update helm chart

* Fix helm chart

* Convert Application Listener

* Format

* Add explicit deployment mode

* Change check port

* Update version and bump version to the right value

* Cleanup

* Update FE end to end test

* Allow head request

* Fix controller

* Format

* Fix http client Bean

* Format

Co-authored-by: Cole Snodgrass <cole@airbyte.io>
2023-01-06 11:04:03 -08:00
Greg Solovyev
606e59eb0d Common Jsons: add flag to apply flatten to arrays (#20993)
* add flag to apply flatten to arrays

* add additional unit test cases for array flattening

* add backward compatibility function

* bump dest-redshift version and add changelog

Co-authored-by: marcosmarxm <marcosmarxm@gmail.com>
Co-authored-by: Adam Bloom <adam-bloom@users.noreply.github.com>
Co-authored-by: Marcos Marx <marcosmarxm@users.noreply.github.com>
Co-authored-by: Davin Chia <davinchia@gmail.com>
2023-01-05 08:26:43 -08:00
Jimmy Ma
f846678d18 Refactor code to avoid missing check (#21046) 2023-01-05 01:05:31 +00:00
Michael Siega
6130a54795 pass workspace id to sync workflow and use it to selectively enable field selection (#20589)
* pass workspace id to sync workflow and use it to selectively enable field selection

* fix tests around workspace id in job creation

* make sure field selection environment variables get passed through properly

* clean up handling around field selection flags

* debug logging for field selection

* properly handle empty field selection feature flag

* fix pmd

* actually fix pmd
2023-01-03 23:30:35 +00:00
Davin Chia
2deac0f244 Prep for Java 19 Upgrade (#20911)
Upgrade all the necessary tooling dependencies to get us to Java 19.
2022-12-29 12:32:42 -08:00
Davin Chia
d98ddbbae7 Implement Progress Bar Persistence Read/Write (#20787)
Implement the persistence layer changes following #19191.

This PR handles writing and reading stats to the new stream stat_table and columns in the existing sync_stats table.

At the same time we introduce upserts of stats records - i.e. merge updates into a single record - in preparation for real time stats updates vs the current approach where a new stat record is always written.

There will be two remaining PRs after this:
- First PR will be to fully wire up and test the API.
- Second PR will be to actually save stats while jobs are running.
2022-12-28 13:47:42 -08:00
Ryan Fu
d03757a3f8 Checkpointing: documentation of lifecycle of how data flows through destination connectors (#20118)
* Adds javadoc comments to files that touch writing data from destination connector into the destination

* Updates comments for copyTableQuery

* Fixed linter issues

* Fixed remaining formatting issues with javadoc paragraphs
2022-12-16 14:09:42 -08:00
Rodi Reich Zilberman
fae6eee242 Make sure decimal numbers are serialized to json as a plain string ra… (#20407)
* Make sure decimal numbers are serialized to json as a plain string rather than scientific notation, as it breaks deserialization of integers

* bump version and release note

* Correct PR number on release note

* auto-bump connector version

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2022-12-14 15:36:32 -08:00
Michael Siega
0fac8c82e6 implement column filtering in the replication workflow (#20369)
* implement column filtering in the replication workflow

* fixes to column selection in replication workflow

* add a basic acceptance test for column selection

* make CI acceptance tests run with new field selection flag enabled

* fix format

* readability improvements around columns selection tests and other small fixes
2022-12-13 01:02:09 +01:00
Cole Snodgrass
1cdfdbef42 convert container-orchestrator to micronaut (#19396)
* wip; add micronaut

* add additional json deserializer methods

* wip; converting to micronaut

* misc cleanup

* wip; broken

* wip; still broken

* wip

* formatting

* minor code cleanup; no actual changes

* wip; still broken

* removed commented out code; no longer broken

* wip; clean-up micronaut code

* cleanup; format

* fix pmd issues

* remove unused file

* init ApplicationTest

* edited link (#19444)

* move 'Example values' into intl (#19446)

* Revert "Update action.yml (#19416)" (#19450)

This reverts commit 78fb528a9a.

* Notifications Workflow (#18735)

* notification workflow

* Bmoric/remove unused code (#19188)

* Tmp

* Move when the deletion is performed

* Re-enable disable test

* PR comments

* Use cancel

* rename

* Fix test and version check position

* remove unused temporal deletion code

* Remove false todo

* Rm repeated test

* Rm unused import

* Make sure that long running activity are not retried (#19452)

* Parse list of dicts in json_schema_helper.find_nodes() (#19386)

* Get test on nested list/dict passing - use index to query next object for list

* Fix flakecheck

* Test that get_node provides correct value

* Improve test and test cases

* Rewrite method for better comprehension

* Add test for base-level key. Rewrite method for comprehension and handling this case

* adding tests

* fix test

* formatting

* remove unused dependencies

* add missing test resource

* format

* add missing test resource (real)

* format

* add back protocol-models dep

* format

* pr feedback; log stacktrace

Co-authored-by: Sophia Wiley <106352739+sophia-wiley@users.noreply.github.com>
Co-authored-by: Lake Mossman <lake@airbyte.io>
Co-authored-by: Topher Lubaway <asimplechris@gmail.com>
Co-authored-by: Anne <102554163+alovew@users.noreply.github.com>
Co-authored-by: Benoit Moriceau <benoit@airbyte.io>
Co-authored-by: Ella Rohm-Ensing <erohmensing@gmail.com>
2022-11-30 12:07:16 -08:00
Anne
14a29a0542 Auto Detect Schema Change environment variable (#19312)
* auto detect schema environment variable
2022-11-28 09:57:41 -08:00
Benoit Moriceau
90350c10fb Revert "Revert "Bmoric/add fetch source schema in oauth"" (#19513)
* Revert "Revert "Bmoric/add fetch source schema in oauth (#19392)" (#19512)"

This reverts commit f08b84f94f.

* Fix complete OAuth

* Use var
2022-11-17 13:18:43 -08:00
Benoit Moriceau
f08b84f94f Revert "Bmoric/add fetch source schema in oauth (#19392)" (#19512)
This reverts commit a968078cae.
2022-11-16 15:31:28 -08:00
Benoit Moriceau
a968078cae Bmoric/add fetch source schema in oauth (#19392)
* Update inputs

* PR comments and autogen files

* Fix oAuth retry

* Handle null

* Add missing ;

* PR comments

* use advanced oAuth

* PR comments

* More PR comments

* Format

* Avoid conflict in json extract

* Format
2022-11-16 14:30:07 -08:00
Akash Kulkarni
972a8c0419 Handling configuration exceptions in IntegrationRunner (#18989)
* Hanlde error msgs in integration runner

* Add ConfigErrorException

* Some formatting
2022-11-04 14:38:26 -07:00
Cole Snodgrass
9231e3ea35 removed unused code (#18788)
* removed unused code

* reformat with proper line length
2022-11-03 10:32:08 -07:00
Jimmy Ma
35ceb67fae Validate protocol version on connector update (#18639)
* Add helper class to check protocol version range

* Check ProtocolVersion when modifying a destination definition

* Check ProtocolVersion when modifying a source definition

* Format

* Add UnsupportedProtocolVersion exception

* Rewrite AirbyteProtocolVersionRange as a record

* Format

* Rename exception
2022-11-02 13:44:05 -07:00
Ryan Fu
cc41385f50 Updates getPrivateKeyPair to throw exception when private key pair does not exist (#18263)
* Changes method from returning null to throwing Exception to match method structure

* Added javadoc explaining that KeyPair should not be returning null

* Moved ConnectionErrorException to commons package

* Adds error handling for SshWrappedDestinations and markdown to include changes

* Bumps version numbers for Postgres, MySQL, MSSQL

* auto-bump connector version

* auto-bump connector version

* auto-bump connector version

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2022-10-21 16:04:39 -07:00
Jonathan Pearlin
2d32e9d3a6 Improve secret replacement matching reg ex (#18234)
* Improve secret replacement matching reg ex

* Remove System.out.println
2022-10-20 12:23:24 -04:00
Michael Siega
6a48da9226 Introduce webhook configs into workspace api and persistence (#17950)
* wip

* handle webhook configs in workspaces endpoint and split/hydrate secrets

* style improvements to documentation around webhook configs

* Clarify documentation around webhook auth tokens

* More documentation clarification around webhook configs

* Format.

* unit test coverage for webhook config handling

* use common json parsing libraries around webhook configs

* clean up around testing webhook operation configs

Co-authored-by: Davin Chia <davinchia@gmail.com>
2022-10-14 02:59:02 +02:00
Jimmy Ma
f267746a18 Use MessageMigration for Source Connection Check. (#17656)
* More AirbyteVersion references fix

* Propagate protocol version from sourceDef to SchedulerClient

* Propagate protocol version to LauncherConfig

* Add VersionedMigratorFactory

* Update VersionedAirbyteStreamFactory

* Fix Version Json serialization/deserialization

* Plug message migration in CheckConnection for Sources
2022-10-13 08:11:31 -07:00
Jonathan Pearlin
99129ae7a8 Mask connector configuration secrets when logged (#17514)
* Mask connector configuration secrets when logged

* Fix failing test

* Add JavaDoc

* Fix formatting

* PR feedback

* Refactor constants to central location.
2022-10-06 14:34:39 -04:00
Charles
1e2f701fe7 remove import / export handler (#16403) 2022-09-29 16:24:49 -07:00
Jimmy Ma
4974855b41 Track protocol version support range (#17366)
* Add Airbyte Protocol Range configs

* Refactor metadata read/write

* Add ProtocolVersion Min/Max get/set to JobsPersistence

* Store the supported protocol version range in airbyte_metadata

* Use defaults in EnvConfigs instead of .env
2022-09-29 09:43:16 -07:00
Jimmy Ma
6f8f62e6f7 Extract Version from AirbyteVersion (#17358)
* Extract Version from AirbyteVersion

* fix comments

* Remove leftover suppresswarning
2022-09-28 15:38:47 -07:00
Benoit Moriceau
04042038e8 Remove validation (#17280)
* Remove validation

* Revert "Remove validation"

This reverts commit 156a227de4.

* Put the validation behind a feature flag

* Fix typo

* format
2022-09-27 14:08:42 -07:00
Lake Mossman
a15288ad0f Improve job list API with more fetching capabilities (#16415)
* start implementation of new persistence method

* add includingJobId and totalJobCount to job list request

* format

* update local openapi as well

* refactor queries into JOOQ and return empty list if target job cannot be found

* fix descriptions and undo changes from other branch

* switch including job to starting job

* fix job history handler tests

* rewrite jobs subqueries in jooq

* fix multiple config type querying

* remove unnecessary casts

* switch back to 'including' and return multiple of page size necessary to include job

* undo webapp changes

* fix test description

* format
2022-09-12 16:32:04 -07:00
Jimmy Ma
9ad847bd8e Store protocol version from spec (#16416)
* Update protocol version from actor defs API operations

* Implement default airbyte protocol version support

* Add version parsing

* Add acceptance tests

* Fix Acceptance Tests

* format

* Make test package private
2022-09-08 18:21:28 -07:00
Anne
d856731029 Implement more Error Prone PMD rules (#15491)
* AvoidFieldNameMatchingTypeName rule
* AvoidInstanceofChecksInCatchClause
* compareObjectsWithEquals
* DoNotTerminateVM and ConstructorCallsOverridableMethod
* EmptyIfStmt and EmptyStatementNotInLoop
* ImplicitSwitchFallThrough, InvalidLogMessageFormat, and MoreThanOneLogger
2022-09-07 13:20:32 -07:00
Evan Tahler
f15234b234 Log sync summary and sync activity seperators (#16314)
* Log activity start and end

* pretty-print JSON replication and failure summaries

* simplify
2022-09-06 15:36:18 -07:00
Evan Tahler
110fe5d7fe LOG_CONNECTOR_MESSAGES enables logging of all messages seen by the worker in a sync (#15895)
* `LOG_CONNECTOR_MESSAGES` to enable logging of all messages seen by the worker in a sync

* also log initial state

* linting

* getState 2x for to match input file

* use `Jsons.serialize` utility

* add note to `developing-locally`

* fix bad merge
2022-08-24 10:29:48 -07:00
Anne
e9afa9bef3 Error Prone PMD rules (#15010)
* Implement ErrorProne PMD rules:
AssignmentInOperand
AvoidAccessibilityAlteration
AvoidBranchingStatementAsLastInLoop
AvoidCatchingNPE
AvoidCatchingThrowable
AvoidDuplicateLiterals rule
2022-08-09 15:30:48 -07:00
Benoit Moriceau
d7505b440f Error silence (#15073)
* Error silence

* PR comments

* update object as well
2022-07-27 12:17:44 -07:00
Anne
555efd5360 Best Practices PMD rules (#14904)
* Implement BestPractices PMD rules:
- LiteralsFirstInComparisons
- PreserveStackTrace
- SystemPrintln rule
- switch statement should have default
- Use isEmpty rule
- UseVarargs rule
2022-07-22 11:00:36 -07:00
Anne
76f9fbaa54 Apply more Best Practices PMD rules (#14772)
* implement PMD rules: 
* AbstractClassWithoutAbstractMethod
* ArrayIsStoredDirectly
* AvoidPrintStackTrace, AvoidReassigningLoopVariables, AvoidReassigningParameters, AvoidUsingHardCodedIP and CheckResultSet
* DoubleBraceInitialization
* MissingOverride
* ForLoopCanBeForeach
*JUnitTest rules
2022-07-20 14:28:47 -07:00
Anne
e698710118 Apply Best Practices PMD rules (#14753)
* Apply Unused* Best Practices PMD rules
2022-07-15 15:01:04 -07:00
Charles
96d021ccbf add state type endpoint (#14111) 2022-06-27 22:40:21 -07:00
Benoit Moriceau
6ead732eb4 Bmoric/feature flag for state deserialization (#14127)
* Add Feature flag

* Add default feature flag value

* Update test

* remove unsused

* tmp

* Update tests

* rm unwanted change

* PR comments
2022-06-27 16:39:19 -07:00
Tyler Russell
e706e02f0d fix(jsonSchemas): raise error when items property not provided (#14018) 2022-06-24 16:13:39 +02:00
Charles
2cbee5a4b9 use built in check for if path is definite (#13834) 2022-06-22 08:00:15 -07:00
Charles
f483396f26 migrate JsonSchemas to use basic path instead of JSONPath (#13917) 2022-06-22 07:58:07 -07:00
Lake Mossman
73034c64da Sweep old scheduler code (#13400)
* sweep all scheduler application code and new-scheduler conditional logic

* remove airbyte-scheduler from deployments and docs

* format

* remove 'v2' from github actions

* add back scheduler in delete deployment command

* remove scheduler parameters from helm chart values

* add back job cleaner + test and add comment

* remove now-unused env vars from code and docs

* format

* remove feature flags from web backend connection handler as it is no longer needed

* remove feature flags from config api as it is now longer needed

* remove feature flags input from config api test

* format + shorter url

* remove scheduler parameters from helm chart readme
2022-06-06 10:49:17 -07:00