1
0
mirror of synced 2026-01-07 00:05:48 -05:00
Commit Graph

244 Commits

Author SHA1 Message Date
lmossman
b94ee00fd8 Revert "Generate seed connector specs on build (#7501)"
This reverts commit a534bb2a8f.
2021-11-03 08:46:43 -07:00
Lake Mossman
a534bb2a8f Generate seed connector specs on build (#7501)
* add specs module with logic to fetch specs on build

* format + build and add gradle dependency for new script

* check seed file for existing specs + refactor

* add tests + a bit more refactoring

* run gw format

* update yaml config persistence to merge specs into definitions

* add comment

* delete secrets migration to be consistent with master

* add dep

* add tests for GcsBucketSpecFetcher

* get rid of static block + format

* DRY up parse call

* add GCS details to comment

* formatting + fix test

* update comment

* do not format seed specs files

* change signature of run to allow cloud to reuse this script

* run gw format

* revert commits that change signature of run

* fix comment typo

Co-authored-by: Davin Chia <davinchia@gmail.com>

* rename enum to be distinct from the enum in cloud

* add missing dependencies between modules

* add readme for seed connector spec generator

* reword

* reference readme in comment

* ignore 'spec' field in newFields logic

Co-authored-by: Davin Chia <davinchia@gmail.com>
2021-11-02 22:03:50 -07:00
Benoit Moriceau
50112264c5 Setup the right version for the docker container (#7570) 2021-11-02 14:15:11 -07:00
Jared Rhizor
b1f5c23a6f use ADD to reduce docker image sizes (#7537)
* use ADD to reduce docker image sizes

* switch to full paths
2021-11-02 09:45:54 -07:00
Charles
8d95cb862b move file migration logic in ServerApp to its own method and mark as … (#7307) 2021-10-30 15:47:58 -07:00
Lake Mossman
d525f1f1e7 Save specs to source/dest definitions on create and update (#7367)
* store spec in db

* update tests

* run gw format

* add TODOs

* add lmossman to TODOs

* run gw format

* remove redundant DockerImageValidator

* run gw format
2021-10-28 16:00:37 -07:00
Charles
6ff2fc7429 Expose version as AirbyteVersion instead of String in Configs iface (#7369) 2021-10-26 15:56:19 -07:00
Charles
35e905041d prefer AirbyteVersion over String (#7310) 2021-10-25 18:06:04 -07:00
LiRen Tu
779c39c088 Copy job attempt state to configs database (#7219)
* Add migration to create latest state table

* Log migration name

* Expose db variables to airbyte-db

* Implement migration

* Fix migration test

* temp

* Rebase on master

* Save state in temporal (#7253)

* Copy state to airbyte_configs table

* Add standard sync state

* Move state methods to config repository

* Add unit tests

* Fix unit tests

* Register standard sync state in migration

* Add comment

* Use config model instead of json node

* Add comments

* Remove unnecessary method

* Fix migration query

* Remove unused config database

* Move persist statement and log the call

* Update dev doc

* Add unit tests for sync workflow

Co-authored-by: Charles <giardina.charles@gmail.com>
2021-10-25 17:08:08 -07:00
Lake Mossman
5d2b5dcfcb fetch specs from definitions directly (#7293)
* try fetching specs from definitions first

* refactor specFetcher and update tests

* run gradle format

* format again

* fix comment formatting

* fix test

* merge comment lines into single line

* move duplicate job metadata mocking logic to shared static method

* add todo

* formatting

* use local var and clone

* run gw format

* add todo

* skip spec fetcher in docker image validator and update todos

* run gw format
2021-10-25 16:33:15 -07:00
Lake Mossman
077b90e45f add optional spec field to source and destination definitions (#7254) 2021-10-22 14:49:12 -07:00
George Claireaux
d660661b64 add google sheets oauth flow to server + fix auth rootObject type in protocol (#7131)
* adding google sheets oauth flow to server

* fix oauth type in protocol yaml

* bump sheets version in definitions

* added GDrive scope

* update sheets to master changes

* update protocol incl. cdk

* protocol typing for oauth rootobject

* format
2021-10-21 18:28:50 +01:00
Marcos Eliziario Santos
d5e80d0771 OAuth backend Refactor (#7209) 2021-10-21 10:08:32 +03:00
Harsha Teja Kanna
3e7f95c25a 🎉 Support build on MacOS M1 (Apple Silicon) (#7104)
- See this doc for details: https://github.com/airbytehq/airbyte/blob/master/docs/contributing-to-airbyte/developing-locally.md
- Unit test does not work yet.
2021-10-19 11:20:21 -07:00
Charles
ba44f700b9 add final for params, local variables, and fields (#7084) 2021-10-15 16:41:04 -07:00
Charles
c129e02ffa refactor confusing methods (#6641) 2021-10-15 13:05:29 -07:00
Benoit Moriceau
ec240edc46 Fix the content type retrieval (#7013)
* Fix the content type retrieval

* Re-add the original MIME type

* Fix CS

* Update logic and add a test

* Auto format

* PR comments
2021-10-15 08:59:23 -07:00
Jared Rhizor
ab4443359c fix build (#7022) 2021-10-13 14:00:01 -07:00
Christophe Duong
6c25e19b75 Refactor to better test import behaviors (#6836)
* Refactor to better test import behaviors

* Format code
2021-10-13 18:44:53 +02:00
Christophe Duong
9466a6d2bb Swallow oauth tracking exceptions (#6969)
* Swallow exceptions when tracking usage

* format code
2021-10-12 12:43:20 +02:00
Mario Molina
ac2d3073a2 🎉 New search API endpoints for connections, sources, and destinations (#6656)
* Add API endpoints for connections, sources, and destinations

* Updating tests

* Tests for source and destination handlers

* Reformat code

* Update airbyte-server/src/main/java/io/airbyte/server/handlers/helpers/ConnectionMatcher.java

Co-authored-by: LiRen Tu <tuliren@gmail.com>

* Adding tests

* Format code

Co-authored-by: LiRen Tu <tuliren@gmail.com>
2021-10-08 19:11:15 -07:00
Christophe Duong
5f0dd9cd52 Fix exceptions not being swallowed when notifying job failures (#6770) 2021-10-05 18:55:45 +02:00
Christophe Duong
1164568943 Track oauth usage (#6730)
* Track oauth usage

* Apply suggestions from code review

* Pass tracking client in constructors

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-10-05 11:54:49 +02:00
Charles
8cacd5cf44 fix issue in configdumpimporter where it is is trying to parse the wrong type (#6637) 2021-10-01 14:15:49 -07:00
Davin Chia
b6b02499c0 :tada Make sure applications can use 75% of the configured RAM for heap. (#6624) 2021-10-02 01:35:58 +08:00
Jared Rhizor
f88b8313a8 add the ability to use a secret persistence (#6415)
* test exposing secrets in configrepo

* fix local persistence sql

* working propagation, just without check/discover replacements and without feature flagging

* switch if statement

* set up secret persistence for google secrets manager

* add ttl-based secret persistence for check/discover usage in the future

* set up check/discover to pass around necessary parts

* Revert "set up check/discover to pass around necessary parts"

This reverts commit 489d2d5f5d.

* working updates + check/discover operations

* fix additional configs created on deletion

* clean up docker compose file

* finish up configrepo

* make api path optional

* clean up schedulerapp and local testing persistence

* make optional in the worker app

* add rest of feature flagging

* fmt

* remove completed todo

* fix refactoring typo

* fix another refactoring typo

* fix compilation error in test case

* fix tests

* final cleanups

* fix conditional

* address a couple of things

* add hydrator interface

* add replaceAllConfigs

* specfetcher handling

* fix constructor

* fix test

* fix typo

* fix merge build error

* remove extra config

* fix integration test

* fix final piece
2021-09-29 11:53:29 -07:00
Christophe Duong
e10a19801f Inject oauth params when using "sync now" button too (#6545)
* Inject oauth params when using "sync now" button too

* Format secrets code
2021-09-29 20:03:21 +02:00
Michel Tricot
1773e41e47 Shorten our headers + adds contributors file (#6478) 2021-09-27 10:45:50 -07:00
Sherif A. Nada
89dccf3897 Modify oauthSpecification to allow working with oneOfs (#6456) 2021-09-27 18:00:36 +02:00
Charles
c85becc742 make the seed for YamlSeedConfigPersistence configurable (#6409) 2021-09-25 05:34:56 -07:00
Jared Rhizor
a8261f4742 secret coordinate helpers (#6114)
* add some initial tests and todos

* add rest of files

* format

* make json secrets processor availabe as helper functions, not injected classes

* get tests working for splitting

* save state

* complete update

* combine working

* format

* add separate test cases

* add oneof test case and fix behavior

* combine support for arrays

* working string arrays

* test object arrays

* add unsupported test case

* clean up

* add airbyte_ prefix

* add ability to test individual version bumping

* add read only persistence exposure

* version handling partially

* version handling fully working yay

* remove comment typo

* add test

* throw an exception when the secret can't be found and test for it

* test for mutations

* remove magic strings

* extract coordinate generation into own functions

* misc cleanup

* massive simplification

* mild cleanup

* remove json path

* fix test run and clean up more

* format

* misc minor cleanups

* remove giant if with filter

* significantly clean up split function

* significant cleanups and add array of oneof test case

* support nestedOneOf test case

* add schema validation test and fix failing cases

* add javadocs

* clarify coordinate conversion

* make sense

* fix build

* revert json secrets processing static-ification to fix build

* add in method
2021-09-23 14:27:19 -07:00
Yevhenii
63425923d0 Remove deprecated connectors: source-google-adwords-singer, source-google-search-console-singer, source-googleanalytics-singer (#6378) 2021-09-23 15:24:49 +03:00
Mario Molina
98b1900ced 🎉 New API endpoint to search connections (#4813)
* New search endpoint for web backend

* Unit tests

* Remove recreate endpoints

* Format
2021-09-23 01:34:58 -03:00
Jared Rhizor
35c5bcd94a add displaySetupWizard as an api option (#6331) 2021-09-21 07:45:59 -07:00
Christophe Duong
45f65983d2 Fix exception on API calls (#6346) 2021-09-21 12:49:29 +02:00
Christophe Duong
4f1da3ea81 Update instance wide oauth parameters (#6309)
* Update instance wide oauth parameters

* Add tests
2021-09-20 20:11:29 +02:00
LiRen Tu
2473eb71b5 🐞 Update connector definitions after migrations (#6247)
* Remove json schema valication in file-based migration

* Revert attempts schema

* Remove extra log line

* Format code

* Remove invalid input record test

* Revert #45ad88a40

* Run flyway migration only if the file-based migration succeeds

* Load latest configs after flyway migration

* Add back json schema validation in file-based migration

* Format code
2021-09-18 23:45:13 -07:00
LiRen Tu
111d90f322 🐞 Fix db config persistence initialization (#6220)
Resolves #5954.
2021-09-17 21:19:15 -07:00
Sherif A. Nada
8dcaf25bda return auth spec in the API when getting definition specification (#6121) 2021-09-16 07:39:15 -07:00
Jenny Brown
d0f2181c6b Interface changes to support separating secrets from the config (#6065)
* Interface changes to support separating secrets from the config
* Cleanup from PR comments and whitespace
2021-09-15 15:11:45 -05:00
Jared Rhizor
14ac554370 use spec when persisting source configs (#6036)
* switch most usages of writing sources to using specs

* fix other usages

* fix test

* only wait on the server in the scheduler, not the worker

* fix

* rephrase sanity check and remove stdout
2021-09-14 13:36:10 -07:00
Christophe Duong
da34befeea Implement Google Analytics & Google Ads OAuth Flow (#5911)
Co-authored-by: Sherif Nada <snadalive@gmail.com>
2021-09-13 08:37:53 -07:00
Charles
7970e63b8d Add scheduler client that pulls from bucket cache (#5605) 2021-09-11 12:54:51 -07:00
LiRen Tu
b53d826d8a Separate connector upgrade from import (#5965)
* Remove connector update in dump importer

* Remove seed persistence

* Update connector definition with loadData method

* Add override annotation

* Pass in seed persistence

* Remove import

* Restore parameter order

* Throw exception in FileSystemConfigPersistence#loadData
2021-09-10 09:18:44 -07:00
Sherif A. Nada
fc159d8a30 add instancewide variables setter endpoints (#5940)
Co-authored-by: Christophe Duong <christophe.duong@gmail.com>
2021-09-09 14:02:06 -07:00
irynakruk
ffecc1c9a2 🎉 New source: MongoDb ported to java (#5530)
* New abstraction for NoSql database sources

* New MongoDbSource: partial impl

* Added MongoDataType

* Improved MongoDatabase and fixed read method

* code review changes;

* merge clean up;

* Renamed NoSqlDatabase to AbstractDatabase

* formatter changes;

* code review changes: changed mongodb-new to mongodb-v2; left only new connector info in all docs

* code review changes: changed mongodb-new to mongodb-v2; left only new connector info in all docs

* updated spec.json and toDatabaseConfig() method

* updated doc accordingly to spec.json changes

Co-authored-by: Iryna Kruk <iryna.o.kruk@globallogic.com>
2021-09-09 08:14:16 -04:00
Christophe Duong
edcd83dd1a Add a config for instance wide oauth parameters (#5761)
* Add a config for instance wide oauth parameters

* Remove recreate endpoints and add tests

* Inject oauth params in discover/check/reset too

* Inject masked OAuth params for UI Validation (#5865)

Co-authored-by: Sherif Nada <snadalive@gmail.com>
2021-09-09 10:36:21 +02:00
Davin Chia
7aa4c71628 🐛 Fix cancel not working on Kube deployment since 0.29.13-alpha. (#5850)
A few days ago we removed the workflow volume from the Kubernetes deployment in order to simplify the set up. This also lets us do away with the workspace PVC.

In theory this isn't needed since the volume is mainly used for logs and our Kube deployment logs out to the Cloud storage.

In the process of doing so, we realised the volume is used to store the temporal workflow id that is later used to cancel the workflow. Thus cancellations stopped working.

This PR:

Adds a migration to add the temporalWorkflowId column to the Attempts table. Exposes various persistent methods for this.
Modify temporal to store the workflow id in this column. Modify cancellation to retrieve the workflow id from the table.
Things to call out:

This approach means the worker now requires access to the jobs DB. I think this is reasonable.
Some tests are disabled since we haven't really stabilised the Flyway + older file-base migrations yet. Follow up ticket has been created (Update config and job persistence unit tests to run migrations #5857) and Liren is working on this.
2021-09-09 13:51:35 +08:00
Jared Rhizor
769fedba89 make generics less confusing (#5824) 2021-09-08 09:34:37 -07:00
Prasanna Ram Venkatachalam
1ff177deed 🎉 add ability to send success notifications on webhook (#5517) 2021-09-07 11:35:07 -07:00