airbyte-integrations/connectors/destination-s3-data-lake/README.md
To build the connector via the Airbyte CI CLI tool, navigate to the root of the Airbyte repository and execute the following command:
> airbyte-ci connectors --name=destination-iceberg-v2 build
To build the connector via Gradle, navigate to the root of the Airbyte repository and execute the following command:
> ./gradlew :airbyte-integrations:connectors:destination-iceberg-v2:build
In order to run the connector image locally, first either build the connector's Docker image using the commands found in this section of this document OR build the image using the following command:
> ./gradlew :airbyte-integrations:connectors:destination-iceberg-v2:buildConnectorImage
The built image will automatically be tagged with the dev label. To run the connector image, use the following commands:
docker run --rm airbyte/destination-iceberg-v2:dev spec
docker run --rm -v $(pwd)/secrets:/secrets airbyte/destination-iceberg-v2:dev check --config /secrets/config.json
docker run --rm -v $(pwd)/secrets:/secrets airbyte/destination-iceberg-v2:dev discover --config /secrets/config.json
docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/destination-iceberg-v2:dev read --config /secrets/config.json --catalog /integration_tests/configured_catalog.json
The connector contains both unit and acceptance tests which can each be executed from the local environment.
The connector uses a combination of Kotlin, JUnit 5 and MockK
to implement unit tests. Existing tests can be found within the destination-iceberg-v2 module in the conventional src/test/kotlin source folder. New tests should also be added to this location.
The unit tests can be executed either via the Airbyte CI CLI tool or Gradle:
> airbyte-ci connectors --name=destination-iceberg-v2 test
> ./gradlew :airbyte-integrations:connectors:destination-iceberg-v2:test
The Airbyte project a standard test suite that all destination connectors must pass. The tests require specific implementations of a few components in order to connect the acceptance test suite with the connector's specific logic. The existing acceptance test scaffolding can be found in the conventional src/test-integration/kotlin source folder.
The acceptance tests can be executed either via the Airbyte CI CLI tool or Gradle:
> airbyte-ci connectors --name=destination-iceberg-v2 test
> ./gradlew :airbyte-integrations:connectors:destination-iceberg-v2:integrationTest
You've checked out the repo, implemented a million dollar feature, and you're ready to share your changes with the world. Now what?
airbyte-ci connectors --name=destination-iceberg-v2 testmetadata.yaml: increment the dockerImageTag value. Please follow semantic versioning for connectors.metadata.yaml content is up to date.docs/integrations/destinations/iceberg-v2.md).