1
0
mirror of synced 2025-12-30 12:04:43 -05:00
Files
airbyte/airbyte-cdk/python/airbyte_cdk/connector_builder
Alexandre Girard df01616951 [Issue #23497] Deduplicate query parameters for declarative connectors (#28550)
* remove duplicate param

* remove duplicate params

* fix some of the typing issues

* fix typing issues

* newline

* format

* Enable by default

* Add missing file

* refactor and remove flag

* none check

* move line of code

* fix typing in rate_limiting

* comment

* use typedef

* else branch

* format

* gate the feature

* rename test

* fix the test

* only dedupe if the values are the same

* Add some tests

* convert values to strings

* Document the change

* implement in requester too
2023-07-25 14:22:25 -07:00
..

Connector Builder Backend

This is the backend for requests from the Connector Builder.

Local development

Locally running the Connector Builder backend

python main.py read --config path/to/config --catalog path/to/catalog

Note:

  • Requires the keys __injected_declarative_manifest and __command in its config, where __injected_declarative_manifest is a JSON manifest and __command is one of the commands handled by the ConnectorBuilderHandler (stream_read, list_streams, or resolve_manifest), i.e.
{
  "config": <normal config>,
  "__injected_declarative_manifest": {...},
  "__command": <"resolve_manifest" | "list_streams" | "test_read">
}

*See ConnectionSpecification for details on the "config" key if needed.

  • When the __command is list_streams or resolve_manifest, the argument to catalog should be an empty string.

Locally running the docker image

Build

First, make sure you build the latest Docker image:

./gradlew airbyte-cdk:python:airbyteDocker

The docker image name and tag, respectively, are the values of the io.airbyte.name and io.airbyte.version LABELs in the Dockerfile.

Run

Then run any of the connector commands as follows:

docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-declarative-manifest:dev read --config /secrets/config.json