1
0
mirror of synced 2026-01-10 09:04:48 -05:00
Commit Graph

78 Commits

Author SHA1 Message Date
Andrii Leonets
4c0d1a0399 🎉 New Source: Big Query (#4457)
New Source: BigQuery
2021-07-22 15:39:37 +03:00
Daniel Mateus Pires
c4de62e77a 🎉 New source: US census (#4228)
Co-authored-by: Sherif Nada <snadalive@gmail.com>
2021-07-20 00:17:53 -07:00
Sherif A. Nada
35806d9640 use new AMI ID for connector builds (#4855) 2021-07-19 21:42:23 -07:00
Sherif A. Nada
a4bb30430d Python Demo Destination: KVDB (#4786) 2021-07-19 09:44:36 -07:00
Vadym
24be682163 🎉 New source: Pipedrive connector (#4686)
* Add pipedrive source initial

* Add initial schemas.
Add MVP source implementation.

* Implement MVP streams

* Complete MVP streams implementation

* Apply schema format

* Add test creds

* Update streams.py
Fix schemas

* Update replication_start_date format.
Add extra pagination condition

* Refactor streams, remove unused classes.

* Add pipedrive.md docs file.
Add Pipedrive source definitions.

* Add json source definition.

* Update spec.json

* Add docs mentions throughout the project files
2021-07-19 15:08:23 +03:00
LiRen Tu
a8308c4061 🎉 New Destination: Google Cloud Storage (#4784)
* Adding Google Cloud Storage as destination

* Removed few comments and amended the version

* Added documentation in docs/integrations/destinations/gcs.md

* Amended gcs.md with the right pull id

* Implemented all the fixes requested by tuliren as per https://github.com/airbytehq/airbyte/pull/4329

* Renaming all the files

* Branch alligned to S3 0.1.7 (with Avro and Jsonl). Removed redundant file by making S3 a dependency for GCS

* Removed some additional duplicates between GCS and S3

* Revert changes in the root files

* Revert jdbc files

* Fix package names

* Refactor gcs config

* Format code

* Fix gcs connection

* Format code

* Add acceptance tests

* Fix parquet acceptance test

* Add ci credentials

* Register the connector and update documentations

* Fix typo

* Format code

* Add unit test

* Add comments

* Update readme

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>

Co-authored-by: Marco Fontana <marco.fontana@sohohouse.com>
Co-authored-by: marcofontana.ing@gmail.com <marcofontana.ing@gmail.com>
Co-authored-by: Marco Fontana <MaxwellJK@users.noreply.github.com>
Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-07-16 19:22:12 -07:00
Anna Lvova
28239a87a1 🎉 Stripe Source: Fix subscriptions stream to return all kinds of subscriptions (including expired and canceled) (#4669)
#4669 Stripe Source: Fix subscriptions stream to return all kinds of subscriptions (including expired and canceled)
Co-authored-by: Oleksandr Bazarnov <oleksandr.bazarnov@globallogic.com>
2021-07-16 20:49:57 +03:00
Yaroslav Dudar
20f9c2da62 🎉 New source: Typeform (#4541)
Typeform source: Forms and Responses streams
2021-07-13 13:06:50 +03:00
vovavovavovavova
db223a4d06 🎉 New Source: Zendesk Sunshine (#4359)
* pre-PR

* add git config

* format

* Update airbyte-integrations/connectors/source-zendesk-sunshine/requirements.txt

upd requirements.txt remove extra

Co-authored-by: Eugene Kulak <widowmakerreborn@gmail.com>

* Update airbyte-integrations/connectors/source-zendesk-sunshine/source_zendesk_sunshine/streams.py

backoff time int to float (btw real return type in headers is integer)

Co-authored-by: Eugene Kulak <widowmakerreborn@gmail.com>

* requested changes

* fix newline absence && rm unnecessary temp file

* url_base to property

* rm extra var coming property

* rm extra var coming property

* save

* finishing updating the documentation

* forgotten definition

* add nullable to pass the test

* fix date in the log

Co-authored-by: Eugene Kulak <widowmakerreborn@gmail.com>
2021-07-09 09:55:40 +03:00
midavadim
ca3befee14 🎉 New Source: Paypal Transaction (#4240)
* Added spec.json

* Initialization

* added oauth2 autorization

* added spec, check, discover + catalogs/configurared_catalogs

* updated request_params

* added paging, slicing (1d)

* Use oath2 for paypal

* incremental sync, acceptance test

* incremental sync, acceptance test

* Added spec.json

* Initialization

* added oauth2 autorization

* added spec, check, discover + catalogs/configurared_catalogs

* updated request_params

* added paging, slicing (1d)

* Use oath2 for paypal

* incremental sync, acceptance test

* incremental sync, acceptance test

* Added spec.json

* Initialization

* added oauth2 autorization

* added spec, check, discover + catalogs/configurared_catalogs

* updated request_params

* added paging, slicing (1d)

* Use oath2 for paypal

* incremental sync, acceptance test

* updated slices and api limits, added validation for input dates

* added tests, fixed cursor related information in schemas and configured catalogs, removed old comments, re-arranged Base PaypalTransactionStream class

* added input param 'env' to support production and sandbox envs

* added support for sandbox option, updated pattern for optional end date option

* added github secrets

* added support for sandbox option, updated pattern for optional end date option

* fixed Copyright date, removed debug mesages

* added docs

* fix for test failure - The sync should produce at least one STATE message

* removed optional parameter 'end_date'

* removed detailed info about balances schema

* Delete employees.json

* Delete customers.json

* Added requests_per_minute rate limit

* added unit tests, added custom backoff

* added test for stream slices with stream state

* removed comments

* updated docs pages

* fixed format for json files

* fixed types in schemas and link to the schema. fixed primary key for Transactions stream

* updated stream slices

* Updated tests, unified stream_slices for both streams, all instance variables instantiated directly in __init__ method

* added CHANGELOG.md

* Added build seeds

* fixed closing double quotation mark

* added paypal entry in builds.md

* add fixture helper

* added paypal transaction generator script

* fixed styling

* maximum allowed start_date is extracted from API response now.

* fixed schemas

* fixed schemas - removed datetime

* now maximum_allowed_start_date is identified by last_refreshed_datetime attr in API response.

* added possibility to specify additional properties

Co-authored-by: Sherif Nada <snadalive@gmail.com>
2021-07-08 18:47:00 +03:00
Dmytro
b8b205a3ff 🎉 New source: Square (#4439) 2021-07-07 20:20:18 +03:00
oleh.zorenko
84ba3e79b3 🎉 Native GitHub connector (#4174)
* GitHub source initial version

All streams are in `full_refresh` mode only.

* Run format command

* Add handling for 404 error in Teams stream

* Update creds naming for github

* Update acceptance tests

* Update check_connection()

* Code review fixes

Remove `/integration_tests/catalog.json` file.
Use `Collaborators` class in `check_connection()` function.
Remove excessive data from GithubStream class.

* Remove unused import

* Implement requested changes

* Add incremental streams

* Remove `supports_incremental`

* Update docs

* Implement requested changes

* Implement requested changes

* Implement requested changes

* Bump connector version
2021-07-06 17:06:34 +03:00
Davin Chia
c83b134d1a Stablise Python Builds. (#4558)
See the PR description or issue 4559 for context.
2021-07-06 13:53:17 +08:00
vovavovavovavova
08b32d18ed 🎉 New Source: SurveyMonkey (#4097)
* add base files

* upd base

* save

* save sample files

* save & todo resolve state

* save the stage

* save the stage

* pre-gradle save

* fix catalogs

* merge && format

* normal stream slices

* apply requested changes

* requested_changes

* postfix

* update comment

* expand question stream add page_id

* upd typing once + rm missed inactual todo

* upd: caching with temp file

* upd requirements (requested)

* latest requested fixes

* posttext fix retn tempfile

* apply changes && comment

* newly requested changes

* return back spec -> changes to be set in new issue

* merge && usage comment

* add unit_test for get_updated_state function

* add simple date test

* parametrized (?) unittest

* upd comment on record_mode usage

* replace config with custom var

* pytest mark parametrized use

* rm unneeded var

* upd tests (requested)

* merge && upd texts

* add env airbyte_entrypoint
2021-07-05 19:35:46 +03:00
Davin Chia
71637a27c8 Improve Python Build. (#4540)
* Remove old pip build command. Deconflict Pydantic.

* Run test on ec2 instance.
2021-07-05 16:25:33 +08:00
Marcos Marx
78acd7e97e Add Airbyte Entrypoint to Intercom (#4524) 2021-07-03 21:21:39 +08:00
Sherif A. Nada
767f40b82e Publish Pubsub (#4354) 2021-06-25 11:48:30 -07:00
Yaroslav Dudar
2ccb1c2de0 🎉 New source: AWS CloudTrail (#4122)
AWS CloudTrail connector initial release
2021-06-25 11:10:07 +03:00
Harshith Mullapudi
bad2fb14e3 🎉 New source: Google Ads API (#3842)
* New source: Google Ads API

Co-authored-by: Sherif Nada <snadalive@gmail.com>
2021-06-14 16:16:32 +08:00
vovavovavovavova
07b09a9a12 🎉 Posthog: New Source (#3768)
Co-authored-by: Eugene Kulak <kulak.eugene@gmail.com>
2021-06-08 16:55:05 -07:00
Daniel Dubinin
1a147e472a Source MSSQL: Enabled SSL connections (#3893)
* Source MSSQL: Enabled SSL connections
2021-06-08 15:05:15 +03:00
Yevhenii
a90e5f0eca 🎉 New Source: Amplitude (#3664)
* New Amplitude Source: Full Refresh and Incremental Sync

* update api.py, add CHANGELOG.md file

* bump version

Co-authored-by: ykurochkin <y.kurochkin@zazmic.com>
2021-06-08 10:36:31 +03:00
Vadym
e699f39740 🎉 New Source: Harvest (#3709)
* Add harvest source.
Add Clients, Contacts, Company, Invoices, InvoiceMessages, InvoicePayments streams full_refresh support.

* Add all Harvest source streams.
Add config and schema files for all the streams.

* Complete streams implementation.
Add config and schemas.

* Fix expenses stream calls.
Fix ExpensesBase request_params method.
Add source docs and definitions.

* Update harvest.md docs.

* Comment source_definitions.yaml harvest definition.

* Delete Harvest standard source definitions.

* Add Harvest creds to commands.

* Update Harvest build.gradle.

* Add extra report streams schemas.
Update config files.
Update incremental streams mixin.

* Fix HarvestStreamWithPaginationSliced stream_slices method for incremental stream support

* Remove source-acceptance-test test requirement

* * Fix schema.
* Update streams
* Update docs

* Update billable_rates and cost_rates to full_refresh only

* Fix HarvestStreamIncrementalMixin request_params method

* Fix BillableRates and CostRates streams initialization

* Refactor streams.py code common usages.
Update HarvestTokenAuthenticator class definition.

* Add streams docstring.
Fix sub streams slicing.
Update spec and schemas.
Update md docs.

* Update report streams to be support incremental sync.
Update report schemas.

* Removed Uninvoiced and ProjectBudget incremental sync support.
Fix configs and configured catalog.

* Fix streams cursor value.
Update IncrementalReportsBase request_params.
Update schemas and config.

* Add harvest source definitions.
2021-06-07 15:11:30 +03:00
LiRen Tu
c13b9883e8 🎉 New destination: S3 (#3672)
* Update README icon links

* Update airbyte-specification doc

* Extend base connector

* Remove redundant region

* Separate warning from info

* Implement s3 destination

* Run format

* Clarify logging message

* Rename variables and functions

* Update documentation

* Rename and annotate interface

* Inject formatter factory

* Remove part size

* Fix spec field names and add unit tests

* Add unit tests for csv output formatter

* Format code

* Complete acceptance test and fix bugs

* Fix uuid

* Remove generator template files

They belong to another PR.

* Add unhappy test case

* Checkin airbyte state message

* Adjust stream transfer manager parameters

* Use underscore in filename

* Create csv sheet generator to handle data processing

* Format code

* Add partition id to filename

* Rename date format variable
2021-06-03 09:40:51 -07:00
Gabriel Rebessi
eade88efa7 New Source: Okta (#3563)
* Add source-okta

* Add PR suggestions

* Remove typo

* Remove unused file

* hard code page size

* add missing fields to catalog.json

* Add missing fields to catalog

* Add docs to Okta

* Add credential for okta

* Update docs/integrations/README.md

* Fix linting

* fix dependency conflict

* Fix integration tests

* update ci_credentials

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-06-02 14:03:00 -03:00
Phlair
c89b8870cc Added Azure Storage into CI yml (#3762) 2021-06-01 10:10:41 +08:00
Davin Chia
e391fc64fa Test command accepts repo to allow us to build connectors from forked repos. (#3745) 2021-05-30 21:52:48 +08:00
Davin Chia
86e0b54e4e Try to enable Test commands to run from forked branches. (#3740) 2021-05-29 23:40:50 +08:00
oleh.zorenko
5aa03643cf Update source-exchange-rates connector (#3566) 2021-05-26 21:59:42 +03:00
oleh.zorenko
c8711abbd6 🎉 New Source: Asana (#3510)
* Asana source

* Fix creds for CI.

* Update connection status in acceptance test config

Change status from `exception` to `failed`.

* Implement change request.

Remove few files from /integration_tests folder.
Use `stream_slices` and/or `request_params` functions instear of `read_records` function

* Update sample_config.json file.

* Update airbyte-integrations/connectors/source-asana/CHANGELOG.md

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>

* Update `stream_slices` using.

Create reneric `read_stream` function in AsanaStream class and move there logic from `stream_slices` function.

* Rename functions.

rename `read_stream` to `read_slices_from_records`.

* Changes about publishing.

Add asana source to `source_definitions.yaml`.
Add `asana.svg`.
Create connector related file in `STANDARD_SOURCE_DEFINITION` folder.

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-05-25 18:55:46 +03:00
Christophe Duong
8862fba1bb 🎉 Avoid dbt runtime exception "maximum recursion depth exceeded" in ephemeral materialization
* Create new test_ephemeral and refactor with test_normalization

* Add notes in docs

* Refactor common normalization tests into DbtIntegrationTest

* Bumpversion of normalization image
2021-05-21 18:07:20 +02:00
Yevhenii
3647c3cf1d 🎉 New Source: Recharge (#3466)
* Recharge Connector: Full Refresh add Incremental syncs, Acceptance tests, docs

Co-authored-by: ykurochkin <y.kurochkin@zazmic.com>
2021-05-20 14:45:52 +03:00
Eugene Kulak
d2eb5c0564 🎉 New Source: Klaviyo (#3463)
* Klaviyo source

* add test creds

* format and docs

* remove accidentally committed files

* fix build

* format

* restore page size

* add creds to CI

* update configured_catalog.json

* register in default sources

* fix spec

* Update airbyte-integrations/connectors/source-klaviyo/source_klaviyo/source.py

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>

* address comments from @sherifnada

* dump spec and enable spec test

* fix acceptance-test-config.yml

* fix configured_catalog.json

* fix configured_catalog.json

Co-authored-by: Eugene Kulak <kulak.eugene@gmail.com>
Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-05-19 18:36:09 -04:00
Christophe Duong
1e8fa3ad3f Upload test reports (from integration test slash commands) as GitHub artifacts (#3416)
* Archive test reports in github workflow

* Archive Test reports only when failures
2021-05-17 22:57:18 +02:00
Yevhenii
d44fc16e65 Source Stripe: Add Acceptance Tests to Stripe Connector (#3367)
* Add Acceptance Tests to Stripe Connector

* move configured_catalog.json to sample_files

* bump version

Co-authored-by: ykurochkin <y.kurochkin@zazmic.com>
2021-05-13 18:40:24 +03:00
vitaliizazmic
735b0783dc 🎉 New Source: google search console
* Google search console source #2257 - new source

* Google search console source #2257 - reformat

* Google search console source #2257 - adding gcc to docker container

* Google search console source #2257 - remove unused files, update acceptance test configs, change tap repo to airbyte

* Google search console source #2257 - updating acceptance tests configs

* Google search console source #2257 - updating acceptance cursor_paths

* Google search console source #2257 - temporary disable tests

* Google search console source #2257 - disable performance_report_date stream

* Google search console source #2257 - disable performance_report_date stream (update docs)

* Google search console source #2257 - disable performance_report_date stream for tests

* Google search console source #2257 - updating singer tap fork
2021-05-10 09:59:44 +03:00
Sherif A. Nada
36b9b48a2e Migrate CDK sources to new Pypi package & structure (#3303) 2021-05-09 17:22:41 -07:00
Jared Rhizor
32ee10e76d snowflake gcs staging (#3183)
* spec

* snowflake gcs

* spec comment

* fmt

* remove sout

* add docs

* format

* respond to comments

* fix

* bump to 0.3.3
2021-05-04 09:59:32 -07:00
Yevhenii
6bc63264e7 🎉 New Source: Zendesk Chat (#3088)
* Zendesk Chat connector: implement full_refresh sync

* format

* Source Zendesk Chat: Implement Incremental sync (#3157)

* Zendesk Chat: Implement Incremental sync

* Roll back the stream Chats to the previous endpoint

* update integration-base-python to v0.1.6

* update limit to 100

* add acceptence tests

* update test and setup configs

* remove unknown file

* update naming of classes

Co-authored-by: ykurochkin <y.kurochkin@zazmic.com>
Co-authored-by: Eugene Kulak <kulak.eugene@gmail.com>

* register Zendesk Chat as source

Co-authored-by: ykurochkin <y.kurochkin@zazmic.com>
Co-authored-by: Eugene Kulak <kulak.eugene@gmail.com>
2021-05-03 16:02:00 -04:00
Jared Rhizor
a3b4444372 snowflake s3 copy & redshift s3 refactor (#2921)
* snowflake s3 copy

* refactor (some tests still need updating)

* revert accidentally removing files

* re-add purge

* use baseconnector

* getconnection logs error

* use generic configs for copiers/suppliers/consumers

* use stream copier terminology

* remove weird delegate generics

* some test changes

* remove non-ci test that doesn't have a good equivalent atm

* misc

* finally fixed

* tests and fix

* add credentials

* fix redshift build

* respond to comments

* fix check

* bump versions for redshift and snowflake

* fix creds
2021-04-26 09:41:53 -07:00
vitaliizazmic
68d87c283d Smartsheets source setup CI
* Smartsheets source #2902 - setup CI

* Smartsheets source #2902 - configured_catalog.json

* Smartsheets source #2902 - update documentation
2021-04-22 17:56:15 +03:00
Yevhenii
f8286e4da3 🎉 New Source: Iterable (#2895)
* Source Iterable: support full_refresh/incremental sync (#2412)

Co-authored-by: ykurochkin <y.kurochkin@zazmic.com>
Co-authored-by: Sherif Nada <snadalive@gmail.com>
2021-04-20 16:21:17 +03:00
Davin Chia
b9014acfca :tada Namespace support. Supported source-destination pairs will now sync data into the same namespace as the source. (#2862)
This PR introduces the following behavior for JDBC sources:
Instead of streamName = schema.tableName,  this is now streamName = tableName and namespace = schema. This means that, when replicating from these sources, data will be replicated into a form matching the source. e.g. public.users (postgres source) -> public.users (postgres destination) instead of current behaviour of public.public_users. Since MySQL does not have schemas, the MySQL source uses the database as it's namespace.

To do so:
- Make namespace a field class concept in Airbyte Protocol. This allows the source to propagate namespace and destinations to write to a source-defined namespace. Also sets us up for future namespace related configurability.
- Add an optional namespace field to the AirbyteRecordMessage. This field will be set by sources that support namespace.
- Introduce AirbyteStreamNameNamespacePair as a type-safe manner of identifying streams throughout our code base.
- Modify base_normalisation to better support source defined namespace, specifically allowing normalisation of tables with the same name to different schemas.
2021-04-17 15:33:22 +08:00
vitaliizazmic
aec897867f 🎉 New Source: Quickbooks
* Google audit logs #2694 - incremental sync

* Google audit logs #2694 - configured catalog

* Google audit logs #2694 - new source

* Quickbooks #2309 - adding singer tap version

* Quickbooks #2309 - update documentation

* Quickbooks #2309 - remove unnecessary files

* Quickbooks #2309 - reformat

* Quickbooks #2309 - install gcc in docker container

* Quickbooks #2309 - adding source to IMAGES_TO_SKIP_SECOND_INCREMENTAL_READ

* Quickbooks #2309 - update sample_state.json

* Update docs/integrations/sources/quickbooks.md

* Quickbooks source #2309 - adding to health page

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-04-16 19:13:21 +03:00
Yevhenii
1294e41d76 🎉 New source: Zendesk Talk (#2775)
* Zendesk Talk #2346: full refresh/incremental sync connector with adopt best practices

Co-authored-by: ykurochkin <y.kurochkin@zazmic.com>
Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-04-13 19:50:01 +03:00
Davin Chia
e11ccfd0a1 Revert "Remove schema from stream name. (#2807)" (#2857)
This reverts commit 6e9d6fce59.
2021-04-12 14:56:11 -07:00
Davin Chia
6e9d6fce59 Remove schema from stream name. (#2807)
Last step (besides documentation) of namespace changes. This is a follow up to #2767 .

After this change, the following JDBC sources will change their behaviour to the behaviour described in the above document.

Namely, instead of streamName = schema.tableName, this will become streamName = tableName and namespace = schema. This means that, when replicating from these sources, data will be replicated into a form matching the source. e.g. public.users (postgres source) -> public.users (postgres destination) instead of current behaviour of public.public_users. Since MySQL does not have schemas, the MySQL source uses the database as it's namespace.

I cleaned up some bits of the CatalogHelpers. This affected the destinations, so I'm also running the destination tests.
2021-04-12 21:02:29 +08:00
vitaliizazmic
2327b353aa 🎉 New Source: Google Workspace Admin audit logs
* Google audit logs #2456 - Create new Google Workspace Admin Reports source for full refresh sync audit logs

* Update docs/integrations/sources/google-workspace-admin-reports.md

* Google audit logs #2456 - reformat

* Google audit logs #2456 - increase result per page

* Google audit logs #2456 - fix schema

* Google audit logs #2456 - add schemas package data

* Google audit logs #2456 - fixing timeout error

* Google audit logs #2456 - fixing configured_catalog.json

* Google audit logs #2456 - lookback spec parameter

* Google audit logs #2456 - remove end time

* skip testIdenticalFullRefreshes for source-google-workspace-admin-reports

* Tempo Source #2295 - reformat

* Update airbyte-integrations/connectors/source-google-workspace-admin-reports/source_google_workspace_admin_reports/spec.json

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
Co-authored-by: Eugene Kulak <kulak.eugene@gmail.com>
2021-04-01 02:27:38 +03:00
Sherif Nada
77b72dcf5b Revert "Revert "Merge branch 'master' of github.com:airbytehq/airbyte""
This reverts commit de66bf010d.
2021-03-23 15:12:01 -07:00
Sherif Nada
de66bf010d Revert "Merge branch 'master' of github.com:airbytehq/airbyte"
This reverts commit a3a27f2fa2, reversing
changes made to 5917feee28.
2021-03-23 15:09:44 -07:00