1
0
mirror of synced 2026-01-11 03:04:14 -05:00
Files
airbyte/airbyte-integrations/bases/base-python
Davin Chia 2188201c7c Upgrade to Pip 21.1. (#3070)
Upgrade to Pip 21.1 in preparation to upgrade DBT 19.

The latest Pip has

- a stricter resolver
- access to more up to date Python wheels (e.g. #2267 is solved since as any version after Pip 21 has access to ready-compiled Python wheels, see https://issues.apache.org/jira/browse/ARROW-11835).
- in theory faster pip installs (https://github.com/pypa/pip/issues/9187#issuecomment-826037738 makes me think the current Pip version is stable enough be consumed)

Also relax the constraint for `requests` and `backoff` since both were actually specifying incompatible versions that the old Pip resolver was silently swallowing.

Test this locally first by running git clean -dfx to remove all the existing venv files. The two different Pip versions do not work well.
2021-04-28 06:40:31 +08:00
..
2021-04-23 10:12:13 +08:00
2021-04-28 06:40:31 +08:00

Airbyte Python Connector Development Framework (CDK)

The Airbyte Python CDK is a framework for rapidly developing production-grade Airbyte connectors. The CDK currently offers helpers specific for creating Airbyte source connectors for:

  • HTTP APIs (REST APIs, GraphQL, etc..)
  • Singer Taps
  • Generic Python sources (anything not covered by the above)

The CDK provides an improved developer experience by providing basic implementation structure and abstracting away low-level glue boilerplate.

This document is a general introduction to the CDK. Readers should have basic familiarity with the Airbyte Specification before proceeding.

Getting started

Generate an empty connector using the code generator. First clone the Airbyte repository then from the repository root run

cd airbyte-integrations/connector-templates/generator
npm run generate

then follow the interactive prompt. Next, find all TODOs in the generated project directory -- they're accompanied by lots of comments explaining what you'll need to do in order to implement your connector. Upon completing all TODOs properly, you should have a functioning connector.

Additionally, you can follow this tutorial for a complete walkthrough of creating an HTTP connector using the Airbyte CDK.

Concepts & Documentation

See the overview docs for a tour through what the API offers.

Airbyte Specification

Find the reference docs for the Airbyte Specification (the interface for how sources and destinations interact) here.

Example Connectors

HTTP Connectors:

Singer connectors:

Simple Python connectors using the barebones Source abstraction: