diff --git a/airbyte-cdk/java/airbyte-cdk/archive/base-standard-source-test-file/build.gradle b/airbyte-cdk/java/airbyte-cdk/archive/base-standard-source-test-file/build.gradle index f58675f3de0861..b5406ad6852b6e 100644 --- a/airbyte-cdk/java/airbyte-cdk/archive/base-standard-source-test-file/build.gradle +++ b/airbyte-cdk/java/airbyte-cdk/archive/base-standard-source-test-file/build.gradle @@ -1,6 +1,6 @@ plugins { id 'application' - id 'airbyte-docker' + id 'airbyte-docker-legacy' } dependencies { diff --git a/airbyte-cdk/java/airbyte-cdk/archive/bases-destination-jdbc/build.gradle b/airbyte-cdk/java/airbyte-cdk/archive/bases-destination-jdbc/build.gradle index 3c011b4bdabddd..615620ec21d3ab 100644 --- a/airbyte-cdk/java/airbyte-cdk/archive/bases-destination-jdbc/build.gradle +++ b/airbyte-cdk/java/airbyte-cdk/archive/bases-destination-jdbc/build.gradle @@ -1,6 +1,6 @@ plugins { id 'application' - id 'airbyte-docker' + id 'airbyte-docker-legacy' id 'airbyte-integration-test-java' } diff --git a/airbyte-cdk/java/airbyte-cdk/archive/source-jdbc/build.gradle b/airbyte-cdk/java/airbyte-cdk/archive/source-jdbc/build.gradle index 8171ecf034b1a3..4a2f03abea10d8 100644 --- a/airbyte-cdk/java/airbyte-cdk/archive/source-jdbc/build.gradle +++ b/airbyte-cdk/java/airbyte-cdk/archive/source-jdbc/build.gradle @@ -1,6 +1,6 @@ plugins { id 'application' - id 'airbyte-docker' + id 'airbyte-docker-legacy' id 'airbyte-integration-test-java' id "java-library" // https://docs.gradle.org/current/userguide/java_testing.html#sec:java_test_fixtures diff --git a/airbyte-cdk/java/airbyte-cdk/archive/standard-source-test/build.gradle b/airbyte-cdk/java/airbyte-cdk/archive/standard-source-test/build.gradle index 16d271453eed4a..e8124883f3f144 100644 --- a/airbyte-cdk/java/airbyte-cdk/archive/standard-source-test/build.gradle +++ b/airbyte-cdk/java/airbyte-cdk/archive/standard-source-test/build.gradle @@ -6,7 +6,7 @@ buildscript { plugins { id 'application' - id 'airbyte-docker' + id 'airbyte-docker-legacy' } import org.jsoup.Jsoup; diff --git a/airbyte-cdk/java/airbyte-cdk/build.gradle b/airbyte-cdk/java/airbyte-cdk/build.gradle index b472856d243107..48e9b7179680bc 100644 --- a/airbyte-cdk/java/airbyte-cdk/build.gradle +++ b/airbyte-cdk/java/airbyte-cdk/build.gradle @@ -1,7 +1,6 @@ allprojects { apply plugin: 'java-library' apply plugin: 'maven-publish' - apply plugin: 'airbyte-docker' apply plugin: 'airbyte-java-cdk' apply plugin: 'airbyte-integration-test-java' apply plugin: 'airbyte-performance-test-java' diff --git a/airbyte-cdk/java/airbyte-cdk/db-sources/src/test/java/io/airbyte/cdk/integrations/debezium/internals/DebeziumEventUtilsTest.java b/airbyte-cdk/java/airbyte-cdk/db-sources/src/test/java/io/airbyte/cdk/integrations/debezium/internals/DebeziumEventUtilsTest.java index be46d4a561cf0d..acf5685687e444 100644 --- a/airbyte-cdk/java/airbyte-cdk/db-sources/src/test/java/io/airbyte/cdk/integrations/debezium/internals/DebeziumEventUtilsTest.java +++ b/airbyte-cdk/java/airbyte-cdk/db-sources/src/test/java/io/airbyte/cdk/integrations/debezium/internals/DebeziumEventUtilsTest.java @@ -27,6 +27,7 @@ import java.time.Instant; import java.util.List; import java.util.Map; +import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; class DebeziumEventUtilsTest { @@ -60,6 +61,7 @@ void testConvertRelationalDbChangeEvent() throws IOException { deepCompare(expectedDelete, actualDelete); } + @Disabled("See https://github.com/airbytehq/airbyte/issues/31032") @Test void testConvertMongoDbChangeEvent() throws IOException { final String objectId = "64f24244f95155351c4185b1"; diff --git a/airbyte-cdk/python/build.gradle b/airbyte-cdk/python/build.gradle index 02c7caf37ac084..63cc9992a73b6e 100644 --- a/airbyte-cdk/python/build.gradle +++ b/airbyte-cdk/python/build.gradle @@ -1,6 +1,6 @@ plugins { id 'airbyte-python' - id 'airbyte-docker' + id 'airbyte-docker-legacy' } def generateComponentManifestClassFiles = tasks.register('generateComponentManifestClassFiles', Exec) { diff --git a/airbyte-ci/connectors/connector_ops/connector_ops/qa_checks.py b/airbyte-ci/connectors/connector_ops/connector_ops/qa_checks.py index 462a05c1c4d0bc..c43ea67f4efeb9 100644 --- a/airbyte-ci/connectors/connector_ops/connector_ops/qa_checks.py +++ b/airbyte-ci/connectors/connector_ops/connector_ops/qa_checks.py @@ -7,7 +7,7 @@ from pathlib import Path from typing import Iterable, Optional, Set, Tuple -from connector_ops.utils import Connector +from connector_ops.utils import Connector, ConnectorLanguage from pydash.objects import get @@ -235,7 +235,11 @@ def check_connector_has_no_critical_vulnerabilities(connector: Connector) -> boo def check_metadata_version_matches_dockerfile_label(connector: Connector) -> bool: - return connector.version_in_dockerfile_label == connector.version + version_in_dockerfile = connector.version_in_dockerfile_label + if version_in_dockerfile is None: + # Java connectors don't have Dockerfiles. + return connector.language == ConnectorLanguage.JAVA + return version_in_dockerfile == connector.version QA_CHECKS = [ diff --git a/airbyte-ci/connectors/connector_ops/connector_ops/utils.py b/airbyte-ci/connectors/connector_ops/connector_ops/utils.py index fa4ca489c6c6e7..e6d6b92a80f103 100644 --- a/airbyte-ci/connectors/connector_ops/connector_ops/utils.py +++ b/airbyte-ci/connectors/connector_ops/connector_ops/utils.py @@ -314,12 +314,8 @@ def language(self) -> ConnectorLanguage: return ConnectorLanguage.LOW_CODE if Path(self.code_directory / "setup.py").is_file() or Path(self.code_directory / "pyproject.toml").is_file(): return ConnectorLanguage.PYTHON - try: - with open(self.code_directory / "Dockerfile") as dockerfile: - if "FROM airbyte/integration-base-java" in dockerfile.read(): - return ConnectorLanguage.JAVA - except FileNotFoundError: - pass + if Path(self.code_directory / "src" / "main" / "java").exists(): + return ConnectorLanguage.JAVA return None @property @@ -329,11 +325,14 @@ def version(self) -> str: return self.metadata["dockerImageTag"] @property - def version_in_dockerfile_label(self) -> str: - with open(self.code_directory / "Dockerfile") as f: - for line in f: - if "io.airbyte.version" in line: - return line.split("=")[1].strip() + def version_in_dockerfile_label(self) -> Optional[str]: + try: + with open(self.code_directory / "Dockerfile") as f: + for line in f: + if "io.airbyte.version" in line: + return line.split("=")[1].strip() + except FileNotFoundError as e: + return None raise ConnectorVersionNotFound( """ Could not find the connector version from its Dockerfile. diff --git a/airbyte-ci/connectors/connector_ops/poetry.lock b/airbyte-ci/connectors/connector_ops/poetry.lock index 57366bc97f4038..72e5805633b952 100644 --- a/airbyte-ci/connectors/connector_ops/poetry.lock +++ b/airbyte-ci/connectors/connector_ops/poetry.lock @@ -1058,6 +1058,7 @@ files = [ {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, @@ -1065,8 +1066,15 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, @@ -1083,6 +1091,7 @@ files = [ {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, @@ -1090,6 +1099,7 @@ files = [ {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, diff --git a/airbyte-ci/connectors/connector_ops/pyproject.toml b/airbyte-ci/connectors/connector_ops/pyproject.toml index 9234ec9d14a4d9..90bf5767bb9b28 100644 --- a/airbyte-ci/connectors/connector_ops/pyproject.toml +++ b/airbyte-ci/connectors/connector_ops/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "connector_ops" -version = "0.2.3" +version = "0.2.4" description = "Packaged maintained by the connector operations team to perform CI for connectors" authors = ["Airbyte "] diff --git a/airbyte-ci/connectors/pipelines/README.md b/airbyte-ci/connectors/pipelines/README.md index 3a8ce4fd8a7274..3ffd028c055872 100644 --- a/airbyte-ci/connectors/pipelines/README.md +++ b/airbyte-ci/connectors/pipelines/README.md @@ -398,6 +398,7 @@ This command runs the Python tests for a airbyte-ci poetry package. ## Changelog | Version | PR | Description | |---------| --------------------------------------------------------- |-----------------------------------------------------------------------------------------------------------| +| 1.4.4 | [#30743](https://github.com/airbytehq/airbyte/pull/30743) | Add `--disable-report-auto-open` and `--use-host-gradle-dist-tar` to allow gradle integration. | | 1.4.3 | [#30595](https://github.com/airbytehq/airbyte/pull/30595) | Add --version and version check | | 1.4.2 | [#30595](https://github.com/airbytehq/airbyte/pull/30595) | Remove directory name requirement | | 1.4.1 | [#30595](https://github.com/airbytehq/airbyte/pull/30595) | Load base migration guide into QA Test container for strict encrypt variants | @@ -486,3 +487,4 @@ and when in doubt, you can reinstall the CLI with the `--force` option: ```bash $ pipx reinstall pipelines --force ``` + diff --git a/airbyte-ci/connectors/pipelines/pipelines/bases.py b/airbyte-ci/connectors/pipelines/pipelines/bases.py index 0bb3b3c9f1f6ac..7e18f64bdd9994 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/bases.py +++ b/airbyte-ci/connectors/pipelines/pipelines/bases.py @@ -624,8 +624,9 @@ async def save(self) -> None: absolute_path = await local_html_path.resolve() if self.pipeline_context.is_local: self.pipeline_context.logger.info(f"HTML report saved locally: {absolute_path}") - self.pipeline_context.logger.info("Opening HTML report in browser.") - webbrowser.open(absolute_path.as_uri()) + if self.pipeline_context.open_report_in_browser: + self.pipeline_context.logger.info("Opening HTML report in browser.") + webbrowser.open(absolute_path.as_uri()) if self.remote_storage_enabled: await self.save_remote(local_html_path, self.html_report_remote_storage_key, "text/html") self.pipeline_context.logger.info(f"HTML report uploaded to {self.html_report_url}") diff --git a/airbyte-ci/connectors/pipelines/pipelines/builds/__init__.py b/airbyte-ci/connectors/pipelines/pipelines/builds/__init__.py index 3d92eabf6234e4..68cce376d3e7d8 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/builds/__init__.py +++ b/airbyte-ci/connectors/pipelines/pipelines/builds/__init__.py @@ -9,9 +9,10 @@ import anyio from connector_ops.utils import ConnectorLanguage -from dagger import Platform from pipelines.bases import ConnectorReport, StepResult -from pipelines.builds import common, java_connectors, python_connectors +from pipelines.builds import java_connectors, python_connectors +from pipelines.builds.common import LoadContainerToLocalDockerHost, StepStatus +from pipelines.consts import LOCAL_BUILD_PLATFORM from pipelines.contexts import ConnectorContext @@ -25,9 +26,6 @@ class NoBuildStepForLanguageError(Exception): ConnectorLanguage.JAVA: java_connectors.run_connector_build, } -BUILD_PLATFORMS = [Platform("linux/amd64"), Platform("linux/arm64")] -LOCAL_BUILD_PLATFORM = Platform(f"linux/{platform.machine()}") - async def run_connector_build(context: ConnectorContext) -> StepResult: """Run a build pipeline for a single connector.""" @@ -50,9 +48,8 @@ async def run_connector_build_pipeline(context: ConnectorContext, semaphore: any async with context: build_result = await run_connector_build(context) step_results.append(build_result) - if context.is_local and build_result.status is common.StepStatus.SUCCESS: - connector_to_load_to_local_docker_host = build_result.output_artifact[LOCAL_BUILD_PLATFORM] - load_image_result = await common.LoadContainerToLocalDockerHost(context, connector_to_load_to_local_docker_host).run() + if context.is_local and build_result.status is StepStatus.SUCCESS: + load_image_result = await LoadContainerToLocalDockerHost(context, LOCAL_BUILD_PLATFORM, build_result.output_artifact).run() step_results.append(load_image_result) context.report = ConnectorReport(context, step_results, name="BUILD RESULTS") return context.report diff --git a/airbyte-ci/connectors/pipelines/pipelines/builds/common.py b/airbyte-ci/connectors/pipelines/pipelines/builds/common.py index d8de2bffc4a1f0..2299ddbb251add 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/builds/common.py +++ b/airbyte-ci/connectors/pipelines/pipelines/builds/common.py @@ -3,51 +3,69 @@ # from abc import ABC -from typing import Tuple +from typing import List, Tuple import docker -from dagger import Container, Platform +from dagger import Container, ExecError, Platform, QueryError from pipelines.bases import Step, StepResult, StepStatus from pipelines.consts import BUILD_PLATFORMS from pipelines.contexts import ConnectorContext from pipelines.utils import export_container_to_tarball -class BuildConnectorImageBase(Step, ABC): +class BuildConnectorImagesBase(Step, ABC): + """ + A step to build connector images for a set of platforms. + """ + @property def title(self): - return f"Build {self.context.connector.technical_name} docker image for platform {self.build_platform}" + return f"Build {self.context.connector.technical_name} docker image for platform(s) {', '.join(self.build_platforms)}" - def __init__(self, context: ConnectorContext, build_platform: Platform) -> None: - self.build_platform = build_platform + def __init__(self, context: ConnectorContext, *build_platforms: List[Platform]) -> None: + self.build_platforms = build_platforms if build_platforms else BUILD_PLATFORMS super().__init__(context) + async def _run(self, *args) -> StepResult: + build_results_per_platform = {} + for platform in self.build_platforms: + try: + connector = await self._build_connector(platform, *args) + try: + await connector.with_exec(["spec"]) + except ExecError: + return StepResult( + self, StepStatus.FAILURE, stderr=f"Failed to run spec on the connector built for platform {platform}." + ) + build_results_per_platform[platform] = connector + except QueryError as e: + return StepResult(self, StepStatus.FAILURE, stderr=f"Failed to build connector image for platform {platform}: {e}") + success_message = ( + f"The {self.context.connector.technical_name} docker image " + f"was successfully built for platform(s) {', '.join(self.build_platforms)}" + ) + return StepResult(self, StepStatus.SUCCESS, stdout=success_message, output_artifact=build_results_per_platform) -class BuildConnectorImageForAllPlatformsBase(Step, ABC): - - ALL_PLATFORMS = BUILD_PLATFORMS - - title = f"Build connector image for {BUILD_PLATFORMS}" + async def _build_connector(self, platform: Platform, *args) -> Container: + """Implement the generation of the image for the platform and return the corresponding container. - def get_success_result(self, build_results_per_platform: dict[Platform, Container]) -> StepResult: - return StepResult( - self, - StepStatus.SUCCESS, - stdout="The connector image was successfully built for all platforms.", - output_artifact=build_results_per_platform, - ) + Returns: + Container: The container to package as a docker image for this platform. + """ + raise NotImplementedError("`BuildConnectorImagesBase`s must define a '_build_connector' attribute.") class LoadContainerToLocalDockerHost(Step): IMAGE_TAG = "dev" - def __init__(self, context: ConnectorContext, container: Container) -> None: + def __init__(self, context: ConnectorContext, platform: Platform, containers: dict[Platform, Container]) -> None: super().__init__(context) - self.container = container + self.platform = platform + self.container = containers[platform] @property def title(self): - return f"Load {self.image_name}:{self.IMAGE_TAG} to the local docker host." + return f"Load {self.image_name}:{self.IMAGE_TAG} for platform {self.platform} to the local docker host." @property def image_name(self) -> Tuple: diff --git a/airbyte-ci/connectors/pipelines/pipelines/builds/java_connectors.py b/airbyte-ci/connectors/pipelines/pipelines/builds/java_connectors.py index 6bd16c81e43294..01266cd2100c8f 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/builds/java_connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/builds/java_connectors.py @@ -2,10 +2,13 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from dagger import ExecError, File, QueryError +from typing import List, Optional, Tuple, Union + +from dagger import Container, Directory, ExecError, File, Host, Platform, QueryError from pipelines.actions import environments from pipelines.bases import StepResult, StepStatus -from pipelines.builds.common import BuildConnectorImageBase, BuildConnectorImageForAllPlatformsBase +from pipelines.builds.common import BuildConnectorImagesBase +from pipelines.consts import LOCAL_BUILD_PLATFORM from pipelines.contexts import ConnectorContext from pipelines.gradle import GradleTask @@ -18,76 +21,50 @@ class BuildConnectorDistributionTar(GradleTask): title = "Build connector tar" gradle_task_name = "distTar" - async def _run(self) -> StepResult: - result = await super()._run() - if result.status is not StepStatus.SUCCESS: - return result - - with_built_tar = result.output_artifact.with_workdir(f"{self.context.connector.code_directory}/build/distributions") - distributions = await with_built_tar.directory(".").entries() - tar_files = [f for f in distributions if f.endswith(".tar")] - if len(tar_files) == 1: - return StepResult( - self, - StepStatus.SUCCESS, - stdout="The distribution tar file for the current java connector was built.", - output_artifact=with_built_tar.file(tar_files[0]), - ) - elif len(tar_files) == 0: - return StepResult( - self, - StepStatus.FAILURE, - stderr="The distribution tar file for the current java connector was not built.", - ) - else: - return StepResult( - self, - StepStatus.FAILURE, - stderr="The distributions directory for this java connector contains multiple tar files. " - "We can't infer which one should be used. " - "Please review and delete any unnecessary tar files.", - ) - -class BuildConnectorImage(BuildConnectorImageBase): +class BuildConnectorImages(BuildConnectorImagesBase): """ - A step to build a Java connector image using the distTar Gradle task. + A step to build Java connector images using the distTar Gradle task. """ - async def _run(self, distribution_tar: File) -> StepResult: + async def _run(self, dist_dir: Directory) -> StepResult: + dist_tar: File try: - java_connector = await environments.with_airbyte_java_connector(self.context, distribution_tar, self.build_platform) - try: - await java_connector.with_exec(["spec"]) - except ExecError: - return StepResult( - self, StepStatus.FAILURE, stderr=f"Failed to run spec on the connector built for platform {self.build_platform}." + dir_files = await dist_dir.entries() + tar_files = [f for f in dir_files if f.endswith(".tar")] + num_files = len(tar_files) + if num_files != 1: + error_message = ( + "The distribution tar file for the current java connector was not built." + if num_files == 0 + else "More than one distribution tar file was built for the current java connector." ) - return StepResult( - self, StepStatus.SUCCESS, stdout="The connector image was successfully built.", output_artifact=java_connector - ) + return StepResult(self, StepStatus.FAILURE, stderr=error_message) + dist_tar = dist_dir.file(tar_files[0]) except QueryError as e: return StepResult(self, StepStatus.FAILURE, stderr=str(e)) + return await super()._run(dist_tar) - -class BuildConnectorImageForAllPlatforms(BuildConnectorImageForAllPlatformsBase): - """Build a Java connector image for all platforms.""" - - async def _run(self, distribution_tar: File) -> StepResult: - build_results_per_platform = {} - for platform in self.ALL_PLATFORMS: - build_connector_step_result = await BuildConnectorImage(self.context, platform).run(distribution_tar) - if build_connector_step_result.status is not StepStatus.SUCCESS: - return build_connector_step_result - build_results_per_platform[platform] = build_connector_step_result.output_artifact - return self.get_success_result(build_results_per_platform) + async def _build_connector(self, platform: Platform, dist_tar: File) -> Container: + return await environments.with_airbyte_java_connector(self.context, dist_tar, platform) async def run_connector_build(context: ConnectorContext) -> StepResult: """Create the java connector distribution tar file and build the connector image.""" + if context.use_host_gradle_dist_tar and context.is_local: + # Special case: use a local dist tar to speed up local development. + dist_dir = await context.dagger_client.host().directory(dist_tar_directory_path(context), include=["*.tar"]) + # Speed things up by only building for the local platform. + return await BuildConnectorImages(context, LOCAL_BUILD_PLATFORM).run(dist_dir) + + # Default case: distribution tar is built by the dagger pipeline. build_connector_tar_result = await BuildConnectorDistributionTar(context).run() if build_connector_tar_result.status is not StepStatus.SUCCESS: return build_connector_tar_result + dist_dir = await build_connector_tar_result.output_artifact.directory(dist_tar_directory_path(context)) + return await BuildConnectorImages(context).run(dist_dir) + - return await BuildConnectorImageForAllPlatforms(context).run(build_connector_tar_result.output_artifact) +def dist_tar_directory_path(context: ConnectorContext) -> str: + return f"{context.connector.code_directory}/build/distributions" diff --git a/airbyte-ci/connectors/pipelines/pipelines/builds/python_connectors.py b/airbyte-ci/connectors/pipelines/pipelines/builds/python_connectors.py index d18dc9537d8d02..83469bf0c87ac2 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/builds/python_connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/builds/python_connectors.py @@ -2,39 +2,22 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from dagger import QueryError +from dagger import Container, Platform from pipelines.actions.environments import with_airbyte_python_connector -from pipelines.bases import StepResult, StepStatus -from pipelines.builds.common import BuildConnectorImageBase, BuildConnectorImageForAllPlatformsBase +from pipelines.bases import StepResult +from pipelines.builds.common import BuildConnectorImagesBase from pipelines.contexts import ConnectorContext -class BuildConnectorImage(BuildConnectorImageBase): +class BuildConnectorImages(BuildConnectorImagesBase): """ A step to build a Python connector image. A spec command is run on the container to validate it was built successfully. """ - async def _run(self) -> StepResult: - connector = await with_airbyte_python_connector(self.context, self.build_platform) - try: - return await self.get_step_result(connector.with_exec(["spec"])) - except QueryError as e: - return StepResult(self, StepStatus.FAILURE, stderr=str(e)) - - -class BuildConnectorImageForAllPlatforms(BuildConnectorImageForAllPlatformsBase): - """Build a Python connector image for all platforms.""" - - async def _run(self) -> StepResult: - build_results_per_platform = {} - for platform in self.ALL_PLATFORMS: - build_connector_step_result = await BuildConnectorImage(self.context, platform).run() - if build_connector_step_result.status is not StepStatus.SUCCESS: - return build_connector_step_result - build_results_per_platform[platform] = build_connector_step_result.output_artifact - return self.get_success_result(build_results_per_platform) + async def _build_connector(self, platform: Platform) -> Container: + return await with_airbyte_python_connector(self.context, platform) async def run_connector_build(context: ConnectorContext) -> StepResult: - return await BuildConnectorImageForAllPlatforms(context).run() + return await BuildConnectorImages(context).run() diff --git a/airbyte-ci/connectors/pipelines/pipelines/commands/groups/connectors.py b/airbyte-ci/connectors/pipelines/pipelines/commands/groups/connectors.py index 864735a32095db..0f9bbe7ec1fe58 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/commands/groups/connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/commands/groups/connectors.py @@ -165,6 +165,13 @@ def get_selected_connectors_with_modified_files( default=False, type=bool, ) +@click.option( + "--enable-report-auto-open/--disable-report-auto-open", + is_flag=True, + help=("When enabled, finishes by opening a browser window to display an HTML report."), + default=True, + type=bool, +) @click.pass_context def connectors( ctx: click.Context, @@ -179,6 +186,7 @@ def connectors( execute_timeout: int, enable_dependency_scanning: bool, use_local_cdk: bool, + enable_report_auto_open: bool, ): """Group all the connectors-ci command.""" validate_environment(ctx.obj["is_local"], use_remote_secrets) @@ -188,6 +196,7 @@ def connectors( ctx.obj["concurrency"] = concurrency ctx.obj["execute_timeout"] = execute_timeout ctx.obj["use_local_cdk"] = use_local_cdk + ctx.obj["open_report_in_browser"] = enable_report_auto_open ctx.obj["selected_connectors_with_modified_files"] = get_selected_connectors_with_modified_files( names, support_levels, @@ -295,8 +304,15 @@ def send_commit_status_check() -> None: @connectors.command(cls=DaggerPipelineCommand, help="Build all images for the selected connectors.") +@click.option( + "--use-host-gradle-dist-tar", + is_flag=True, + help="Use gradle distTar output from host for java connectors.", + default=False, + type=bool, +) @click.pass_context -def build(ctx: click.Context) -> bool: +def build(ctx: click.Context, use_host_gradle_dist_tar: bool) -> bool: """Runs a build pipeline for the selected connectors.""" connectors_contexts = [ @@ -315,9 +331,13 @@ def build(ctx: click.Context) -> bool: ci_context=ctx.obj.get("ci_context"), ci_gcs_credentials=ctx.obj["ci_gcs_credentials"], use_local_cdk=ctx.obj.get("use_local_cdk"), + open_report_in_browser=ctx.obj.get("open_report_in_browser"), + use_host_gradle_dist_tar=use_host_gradle_dist_tar, ) for connector in ctx.obj["selected_connectors_with_modified_files"] ] + if use_host_gradle_dist_tar and not ctx.obj["is_local"]: + raise Exception("flag --use-host-gradle-dist-tar requires --is-local") anyio.run( run_connectors_pipelines, connectors_contexts, diff --git a/airbyte-ci/connectors/pipelines/pipelines/contexts.py b/airbyte-ci/connectors/pipelines/pipelines/contexts.py index a22161b9e6c006..b38a4960c546fe 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/contexts.py +++ b/airbyte-ci/connectors/pipelines/pipelines/contexts.py @@ -334,6 +334,8 @@ def __init__( fast_tests_only: bool = False, code_tests_only: bool = False, use_local_cdk: bool = False, + use_host_gradle_dist_tar: bool = False, + open_report_in_browser: bool = True, ): """Initialize a connector context. @@ -355,6 +357,8 @@ def __init__( fail_fast (bool, optional): Whether to fail fast. Defaults to False. fast_tests_only (bool, optional): Whether to run only fast tests. Defaults to False. code_tests_only (bool, optional): Whether to ignore non-code tests like QA and metadata checks. Defaults to False. + use_host_gradle_dist_tar (bool, optional): Used when developing java connectors with gradle. Defaults to False. + open_report_in_browser (bool, optional): Open HTML report in browser window. Defaults to True. """ self.pipeline_name = pipeline_name @@ -370,6 +374,8 @@ def __init__( self.fast_tests_only = fast_tests_only self.code_tests_only = code_tests_only self.use_local_cdk = use_local_cdk + self.use_host_gradle_dist_tar = use_host_gradle_dist_tar + self.open_report_in_browser = open_report_in_browser super().__init__( pipeline_name=pipeline_name, diff --git a/airbyte-ci/connectors/pipelines/pipelines/tests/java_connectors.py b/airbyte-ci/connectors/pipelines/pipelines/tests/java_connectors.py index ea312eb637bcd7..5d7c152112483c 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/tests/java_connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/tests/java_connectors.py @@ -10,9 +10,9 @@ from dagger import File, QueryError from pipelines.actions import environments, secrets from pipelines.bases import StepResult, StepStatus -from pipelines.builds import LOCAL_BUILD_PLATFORM -from pipelines.builds.java_connectors import BuildConnectorDistributionTar, BuildConnectorImage +from pipelines.builds.java_connectors import BuildConnectorDistributionTar, BuildConnectorImages, dist_tar_directory_path from pipelines.builds.normalization import BuildOrPullNormalization +from pipelines.consts import LOCAL_BUILD_PLATFORM from pipelines.contexts import ConnectorContext from pipelines.gradle import GradleTask from pipelines.tests.common import AcceptanceTests @@ -23,7 +23,7 @@ class IntegrationTests(GradleTask): """A step to run integrations tests for Java connectors using the integrationTestJava Gradle task.""" title = "Java Connector Integration Tests" - gradle_task_name = "integrationTestJava -x airbyteDocker -x assemble" + gradle_task_name = "integrationTestJava -x buildConnectorImage -x assemble" mount_connector_secrets = True bind_to_docker_host = True @@ -81,9 +81,8 @@ async def run_all_tests(context: ConnectorContext) -> List[StepResult]: if build_distribution_tar_results.status is StepStatus.FAILURE: return step_results - build_connector_image_results = await BuildConnectorImage(context, LOCAL_BUILD_PLATFORM).run( - build_distribution_tar_results.output_artifact - ) + dist_tar_dir = await build_distribution_tar_results.output_artifact.directory(dist_tar_directory_path(context)) + build_connector_image_results = await BuildConnectorImages(context, LOCAL_BUILD_PLATFORM).run(dist_tar_dir) step_results.append(build_connector_image_results) if build_connector_image_results.status is StepStatus.FAILURE: return step_results @@ -105,7 +104,8 @@ async def run_all_tests(context: ConnectorContext) -> List[StepResult]: else: normalization_tar_file = None - connector_image_tar_file, _ = await export_container_to_tarball(context, build_connector_image_results.output_artifact) + connector_container = build_connector_image_results.output_artifact[LOCAL_BUILD_PLATFORM] + connector_image_tar_file, _ = await export_container_to_tarball(context, connector_container) integration_tests_results = await IntegrationTests(context).run(connector_image_tar_file, normalization_tar_file) step_results.append(integration_tests_results) diff --git a/airbyte-ci/connectors/pipelines/pipelines/tests/python_connectors.py b/airbyte-ci/connectors/pipelines/pipelines/tests/python_connectors.py index 0a5b0aedd236a7..fbd89c4ee45850 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/tests/python_connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/tests/python_connectors.py @@ -11,8 +11,8 @@ from dagger import Container from pipelines.actions import environments, secrets from pipelines.bases import Step, StepResult, StepStatus -from pipelines.builds import LOCAL_BUILD_PLATFORM -from pipelines.builds.python_connectors import BuildConnectorImage +from pipelines.builds.python_connectors import BuildConnectorImages +from pipelines.consts import LOCAL_BUILD_PLATFORM from pipelines.contexts import ConnectorContext from pipelines.helpers.steps import run_steps from pipelines.tests.common import AcceptanceTests, PytestStep @@ -126,13 +126,14 @@ async def run_all_tests(context: ConnectorContext) -> List[StepResult]: step_results = await run_steps( [ ConnectorPackageInstall(context), - BuildConnectorImage(context, LOCAL_BUILD_PLATFORM), + BuildConnectorImages(context, LOCAL_BUILD_PLATFORM), ] ) if any([step_result.status is StepStatus.FAILURE for step_result in step_results]): return step_results connector_package_install_results, build_connector_image_results = step_results[0], step_results[1] - connector_image_tar_file, _ = await export_container_to_tarball(context, build_connector_image_results.output_artifact) + connector_container = build_connector_image_results.output_artifact[LOCAL_BUILD_PLATFORM] + connector_image_tar_file, _ = await export_container_to_tarball(context, connector_container) connector_container = connector_package_install_results.output_artifact context.connector_secrets = await secrets.get_connector_secrets(context) diff --git a/airbyte-ci/connectors/pipelines/poetry.lock b/airbyte-ci/connectors/pipelines/poetry.lock index df98d9f73e9179..00da4fe670ea9d 100644 --- a/airbyte-ci/connectors/pipelines/poetry.lock +++ b/airbyte-ci/connectors/pipelines/poetry.lock @@ -380,7 +380,7 @@ url = "../common_utils" [[package]] name = "connector-ops" -version = "0.2.3" +version = "0.2.4" description = "Packaged maintained by the connector operations team to perform CI for connectors" optional = false python-versions = "^3.10" diff --git a/airbyte-ci/connectors/pipelines/pyproject.toml b/airbyte-ci/connectors/pipelines/pyproject.toml index 09309467b77bf8..4564419a82e10e 100644 --- a/airbyte-ci/connectors/pipelines/pyproject.toml +++ b/airbyte-ci/connectors/pipelines/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "pipelines" -version = "1.4.3" +version = "1.4.4" description = "Packaged maintained by the connector operations team to perform CI for connectors' pipelines" authors = ["Airbyte "] diff --git a/airbyte-integrations/bases/base-java/build.gradle b/airbyte-integrations/bases/base-java/build.gradle index 224251f2304761..3741a0046d0b05 100644 --- a/airbyte-integrations/bases/base-java/build.gradle +++ b/airbyte-integrations/bases/base-java/build.gradle @@ -1,6 +1,6 @@ plugins { id 'java-library' - id 'airbyte-docker' + id 'airbyte-docker-legacy' } dependencies { diff --git a/airbyte-integrations/bases/base-normalization/build.gradle b/airbyte-integrations/bases/base-normalization/build.gradle index 8a2fda973e992e..280bf44cfc07a8 100644 --- a/airbyte-integrations/bases/base-normalization/build.gradle +++ b/airbyte-integrations/bases/base-normalization/build.gradle @@ -1,7 +1,7 @@ import org.apache.tools.ant.taskdefs.condition.Os plugins { - id 'airbyte-docker' + id 'airbyte-docker-legacy' id 'airbyte-python' } @@ -43,20 +43,6 @@ tasks.named('check').configure { dependsOn generate } -def customIntegrationTestPython = tasks.register('customIntegrationTestPython', PythonTask) { - module = "pytest" - command = "-s integration_tests" -} -customIntegrationTestPython.configure { - dependsOn tasks.named('installTestReqs') - dependsOn tasks.named('assemble') -} - -def customIntegrationTestsCoverage = tasks.named('_customIntegrationTestsCoverage') -customIntegrationTestsCoverage.configure { - dependsOn tasks.named('assemble') -} - [ 'bigquery', 'mysql', @@ -69,25 +55,13 @@ customIntegrationTestsCoverage.configure { 'tidb', 'duckdb', ].each {destinationName -> - customIntegrationTestPython.configure { + def integrationTestPython = tasks.named('integrationTestPython') + integrationTestPython.configure { dependsOn project(":airbyte-integrations:connectors:destination-$destinationName").tasks.named('assemble') } // Not really sure what this task does differently from customIntegrationTestPython, // but it seems to also run integration tests and as such it depends on the docker images. - customIntegrationTestsCoverage.configure { + integrationTestPython.configure { dependsOn project(":airbyte-integrations:connectors:destination-$destinationName").tasks.named('assemble') } } - -// DATs have some additional tests that exercise normalization code paths, -// so we want to run these in addition to the base-normalization integration tests. -// If you add more items here, make sure to also to have CI fetch their credentials. -// See git history for an example. -// TODO reenable these - they're causing flakiness in our test results, need to figure that out -// integrationTest.dependsOn(":airbyte-integrations:connectors:destination-bigquery:integrationTest") -// integrationTest.dependsOn(":airbyte-integrations:connectors:destination-postgres:integrationTest") -// integrationTest.dependsOn(":airbyte-integrations:connectors:destination-snowflake:integrationTest") - -tasks.named('customIntegrationTests').configure { - dependsOn customIntegrationTestPython -} diff --git a/airbyte-integrations/bases/base/build.gradle b/airbyte-integrations/bases/base/build.gradle index c5810d7529af14..0c2de175e2cc9b 100644 --- a/airbyte-integrations/bases/base/build.gradle +++ b/airbyte-integrations/bases/base/build.gradle @@ -1,3 +1,3 @@ plugins { - id 'airbyte-docker' + id 'airbyte-docker-legacy' } diff --git a/airbyte-integrations/bases/connector-acceptance-test/build.gradle b/airbyte-integrations/bases/connector-acceptance-test/build.gradle index 55c378f71fb732..74a0e279d54b0b 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/build.gradle +++ b/airbyte-integrations/bases/connector-acceptance-test/build.gradle @@ -1,6 +1,6 @@ plugins { // airbyte-docker is kept to support /legacy-publish until airbyte-ci cat publish command exists. - id 'airbyte-docker' + id 'airbyte-docker-legacy' } diff --git a/airbyte-integrations/connector-templates/destination-java/README.md.hbs b/airbyte-integrations/connector-templates/destination-java/README.md.hbs index 405c510368bb4b..a159616eb51fd6 100644 --- a/airbyte-integrations/connector-templates/destination-java/README.md.hbs +++ b/airbyte-integrations/connector-templates/destination-java/README.md.hbs @@ -50,7 +50,7 @@ Airbyte has a standard test suite that all destination connectors must pass. Imp All commands should be run from airbyte project root. To run unit tests: ``` -./gradlew :airbyte-integrations:connectors:destination-{{dashCase name}}:unitTest +./gradlew :airbyte-integrations:connectors:destination-{{dashCase name}}:check ``` To run acceptance and custom integration tests: ``` diff --git a/airbyte-integrations/connector-templates/destination-python/build.gradle b/airbyte-integrations/connector-templates/destination-python/build.gradle deleted file mode 100644 index 677f927afdb17b..00000000000000 --- a/airbyte-integrations/connector-templates/destination-python/build.gradle +++ /dev/null @@ -1,8 +0,0 @@ -plugins { - id 'airbyte-python' - id 'airbyte-docker' -} - -airbytePython { - moduleDirectory 'destination_{{snakeCase name}}' -} diff --git a/airbyte-integrations/connector-templates/source-configuration-based/README.md.hbs b/airbyte-integrations/connector-templates/source-configuration-based/README.md.hbs index 76138fb834b952..2e90bc9f516dcc 100644 --- a/airbyte-integrations/connector-templates/source-configuration-based/README.md.hbs +++ b/airbyte-integrations/connector-templates/source-configuration-based/README.md.hbs @@ -60,7 +60,7 @@ To run your integration tests with Docker, run: All commands should be run from airbyte project root. To run unit tests: ``` -./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}:unitTest +./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}:check ``` To run acceptance and custom integration tests: ``` diff --git a/airbyte-integrations/connector-templates/source-configuration-based/build.gradle.hbs b/airbyte-integrations/connector-templates/source-configuration-based/build.gradle.hbs deleted file mode 100644 index 908da0e3e62e89..00000000000000 --- a/airbyte-integrations/connector-templates/source-configuration-based/build.gradle.hbs +++ /dev/null @@ -1,8 +0,0 @@ -plugins { - id 'airbyte-python' - id 'airbyte-docker' -} - -airbytePython { - moduleDirectory 'source_{{snakeCase name}}' -} diff --git a/airbyte-integrations/connector-templates/source-generic/build.gradle b/airbyte-integrations/connector-templates/source-generic/build.gradle deleted file mode 100644 index f883bfede9d33a..00000000000000 --- a/airbyte-integrations/connector-templates/source-generic/build.gradle +++ /dev/null @@ -1,5 +0,0 @@ -plugins { - // Makes building the docker image a dependency of Gradle's "build" command. This way you could run your entire build inside a docker image - // via ./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}:build - id 'airbyte-docker' -} diff --git a/airbyte-integrations/connector-templates/source-python-http-api/README.md.hbs b/airbyte-integrations/connector-templates/source-python-http-api/README.md.hbs index d9a1dd2f192106..bb6ba72101e48e 100644 --- a/airbyte-integrations/connector-templates/source-python-http-api/README.md.hbs +++ b/airbyte-integrations/connector-templates/source-python-http-api/README.md.hbs @@ -111,7 +111,7 @@ To run your integration tests with docker All commands should be run from airbyte project root. To run unit tests: ``` -./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}:unitTest +./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}:check ``` To run acceptance and custom integration tests: ``` diff --git a/airbyte-integrations/connector-templates/source-python-http-api/build.gradle.hbs b/airbyte-integrations/connector-templates/source-python-http-api/build.gradle.hbs deleted file mode 100644 index 908da0e3e62e89..00000000000000 --- a/airbyte-integrations/connector-templates/source-python-http-api/build.gradle.hbs +++ /dev/null @@ -1,8 +0,0 @@ -plugins { - id 'airbyte-python' - id 'airbyte-docker' -} - -airbytePython { - moduleDirectory 'source_{{snakeCase name}}' -} diff --git a/airbyte-integrations/connector-templates/source-python/README.md.hbs b/airbyte-integrations/connector-templates/source-python/README.md.hbs index 55d74f809a9fa5..c1312301130a6c 100644 --- a/airbyte-integrations/connector-templates/source-python/README.md.hbs +++ b/airbyte-integrations/connector-templates/source-python/README.md.hbs @@ -107,7 +107,7 @@ To run your integration tests with docker All commands should be run from airbyte project root. To run unit tests: ``` -./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}:unitTest +./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}:check ``` To run acceptance and custom integration tests: ``` diff --git a/airbyte-integrations/connector-templates/source-python/build.gradle.hbs b/airbyte-integrations/connector-templates/source-python/build.gradle.hbs deleted file mode 100644 index ee62d3d29181b3..00000000000000 --- a/airbyte-integrations/connector-templates/source-python/build.gradle.hbs +++ /dev/null @@ -1,8 +0,0 @@ -plugins { - id 'airbyte-python' - id 'airbyte-docker' -} - -airbytePython { - moduleDirectory 'source_{{snakeCase name}}_singer' -} diff --git a/airbyte-integrations/connector-templates/source-singer/README.md.hbs b/airbyte-integrations/connector-templates/source-singer/README.md.hbs index 55398c85cc04bd..92f666a72d2658 100644 --- a/airbyte-integrations/connector-templates/source-singer/README.md.hbs +++ b/airbyte-integrations/connector-templates/source-singer/README.md.hbs @@ -107,7 +107,7 @@ To run your integration tests with docker All commands should be run from airbyte project root. To run unit tests: ``` -./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}-singer:unitTest +./gradlew :airbyte-integrations:connectors:source-{{dashCase name}}-singer:check ``` To run acceptance and custom integration tests: ``` diff --git a/airbyte-integrations/connector-templates/source-singer/build.gradle.hbs b/airbyte-integrations/connector-templates/source-singer/build.gradle.hbs deleted file mode 100644 index ee62d3d29181b3..00000000000000 --- a/airbyte-integrations/connector-templates/source-singer/build.gradle.hbs +++ /dev/null @@ -1,8 +0,0 @@ -plugins { - id 'airbyte-python' - id 'airbyte-docker' -} - -airbytePython { - moduleDirectory 'source_{{snakeCase name}}_singer' -} diff --git a/airbyte-integrations/connectors-performance/destination-harness/build.gradle b/airbyte-integrations/connectors-performance/destination-harness/build.gradle index 2083f36e3286db..8b4a2748dcb47b 100644 --- a/airbyte-integrations/connectors-performance/destination-harness/build.gradle +++ b/airbyte-integrations/connectors-performance/destination-harness/build.gradle @@ -1,6 +1,6 @@ plugins { id 'application' - id 'airbyte-docker' + id 'airbyte-docker-legacy' } application { diff --git a/airbyte-integrations/connectors-performance/source-harness/build.gradle b/airbyte-integrations/connectors-performance/source-harness/build.gradle index c0a5989ca182ff..09f8abbbcb7a32 100644 --- a/airbyte-integrations/connectors-performance/source-harness/build.gradle +++ b/airbyte-integrations/connectors-performance/source-harness/build.gradle @@ -1,6 +1,6 @@ plugins { id 'application' - id 'airbyte-docker' + id 'airbyte-docker-legacy' } application { diff --git a/airbyte-integrations/connectors/destination-azure-blob-storage/Dockerfile b/airbyte-integrations/connectors/destination-azure-blob-storage/Dockerfile deleted file mode 100644 index b1aa7966bbe51c..00000000000000 --- a/airbyte-integrations/connectors/destination-azure-blob-storage/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-azure-blob-storage - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-azure-blob-storage - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.1 -LABEL io.airbyte.name=airbyte/destination-azure-blob-storage diff --git a/airbyte-integrations/connectors/destination-bigquery-denormalized/build.gradle b/airbyte-integrations/connectors/destination-bigquery-denormalized/build.gradle deleted file mode 100644 index 00cb2e6289c826..00000000000000 --- a/airbyte-integrations/connectors/destination-bigquery-denormalized/build.gradle +++ /dev/null @@ -1,3 +0,0 @@ -plugins { - -} diff --git a/airbyte-integrations/connectors/destination-cassandra/Dockerfile b/airbyte-integrations/connectors/destination-cassandra/Dockerfile deleted file mode 100644 index 55aef547627cc6..00000000000000 --- a/airbyte-integrations/connectors/destination-cassandra/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-cassandra - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-cassandra - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.4 -LABEL io.airbyte.name=airbyte/destination-cassandra diff --git a/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/Dockerfile deleted file mode 100644 index a86c49a6ce0188..00000000000000 --- a/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/Dockerfile +++ /dev/null @@ -1,51 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -RUN yum install -y python3 python3-devel jq sshpass git && yum clean all && \ - alternatives --install /usr/bin/python python /usr/bin/python3 60 && \ - python -m ensurepip --upgrade && \ - pip3 install dbt-clickhouse>=1.4.0 - -# Luckily, none of normalization's files conflict with destination-clickhouse's files :) -# We don't enforce that in any way, but hopefully we're only living in this state for a short time. -COPY --from=airbyte/normalization-clickhouse:dev /airbyte /airbyte -# Install python dependencies -WORKDIR /airbyte/base_python_structs -RUN pip3 install . -WORKDIR /airbyte/normalization_code -RUN pip3 install . -WORKDIR /airbyte/normalization_code/dbt-template/ -# Download external dbt dependencies -# amazon linux 2 isn't compatible with urllib3 2.x, so force 1.26.15 -RUN pip3 install "urllib3<2" -RUN dbt deps - -WORKDIR /airbyte - -ENV APPLICATION destination-clickhouse-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-clickhouse-strict-encrypt -ENV AIRBYTE_NORMALIZATION_INTEGRATION clickhouse - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.5 -LABEL io.airbyte.name=airbyte/destination-clickhouse-strict-encrypt - -ENV AIRBYTE_ENTRYPOINT "/airbyte/run_with_normalization.sh" -ENTRYPOINT ["/airbyte/run_with_normalization.sh"] diff --git a/airbyte-integrations/connectors/destination-clickhouse/Dockerfile b/airbyte-integrations/connectors/destination-clickhouse/Dockerfile deleted file mode 100644 index 98560ddb4f045a..00000000000000 --- a/airbyte-integrations/connectors/destination-clickhouse/Dockerfile +++ /dev/null @@ -1,54 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -RUN yum install -y python3 python3-devel jq sshpass git gcc-c++ && yum clean all && \ - alternatives --install /usr/bin/python python /usr/bin/python3 60 && \ - python -m ensurepip --upgrade && \ - # these two lines are a workaround for https://github.com/yaml/pyyaml/issues/601 - pip3 install wheel && \ - pip3 install "Cython<3.0" "pyyaml==5.4" --no-build-isolation && \ - pip3 install dbt-clickhouse>=1.4.0 - -# Luckily, none of normalization's files conflict with destination-clickhouse's files :) -# We don't enforce that in any way, but hopefully we're only living in this state for a short time. -COPY --from=airbyte/normalization-clickhouse:dev /airbyte /airbyte -# Install python dependencies -WORKDIR /airbyte/base_python_structs -RUN pip3 install . -WORKDIR /airbyte/normalization_code -RUN pip3 install . -WORKDIR /airbyte/normalization_code/dbt-template/ -# Download external dbt dependencies -# amazon linux 2 isn't compatible with urllib3 2.x, so force 1.26.15 -RUN pip3 install "urllib3<2" -RUN dbt deps - -WORKDIR /airbyte - -ENV APPLICATION destination-clickhouse -ENV AIRBYTE_NORMALIZATION_INTEGRATION clickhouse - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-clickhouse - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.5 -LABEL io.airbyte.name=airbyte/destination-clickhouse - -ENV AIRBYTE_ENTRYPOINT "/airbyte/run_with_normalization.sh" -ENTRYPOINT ["/airbyte/run_with_normalization.sh"] diff --git a/airbyte-integrations/connectors/destination-csv/Dockerfile b/airbyte-integrations/connectors/destination-csv/Dockerfile deleted file mode 100644 index 9c358e9d0c64c2..00000000000000 --- a/airbyte-integrations/connectors/destination-csv/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-csv - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-csv - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=1.0.0 -LABEL io.airbyte.name=airbyte/destination-csv diff --git a/airbyte-integrations/connectors/destination-databricks/Dockerfile b/airbyte-integrations/connectors/destination-databricks/Dockerfile deleted file mode 100644 index 450c77f83318d2..00000000000000 --- a/airbyte-integrations/connectors/destination-databricks/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-databricks - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-databricks - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=1.1.0 -LABEL io.airbyte.name=airbyte/destination-databricks diff --git a/airbyte-integrations/connectors/destination-dev-null/Dockerfile b/airbyte-integrations/connectors/destination-dev-null/Dockerfile deleted file mode 100644 index 51c5412192effb..00000000000000 --- a/airbyte-integrations/connectors/destination-dev-null/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-dev-null - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-dev-null - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.3.0 -LABEL io.airbyte.name=airbyte/destination-dev-null diff --git a/airbyte-integrations/connectors/destination-doris/Dockerfile b/airbyte-integrations/connectors/destination-doris/Dockerfile deleted file mode 100644 index b85292c6a93ed5..00000000000000 --- a/airbyte-integrations/connectors/destination-doris/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-doris - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-doris - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.0 -LABEL io.airbyte.name=airbyte/destination-doris diff --git a/airbyte-integrations/connectors/destination-duckdb/build.gradle b/airbyte-integrations/connectors/destination-duckdb/build.gradle index c5810d7529af14..0c2de175e2cc9b 100644 --- a/airbyte-integrations/connectors/destination-duckdb/build.gradle +++ b/airbyte-integrations/connectors/destination-duckdb/build.gradle @@ -1,3 +1,3 @@ plugins { - id 'airbyte-docker' + id 'airbyte-docker-legacy' } diff --git a/airbyte-integrations/connectors/destination-dynamodb/Dockerfile b/airbyte-integrations/connectors/destination-dynamodb/Dockerfile deleted file mode 100644 index ab8505d1df6cee..00000000000000 --- a/airbyte-integrations/connectors/destination-dynamodb/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-dynamodb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-dynamodb - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.7 -LABEL io.airbyte.name=airbyte/destination-dynamodb diff --git a/airbyte-integrations/connectors/destination-e2e-test/Dockerfile b/airbyte-integrations/connectors/destination-e2e-test/Dockerfile deleted file mode 100644 index 1fe676aa4ddd94..00000000000000 --- a/airbyte-integrations/connectors/destination-e2e-test/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-e2e-test - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-e2e-test - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.3.0 -LABEL io.airbyte.name=airbyte/destination-e2e-test diff --git a/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/Dockerfile deleted file mode 100644 index 9d699b6b7f6faa..00000000000000 --- a/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-elasticsearch-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-elasticsearch-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.6 -LABEL io.airbyte.name=airbyte/destination-elasticsearch-strict-encrypt diff --git a/airbyte-integrations/connectors/destination-elasticsearch/Dockerfile b/airbyte-integrations/connectors/destination-elasticsearch/Dockerfile deleted file mode 100644 index a458e479af2fe6..00000000000000 --- a/airbyte-integrations/connectors/destination-elasticsearch/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-elasticsearch - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-elasticsearch - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.6 -LABEL io.airbyte.name=airbyte/destination-elasticsearch diff --git a/airbyte-integrations/connectors/destination-exasol/Dockerfile b/airbyte-integrations/connectors/destination-exasol/Dockerfile deleted file mode 100644 index 86ed795bf790aa..00000000000000 --- a/airbyte-integrations/connectors/destination-exasol/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-exasol - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-exasol - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.1 -LABEL io.airbyte.name=airbyte/destination-exasol diff --git a/airbyte-integrations/connectors/destination-gcs/Dockerfile b/airbyte-integrations/connectors/destination-gcs/Dockerfile deleted file mode 100644 index df7f1d9ffd941a..00000000000000 --- a/airbyte-integrations/connectors/destination-gcs/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-gcs - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-gcs - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.4.4 -LABEL io.airbyte.name=airbyte/destination-gcs diff --git a/airbyte-integrations/connectors/destination-iceberg/Dockerfile b/airbyte-integrations/connectors/destination-iceberg/Dockerfile deleted file mode 100644 index 283e51dd1f32e7..00000000000000 --- a/airbyte-integrations/connectors/destination-iceberg/Dockerfile +++ /dev/null @@ -1,33 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-iceberg - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-iceberg - -ENV JAVA_OPTS="--add-opens java.base/java.lang=ALL-UNNAMED \ - --add-opens java.base/java.util=ALL-UNNAMED \ - --add-opens java.base/java.lang.reflect=ALL-UNNAMED \ - --add-opens java.base/java.text=ALL-UNNAMED \ - --add-opens java.base/sun.nio.ch=ALL-UNNAMED \ - --add-opens java.base/java.nio=ALL-UNNAMED " - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.4 -LABEL io.airbyte.name=airbyte/destination-iceberg diff --git a/airbyte-integrations/connectors/destination-kafka/Dockerfile b/airbyte-integrations/connectors/destination-kafka/Dockerfile deleted file mode 100644 index 488e2fe3185fe0..00000000000000 --- a/airbyte-integrations/connectors/destination-kafka/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-kafka - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-kafka - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.10 -LABEL io.airbyte.name=airbyte/destination-kafka diff --git a/airbyte-integrations/connectors/destination-keen/Dockerfile b/airbyte-integrations/connectors/destination-keen/Dockerfile deleted file mode 100644 index 0f09ca580aa3d8..00000000000000 --- a/airbyte-integrations/connectors/destination-keen/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-keen - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-keen - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.4 -LABEL io.airbyte.name=airbyte/destination-keen diff --git a/airbyte-integrations/connectors/destination-kinesis/Dockerfile b/airbyte-integrations/connectors/destination-kinesis/Dockerfile deleted file mode 100644 index dc881a2c96f959..00000000000000 --- a/airbyte-integrations/connectors/destination-kinesis/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-kinesis - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-kinesis - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.5 -LABEL io.airbyte.name=airbyte/destination-kinesis diff --git a/airbyte-integrations/connectors/destination-kvdb/build.gradle b/airbyte-integrations/connectors/destination-kvdb/build.gradle deleted file mode 100644 index 7045290b560a32..00000000000000 --- a/airbyte-integrations/connectors/destination-kvdb/build.gradle +++ /dev/null @@ -1,4 +0,0 @@ -plugins { - id 'airbyte-python' - id 'airbyte-docker' -} diff --git a/airbyte-integrations/connectors/destination-local-json/Dockerfile b/airbyte-integrations/connectors/destination-local-json/Dockerfile deleted file mode 100644 index e7c1832c055ec7..00000000000000 --- a/airbyte-integrations/connectors/destination-local-json/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-local-json - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-local-json - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.11 -LABEL io.airbyte.name=airbyte/destination-local-json diff --git a/airbyte-integrations/connectors/destination-mariadb-columnstore/Dockerfile b/airbyte-integrations/connectors/destination-mariadb-columnstore/Dockerfile deleted file mode 100644 index cb6bcd655fd26c..00000000000000 --- a/airbyte-integrations/connectors/destination-mariadb-columnstore/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-mariadb-columnstore - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-mariadb-columnstore - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.7 -LABEL io.airbyte.name=airbyte/destination-mariadb-columnstore diff --git a/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/Dockerfile deleted file mode 100644 index a20abf6c47152f..00000000000000 --- a/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-mongodb-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-mongodb-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-mongodb-strict-encrypt diff --git a/airbyte-integrations/connectors/destination-mongodb/Dockerfile b/airbyte-integrations/connectors/destination-mongodb/Dockerfile deleted file mode 100644 index 94afbd1579adc0..00000000000000 --- a/airbyte-integrations/connectors/destination-mongodb/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-mongodb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-mongodb - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-mongodb diff --git a/airbyte-integrations/connectors/destination-mqtt/Dockerfile b/airbyte-integrations/connectors/destination-mqtt/Dockerfile deleted file mode 100644 index 478badef864e61..00000000000000 --- a/airbyte-integrations/connectors/destination-mqtt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-mqtt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-mqtt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.3 -LABEL io.airbyte.name=airbyte/destination-mqtt diff --git a/airbyte-integrations/connectors/destination-mssql-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/destination-mssql-strict-encrypt/Dockerfile deleted file mode 100644 index d2d36689b8d191..00000000000000 --- a/airbyte-integrations/connectors/destination-mssql-strict-encrypt/Dockerfile +++ /dev/null @@ -1,51 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -RUN yum install -y python3 python3-devel jq sshpass git && yum clean all && \ - alternatives --install /usr/bin/python python /usr/bin/python3 60 && \ - python -m ensurepip --upgrade && \ - pip3 install dbt-sqlserver==1.0.0 - -# Luckily, none of normalization's files conflict with destination-mssql's files :) -# We don't enforce that in any way, but hopefully we're only living in this state for a short time. -COPY --from=airbyte/normalization-mssql:dev /airbyte /airbyte -# Install python dependencies -WORKDIR /airbyte/base_python_structs -RUN pip3 install . -WORKDIR /airbyte/normalization_code -RUN pip3 install . -WORKDIR /airbyte/normalization_code/dbt-template/ -# Download external dbt dependencies -# amazon linux 2 isn't compatible with urllib3 2.x, so force 1.26.15 -RUN pip3 install "urllib3<2" -RUN dbt deps - -WORKDIR /airbyte - -ENV APPLICATION destination-mssql-strict-encrypt -ENV AIRBYTE_NORMALIZATION_INTEGRATION mssql - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-mssql-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-mssql-strict-encrypt - -ENV AIRBYTE_ENTRYPOINT "/airbyte/run_with_normalization.sh" -ENTRYPOINT ["/airbyte/run_with_normalization.sh"] diff --git a/airbyte-integrations/connectors/destination-mssql/Dockerfile b/airbyte-integrations/connectors/destination-mssql/Dockerfile deleted file mode 100644 index d51950f7c0d593..00000000000000 --- a/airbyte-integrations/connectors/destination-mssql/Dockerfile +++ /dev/null @@ -1,54 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -RUN yum install -y python3 python3-devel jq sshpass git && yum clean all && \ - alternatives --install /usr/bin/python python /usr/bin/python3 60 && \ - python -m ensurepip --upgrade && \ - # these two lines are a workaround for https://github.com/yaml/pyyaml/issues/601 - pip3 install wheel && \ - pip3 install "Cython<3.0" "pyyaml==5.4" --no-build-isolation && \ - pip3 install dbt-sqlserver==1.0.0 - -# Luckily, none of normalization's files conflict with destination-mssql's files :) -# We don't enforce that in any way, but hopefully we're only living in this state for a short time. -COPY --from=airbyte/normalization-mssql:dev /airbyte /airbyte -# Install python dependencies -WORKDIR /airbyte/base_python_structs -RUN pip3 install . -WORKDIR /airbyte/normalization_code -RUN pip3 install . -WORKDIR /airbyte/normalization_code/dbt-template/ -# Download external dbt dependencies -# amazon linux 2 isn't compatible with urllib3 2.x, so force 1.26.15 -RUN pip3 install "urllib3<2" -RUN dbt deps - -WORKDIR /airbyte - -ENV APPLICATION destination-mssql -ENV AIRBYTE_NORMALIZATION_INTEGRATION mssql - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-mssql - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-mssql - -ENV AIRBYTE_ENTRYPOINT "/airbyte/run_with_normalization.sh" -ENTRYPOINT ["/airbyte/run_with_normalization.sh"] diff --git a/airbyte-integrations/connectors/destination-mysql-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/destination-mysql-strict-encrypt/Dockerfile deleted file mode 100644 index 3488862613b21a..00000000000000 --- a/airbyte-integrations/connectors/destination-mysql-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-mysql-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-mysql-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-mysql-strict-encrypt diff --git a/airbyte-integrations/connectors/destination-mysql/Dockerfile b/airbyte-integrations/connectors/destination-mysql/Dockerfile deleted file mode 100644 index 8152df3ad141c9..00000000000000 --- a/airbyte-integrations/connectors/destination-mysql/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-mysql - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-mysql - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-mysql diff --git a/airbyte-integrations/connectors/destination-oracle-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/destination-oracle-strict-encrypt/Dockerfile deleted file mode 100644 index 9ce70339438b5b..00000000000000 --- a/airbyte-integrations/connectors/destination-oracle-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-oracle-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-oracle-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-oracle-strict-encrypt diff --git a/airbyte-integrations/connectors/destination-oracle/Dockerfile b/airbyte-integrations/connectors/destination-oracle/Dockerfile deleted file mode 100644 index 04cd94af0dc0b4..00000000000000 --- a/airbyte-integrations/connectors/destination-oracle/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-oracle - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-oracle - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-oracle diff --git a/airbyte-integrations/connectors/destination-postgres-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/destination-postgres-strict-encrypt/Dockerfile deleted file mode 100644 index 9901983464072c..00000000000000 --- a/airbyte-integrations/connectors/destination-postgres-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-postgres-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-postgres-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.4.0 -LABEL io.airbyte.name=airbyte/destination-postgres-strict-encrypt diff --git a/airbyte-integrations/connectors/destination-postgres/Dockerfile b/airbyte-integrations/connectors/destination-postgres/Dockerfile deleted file mode 100644 index 7d9f429bff5bce..00000000000000 --- a/airbyte-integrations/connectors/destination-postgres/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-postgres - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-postgres - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.4.0 -LABEL io.airbyte.name=airbyte/destination-postgres diff --git a/airbyte-integrations/connectors/destination-pubsub/Dockerfile b/airbyte-integrations/connectors/destination-pubsub/Dockerfile deleted file mode 100644 index eb148e9d099674..00000000000000 --- a/airbyte-integrations/connectors/destination-pubsub/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-pubsub - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-pubsub - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/destination-pubsub diff --git a/airbyte-integrations/connectors/destination-pulsar/Dockerfile b/airbyte-integrations/connectors/destination-pulsar/Dockerfile deleted file mode 100644 index 0b7107f149d1ad..00000000000000 --- a/airbyte-integrations/connectors/destination-pulsar/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-pulsar - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-pulsar - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.3 -LABEL io.airbyte.name=airbyte/destination-pulsar diff --git a/airbyte-integrations/connectors/destination-r2/Dockerfile b/airbyte-integrations/connectors/destination-r2/Dockerfile deleted file mode 100644 index d5814fc31d3cf8..00000000000000 --- a/airbyte-integrations/connectors/destination-r2/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-r2 - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-r2 - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.0 -LABEL io.airbyte.name=airbyte/destination-r2 diff --git a/airbyte-integrations/connectors/destination-redis/Dockerfile b/airbyte-integrations/connectors/destination-redis/Dockerfile deleted file mode 100644 index 6bc98882500632..00000000000000 --- a/airbyte-integrations/connectors/destination-redis/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-redis - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-redis - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.4 -LABEL io.airbyte.name=airbyte/destination-redis diff --git a/airbyte-integrations/connectors/destination-redpanda/Dockerfile b/airbyte-integrations/connectors/destination-redpanda/Dockerfile deleted file mode 100644 index e363586fa18cb8..00000000000000 --- a/airbyte-integrations/connectors/destination-redpanda/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-redpanda - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-redpanda - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.0 -LABEL io.airbyte.name=airbyte/destination-redpanda diff --git a/airbyte-integrations/connectors/destination-redshift/Dockerfile b/airbyte-integrations/connectors/destination-redshift/Dockerfile deleted file mode 100644 index 85e41effc43812..00000000000000 --- a/airbyte-integrations/connectors/destination-redshift/Dockerfile +++ /dev/null @@ -1,53 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -# amazon linux 2 isn't compatible with urllib3 2.x, so force 1.26.15 -RUN yum install -y python3 python3-devel jq sshpass git gcc-c++ && yum clean all && \ - alternatives --install /usr/bin/python python /usr/bin/python3 60 && \ - python -m ensurepip --upgrade && \ - # these two lines are a workaround for https://github.com/yaml/pyyaml/issues/601 - pip3 install wheel && \ - pip3 install "Cython<3.0" "pyyaml==5.4" --no-build-isolation && \ - pip3 install dbt-redshift==1.0.0 "urllib3<2" - -# Luckily, none of normalization's files conflict with destination-bigquery's files :) -# We don't enforce that in any way, but hopefully we're only living in this state for a short time. -COPY --from=airbyte/normalization-redshift:dev /airbyte /airbyte -# Install python dependencies -WORKDIR /airbyte/base_python_structs -RUN pip3 install . -WORKDIR /airbyte/normalization_code -RUN pip3 install . -WORKDIR /airbyte/normalization_code/dbt-template/ -# Download external dbt dependencies -RUN dbt deps - -WORKDIR /airbyte - -ENV APPLICATION destination-redshift -ENV AIRBYTE_NORMALIZATION_INTEGRATION redshift - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-redshift - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.6.5 -LABEL io.airbyte.name=airbyte/destination-redshift - -ENV AIRBYTE_ENTRYPOINT "/airbyte/run_with_normalization.sh" -ENTRYPOINT ["/airbyte/run_with_normalization.sh"] diff --git a/airbyte-integrations/connectors/destination-rockset/Dockerfile b/airbyte-integrations/connectors/destination-rockset/Dockerfile deleted file mode 100644 index 85b281c64662da..00000000000000 --- a/airbyte-integrations/connectors/destination-rockset/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-rockset - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-rockset - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.4 -LABEL io.airbyte.name=airbyte/destination-rockset diff --git a/airbyte-integrations/connectors/destination-s3-glue/Dockerfile b/airbyte-integrations/connectors/destination-s3-glue/Dockerfile deleted file mode 100644 index df4ecb366ea04f..00000000000000 --- a/airbyte-integrations/connectors/destination-s3-glue/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-s3-glue - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-s3-glue - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.7 -LABEL io.airbyte.name=airbyte/destination-s3-glue diff --git a/airbyte-integrations/connectors/destination-s3/Dockerfile b/airbyte-integrations/connectors/destination-s3/Dockerfile deleted file mode 100644 index 18668204b38380..00000000000000 --- a/airbyte-integrations/connectors/destination-s3/Dockerfile +++ /dev/null @@ -1,35 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-s3 - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-s3 - -COPY --from=build /airbyte /airbyte -RUN /bin/bash -c 'set -e && \ - ARCH=`uname -m` && \ - if [ "$ARCH" == "x86_64" ] || [ "$ARCH" = "amd64" ]; then \ - echo "$ARCH" && \ - yum install lzop lzo lzo-dev -y; \ - fi' - -RUN yum clean all -LABEL io.airbyte.version=0.5.1 -LABEL io.airbyte.name=airbyte/destination-s3 diff --git a/airbyte-integrations/connectors/destination-scylla/Dockerfile b/airbyte-integrations/connectors/destination-scylla/Dockerfile deleted file mode 100644 index cd2d7b2fb5a028..00000000000000 --- a/airbyte-integrations/connectors/destination-scylla/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION destination-scylla - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION destination-scylla - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.3 -LABEL io.airbyte.name=airbyte/destination-scylla diff --git a/airbyte-integrations/connectors/destination-selectdb/Dockerfile b/airbyte-integrations/connectors/destination-selectdb/Dockerfile deleted file mode 100644 index d1f387be1ac7fc..00000000000000 --- a/airbyte-integrations/connectors/destination-selectdb/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-selectdb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-selectdb - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.0 -LABEL io.airbyte.name=airbyte/destination-selectdb diff --git a/airbyte-integrations/connectors/destination-starburst-galaxy/Dockerfile b/airbyte-integrations/connectors/destination-starburst-galaxy/Dockerfile deleted file mode 100644 index 7df71dd5d6136d..00000000000000 --- a/airbyte-integrations/connectors/destination-starburst-galaxy/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-starburst-galaxy - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-starburst-galaxy - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.0.1 -LABEL io.airbyte.name=airbyte/destination-starburst-galaxy diff --git a/airbyte-integrations/connectors/destination-tidb/Dockerfile b/airbyte-integrations/connectors/destination-tidb/Dockerfile deleted file mode 100644 index 35f6f8bd5d2f5d..00000000000000 --- a/airbyte-integrations/connectors/destination-tidb/Dockerfile +++ /dev/null @@ -1,52 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -RUN yum install -y python3 python3-devel jq sshpass git gcc-c++ && yum clean all && \ - alternatives --install /usr/bin/python python /usr/bin/python3 60 && \ - python -m ensurepip --upgrade && \ - # these two lines are a workaround for https://github.com/yaml/pyyaml/issues/601 - pip3 install wheel && \ - pip3 install "Cython<3.0" "pyyaml==5.4" --no-build-isolation && \ - pip3 install dbt-tidb==1.0.1 - -# Luckily, none of normalization's files conflict with destination-tidb's files :) -# We don't enforce that in any way, but hopefully we're only living in this state for a short time. -COPY --from=airbyte/normalization-tidb:dev /airbyte /airbyte -# Install python dependencies -WORKDIR /airbyte/base_python_structs -RUN pip3 install . -WORKDIR /airbyte/normalization_code -RUN pip3 install . -WORKDIR /airbyte/normalization_code/dbt-template/ -# Download external dbt dependencies -# amazon linux 2 isn't compatible with urllib3 2.x, so force 1.26.15 -RUN pip3 install "urllib3<2" -RUN dbt deps - -WORKDIR /airbyte -ENV APPLICATION destination-tidb -ENV AIRBYTE_NORMALIZATION_INTEGRATION tidb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-tidb - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.4 -LABEL io.airbyte.name=airbyte/destination-tidb - -ENV AIRBYTE_ENTRYPOINT "/airbyte/run_with_normalization.sh" -ENTRYPOINT ["/airbyte/run_with_normalization.sh"] diff --git a/airbyte-integrations/connectors/destination-yugabytedb/Dockerfile b/airbyte-integrations/connectors/destination-yugabytedb/Dockerfile deleted file mode 100644 index c585060699189c..00000000000000 --- a/airbyte-integrations/connectors/destination-yugabytedb/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION destination-yugabytedb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION destination-yugabytedb - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.1 -LABEL io.airbyte.name=airbyte/destination-yugabytedb diff --git a/airbyte-integrations/connectors/source-alloydb-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-alloydb-strict-encrypt/Dockerfile deleted file mode 100644 index 7af590ca55e71c..00000000000000 --- a/airbyte-integrations/connectors/source-alloydb-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-alloydb-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-alloydb-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=3.1.5 -LABEL io.airbyte.name=airbyte/source-alloydb-strict-encrypt diff --git a/airbyte-integrations/connectors/source-alloydb/Dockerfile b/airbyte-integrations/connectors/source-alloydb/Dockerfile deleted file mode 100644 index 4e653e14a8d5d4..00000000000000 --- a/airbyte-integrations/connectors/source-alloydb/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-alloydb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-alloydb - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=3.1.8 -LABEL io.airbyte.name=airbyte/source-alloydb diff --git a/airbyte-integrations/connectors/source-azure-blob-storage/Dockerfile b/airbyte-integrations/connectors/source-azure-blob-storage/Dockerfile deleted file mode 100644 index 7eec3ab1e3c8ee..00000000000000 --- a/airbyte-integrations/connectors/source-azure-blob-storage/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-azure-blob-storage - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-azure-blob-storage - -COPY --from=build /airbyte /airbyte - -# Airbyte's build system uses these labels to know what to name and tag the docker images produced by this Dockerfile. -LABEL io.airbyte.version=0.1.0 -LABEL io.airbyte.name=airbyte/source-azure-blob-storage diff --git a/airbyte-integrations/connectors/source-bigquery/Dockerfile b/airbyte-integrations/connectors/source-bigquery/Dockerfile deleted file mode 100644 index f3db983b9d4ed8..00000000000000 --- a/airbyte-integrations/connectors/source-bigquery/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-bigquery - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-bigquery - -COPY --from=build /airbyte /airbyte - -# Airbyte's build system uses these labels to know what to name and tag the docker images produced by this Dockerfile. -LABEL io.airbyte.version=0.3.0 -LABEL io.airbyte.name=airbyte/source-bigquery diff --git a/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/Dockerfile deleted file mode 100644 index 626c34f06ff180..00000000000000 --- a/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-clickhouse-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-clickhouse-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.17 -LABEL io.airbyte.name=airbyte/source-clickhouse-strict-encrypt diff --git a/airbyte-integrations/connectors/source-clickhouse/Dockerfile b/airbyte-integrations/connectors/source-clickhouse/Dockerfile deleted file mode 100644 index 00af2bdfb10751..00000000000000 --- a/airbyte-integrations/connectors/source-clickhouse/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-clickhouse - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-clickhouse - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.17 -LABEL io.airbyte.name=airbyte/source-clickhouse diff --git a/airbyte-integrations/connectors/source-cockroachdb-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-cockroachdb-strict-encrypt/Dockerfile deleted file mode 100644 index b521bb75a979e0..00000000000000 --- a/airbyte-integrations/connectors/source-cockroachdb-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-cockroachdb-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-cockroachdb-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.22 -LABEL io.airbyte.name=airbyte/source-cockroachdb-strict-encrypt diff --git a/airbyte-integrations/connectors/source-cockroachdb/Dockerfile b/airbyte-integrations/connectors/source-cockroachdb/Dockerfile deleted file mode 100644 index c7f103645019ef..00000000000000 --- a/airbyte-integrations/connectors/source-cockroachdb/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-cockroachdb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-cockroachdb - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.22 -LABEL io.airbyte.name=airbyte/source-cockroachdb diff --git a/airbyte-integrations/connectors/source-db2-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-db2-strict-encrypt/Dockerfile deleted file mode 100644 index 89480b74edbc5e..00000000000000 --- a/airbyte-integrations/connectors/source-db2-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-db2-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-db2-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.19 -LABEL io.airbyte.name=airbyte/source-db2-strict-encrypt diff --git a/airbyte-integrations/connectors/source-db2-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-db2-strict-encrypt/build.gradle index a395cd7a32a232..00843541d6ca14 100644 --- a/airbyte-integrations/connectors/source-db2-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-db2-strict-encrypt/build.gradle @@ -1,6 +1,5 @@ plugins { id 'application' - id 'airbyte-docker' id 'airbyte-java-connector' } diff --git a/airbyte-integrations/connectors/source-db2/Dockerfile b/airbyte-integrations/connectors/source-db2/Dockerfile deleted file mode 100644 index 1a70ab09d31ace..00000000000000 --- a/airbyte-integrations/connectors/source-db2/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-db2 - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-db2 - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.20 -LABEL io.airbyte.name=airbyte/source-db2 diff --git a/airbyte-integrations/connectors/source-dynamodb/Dockerfile b/airbyte-integrations/connectors/source-dynamodb/Dockerfile deleted file mode 100644 index c41dd8ca95f2ef..00000000000000 --- a/airbyte-integrations/connectors/source-dynamodb/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-dynamodb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-dynamodb - -COPY --from=build /airbyte /airbyte - -# Airbyte's build system uses these labels to know what to name and tag the docker images produced by this Dockerfile. -LABEL io.airbyte.version=0.1.2 -LABEL io.airbyte.name=airbyte/source-dynamodb diff --git a/airbyte-integrations/connectors/source-e2e-test-cloud/Dockerfile b/airbyte-integrations/connectors/source-e2e-test-cloud/Dockerfile deleted file mode 100644 index 9bce1d6e996963..00000000000000 --- a/airbyte-integrations/connectors/source-e2e-test-cloud/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-e2e-test-cloud - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-e2e-test-cloud - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=2.1.4 -LABEL io.airbyte.name=airbyte/source-e2e-test-cloud diff --git a/airbyte-integrations/connectors/source-e2e-test/Dockerfile b/airbyte-integrations/connectors/source-e2e-test/Dockerfile deleted file mode 100644 index 6f8292891dc8fb..00000000000000 --- a/airbyte-integrations/connectors/source-e2e-test/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-e2e-test - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-e2e-test - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=2.1.4 -LABEL io.airbyte.name=airbyte/source-e2e-test diff --git a/airbyte-integrations/connectors/source-elasticsearch/Dockerfile b/airbyte-integrations/connectors/source-elasticsearch/Dockerfile deleted file mode 100644 index 4f8da9d4e7b77a..00000000000000 --- a/airbyte-integrations/connectors/source-elasticsearch/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-elasticsearch - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-elasticsearch - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.1 -LABEL io.airbyte.name=airbyte/source-elasticsearch diff --git a/airbyte-integrations/connectors/source-file-secure/Dockerfile b/airbyte-integrations/connectors/source-file-secure/Dockerfile deleted file mode 100644 index 7b405c1107b8fe..00000000000000 --- a/airbyte-integrations/connectors/source-file-secure/Dockerfile +++ /dev/null @@ -1,22 +0,0 @@ -### WARNING ### -# This Dockerfile will soon be deprecated. -# It is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L771 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/source-file:0.3.12 - -WORKDIR /airbyte/integration_code -COPY source_file_secure ./source_file_secure -COPY main.py ./ -COPY setup.py ./ -ENV DOCKER_BUILD=True -RUN pip install . - -ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" -ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] - -LABEL io.airbyte.version=0.3.12 -LABEL io.airbyte.name=airbyte/source-file-secure diff --git a/airbyte-integrations/connectors/source-kafka/Dockerfile b/airbyte-integrations/connectors/source-kafka/Dockerfile deleted file mode 100644 index 7ca85493e4765a..00000000000000 --- a/airbyte-integrations/connectors/source-kafka/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-kafka - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-kafka - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.3 -LABEL io.airbyte.name=airbyte/source-kafka diff --git a/airbyte-integrations/connectors/source-mongodb-v2/Dockerfile b/airbyte-integrations/connectors/source-mongodb-v2/Dockerfile deleted file mode 100644 index 6d8d9fbe1df74b..00000000000000 --- a/airbyte-integrations/connectors/source-mongodb-v2/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-mongodb-v2 - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-mongodb-v2 - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=1.0.1 -LABEL io.airbyte.name=airbyte/source-mongodb-v2 diff --git a/airbyte-integrations/connectors/source-mongodb/build.gradle b/airbyte-integrations/connectors/source-mongodb/build.gradle index 3a9dd18ad1c3a0..23072bef4c2e3d 100644 --- a/airbyte-integrations/connectors/source-mongodb/build.gradle +++ b/airbyte-integrations/connectors/source-mongodb/build.gradle @@ -1,7 +1,6 @@ plugins { // Makes building the docker image a dependency of Gradle's "build" command. This way you could run your entire build inside a docker image // via ./gradlew :airbyte-integrations:connectors:source-mongodb:build - id 'airbyte-docker' id 'airbyte-standard-source-test-file' } diff --git a/airbyte-integrations/connectors/source-mssql-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-mssql-strict-encrypt/Dockerfile deleted file mode 100644 index 1331efa8fc90f8..00000000000000 --- a/airbyte-integrations/connectors/source-mssql-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-mssql-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-mssql-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=2.0.1 -LABEL io.airbyte.name=airbyte/source-mssql-strict-encrypt diff --git a/airbyte-integrations/connectors/source-mssql/Dockerfile b/airbyte-integrations/connectors/source-mssql/Dockerfile deleted file mode 100644 index 25eaf9da94ade7..00000000000000 --- a/airbyte-integrations/connectors/source-mssql/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-mssql - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-mssql - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=2.0.1 -LABEL io.airbyte.name=airbyte/source-mssql diff --git a/airbyte-integrations/connectors/source-oracle-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-oracle-strict-encrypt/Dockerfile deleted file mode 100644 index 9c613f84870512..00000000000000 --- a/airbyte-integrations/connectors/source-oracle-strict-encrypt/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-oracle-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-oracle-strict-encrypt -ENV TZ UTC - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.4.0 -LABEL io.airbyte.name=airbyte/source-oracle-strict-encrypt diff --git a/airbyte-integrations/connectors/source-oracle/Dockerfile b/airbyte-integrations/connectors/source-oracle/Dockerfile deleted file mode 100644 index ef85f0ec58d7b8..00000000000000 --- a/airbyte-integrations/connectors/source-oracle/Dockerfile +++ /dev/null @@ -1,20 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-oracle -ENV TZ UTC - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar -RUN tar xf ${APPLICATION}.tar --strip-components=1 - -LABEL io.airbyte.version=0.4.0 -LABEL io.airbyte.name=airbyte/source-oracle diff --git a/airbyte-integrations/connectors/source-postgres-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-postgres-strict-encrypt/Dockerfile deleted file mode 100644 index 703295909f4af3..00000000000000 --- a/airbyte-integrations/connectors/source-postgres-strict-encrypt/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-postgres-strict-encrypt - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-postgres-strict-encrypt - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=3.1.8 -LABEL io.airbyte.name=airbyte/source-postgres-strict-encrypt diff --git a/airbyte-integrations/connectors/source-python-http-tutorial/build.gradle b/airbyte-integrations/connectors/source-python-http-tutorial/build.gradle index 561c0758c6b4b7..b0a53d233231aa 100644 --- a/airbyte-integrations/connectors/source-python-http-tutorial/build.gradle +++ b/airbyte-integrations/connectors/source-python-http-tutorial/build.gradle @@ -1,6 +1,6 @@ plugins { id 'airbyte-python' - id 'airbyte-docker' + id 'airbyte-docker-legacy' id 'airbyte-standard-source-test-file' } diff --git a/airbyte-integrations/connectors/source-redshift/Dockerfile b/airbyte-integrations/connectors/source-redshift/Dockerfile deleted file mode 100644 index 751c8c82da2882..00000000000000 --- a/airbyte-integrations/connectors/source-redshift/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-redshift - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-redshift - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.4.0 -LABEL io.airbyte.name=airbyte/source-redshift diff --git a/airbyte-integrations/connectors/source-sftp/Dockerfile b/airbyte-integrations/connectors/source-sftp/Dockerfile deleted file mode 100644 index e862291e3814de..00000000000000 --- a/airbyte-integrations/connectors/source-sftp/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte -ENV APPLICATION source-sftp - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte -ENV APPLICATION source-sftp - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.1.2 -LABEL io.airbyte.name=airbyte/source-sftp diff --git a/airbyte-integrations/connectors/source-snowflake/Dockerfile b/airbyte-integrations/connectors/source-snowflake/Dockerfile deleted file mode 100644 index 4aec528145cd34..00000000000000 --- a/airbyte-integrations/connectors/source-snowflake/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-snowflake - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-snowflake - -COPY --from=build /airbyte /airbyte - -LABEL io.airbyte.version=0.2.0 -LABEL io.airbyte.name=airbyte/source-snowflake diff --git a/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/build.gradle b/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/build.gradle index 65c40ae2d8c833..c13cfe8aeaf571 100644 --- a/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/build.gradle +++ b/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/build.gradle @@ -1,7 +1,7 @@ plugins { // Makes building the docker image a dependency of Gradle's "build" command. This way you could run your entire build inside a docker image // via ./gradlew :airbyte-integrations:connectors:source-stock-ticker-api:build - id 'airbyte-docker' + id 'airbyte-docker-legacy' id 'airbyte-standard-source-test-file' } diff --git a/airbyte-integrations/connectors/source-teradata/Dockerfile b/airbyte-integrations/connectors/source-teradata/Dockerfile deleted file mode 100644 index 88631917ad75e9..00000000000000 --- a/airbyte-integrations/connectors/source-teradata/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-teradata - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-teradata - -COPY --from=build /airbyte /airbyte - -# Airbyte's build system uses these labels to know what to name and tag the docker images produced by this Dockerfile. -LABEL io.airbyte.version=0.1.0 -LABEL io.airbyte.name=airbyte/source-teradata diff --git a/airbyte-integrations/connectors/source-tidb/Dockerfile b/airbyte-integrations/connectors/source-tidb/Dockerfile deleted file mode 100755 index 26069fa25844de..00000000000000 --- a/airbyte-integrations/connectors/source-tidb/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -### WARNING ### -# The Java connector Dockerfiles will soon be deprecated. -# This Dockerfile is not used to build the connector image we publish to DockerHub. -# The new logic to build the connector image is declared with Dagger here: -# https://github.com/airbytehq/airbyte/blob/master/tools/ci_connector_ops/ci_connector_ops/pipelines/actions/environments.py#L649 - -# If you need to add a custom logic to build your connector image, you can do it by adding a finalize_build.sh or finalize_build.py script in the connector folder. -# Please reach out to the Connectors Operations team if you have any question. -FROM airbyte/integration-base-java:dev AS build - -WORKDIR /airbyte - -ENV APPLICATION source-tidb - -COPY build/distributions/${APPLICATION}*.tar ${APPLICATION}.tar - -RUN tar xf ${APPLICATION}.tar --strip-components=1 && rm -rf ${APPLICATION}.tar - -FROM airbyte/integration-base-java:dev - -WORKDIR /airbyte - -ENV APPLICATION source-tidb - -COPY --from=build /airbyte /airbyte - -# Airbyte's build system uses these labels to know what to name and tag the docker images produced by this Dockerfile. -LABEL io.airbyte.version=0.2.5 -LABEL io.airbyte.name=airbyte/source-tidb diff --git a/build.gradle b/build.gradle index e82f2d26b82039..a39bdbc1ae374f 100644 --- a/build.gradle +++ b/build.gradle @@ -54,6 +54,16 @@ ext { version = System.getenv("VERSION") ?: env.VERSION image_tag = System.getenv("VERSION") ?: 'dev' skipSlowTests = (System.getProperty('skipSlowTests', 'false') != 'false') + +} +// Pyenv support. +try { + def pyenvRoot = "pyenv root".execute() + if (pyenvRoot.waitFor() == 0) { + ext.pyenvRoot = pyenvRoot.text.trim() + } +} catch (IOException _) { + // Swallow exception if pyenv is not installed. } def isConnectorProject = { Project project -> @@ -147,17 +157,35 @@ node { // python is required by the root project to apply python formatters like isort or black. python { envPath = '.venv' - minPythonVersion = '3.9' + minPythonVersion = '3.10' // should be 3.10 for local development + + // Pyenv support. + try { + def pyenvRoot = "pyenv root".execute() + def pyenvLatest = "pyenv latest ${minPythonVersion}".execute() + // Pyenv definitely exists at this point: use 'python' instead of 'python3' in all cases. + pythonBinary "python" + if (pyenvRoot.waitFor() == 0 && pyenvLatest.waitFor() == 0) { + pythonPath "${pyenvRoot.text.trim()}/versions/${pyenvLatest.text.trim()}/bin" + } + } catch (IOException _) { + // Swallow exception if pyenv is not installed. + } + scope = 'VIRTUALENV' installVirtualenv = true - pip 'pip:21.3.1' + // black and isort are required for formatting pip 'black:22.3.0' - pip 'mypy:1.4.1' pip 'isort:5.6.4' - pip 'flake8:4.0.1' - // flake8 doesn't support pyproject.toml files - // and thus there is the wrapper "pyproject-flake8" for this - pip 'pyproject-flake8:0.0.1a2' + // poetry is required for installing and running airbyte-ci + pip 'poetry:1.5.1' +} +def cleanPythonVenv = rootProject.tasks.register('cleanPythonVenv', Exec) { + commandLine 'rm' + args '-rf', "${rootProject.projectDir.absolutePath}/.venv" +} +rootProject.tasks.named('clean').configure { + dependsOn cleanPythonVenv } // format tasks per project @@ -340,13 +368,6 @@ allprojects { dependsOn licensePythonFormat dependsOn isortPythonFormat } - - def flakePythonCheck = registerPythonFormatTask('flakePythonCheck', 'pflake8', '--config') - flakePythonCheck.configure { - dependsOn licensePythonCheck - dependsOn isortPythonCheck - dependsOn blackPythonCheck - } } tasks.register('format') { @@ -358,8 +379,6 @@ allprojects { dependsOn tasks.matching { it.name == 'licensePythonCheck' } dependsOn tasks.matching { it.name == 'isortPythonCheck' } dependsOn tasks.matching { it.name == 'blackPythonCheck' } - // TODO: address flake issues then re-enable flakePythonCheck dependency - // dependsOn tasks.matching { it.name == 'flakePythonCheck' } } } @@ -451,7 +470,6 @@ subprojects { subproj -> targetCompatibility = JavaVersion.VERSION_17 } - if (isConnectorProject(subproj)) { // This is a Java connector project. @@ -610,14 +628,13 @@ subprojects { subproj -> } } - // integration and performance test tasks per project allprojects { tasks.register('integrationTest') { dependsOn tasks.matching { [ 'integrationTestJava', - 'customIntegrationTests', // python integration tests + 'integrationTestPython', 'standardSourceTestFile', ].contains(it.name) } @@ -638,6 +655,70 @@ subprojects { tasks.register('listAllDependencies', DependencyReportTask) {} } +// airbyte-ci tasks for local development +def poetryInstallAirbyteCI = tasks.register('poetryInstallAirbyteCI', Exec) { + workingDir rootProject.file('airbyte-ci/connectors/pipelines') + commandLine rootProject.file('.venv/bin/python').absolutePath + args "-m", "poetry", "install", "--no-cache" +} +poetryInstallAirbyteCI.configure { + dependsOn tasks.named('pipInstall') +} +def poetryCleanVirtualenv = tasks.register('cleanVirtualenv', Exec) { + workingDir rootProject.file('airbyte-ci/connectors/pipelines') + commandLine rootProject.file('.venv/bin/python').absolutePath + args "-m", "poetry", "env", "remove", "--all" + onlyIf { + rootProject.file('.venv/bin/python').exists() + } +} +cleanPythonVenv.configure { + dependsOn poetryCleanVirtualenv +} + +subprojects { + if (!isConnectorProject(project)) { + return + } + def airbyteCIConnectorsTask = { String taskName, String... connectorsArgs -> + def task = tasks.register(taskName, Exec) { + workingDir rootDir + environment "CI", "1" // set to use more suitable logging format + commandLine rootProject.file('.venv/bin/python').absolutePath + args "-m", "poetry" + args "--directory", "${rootProject.file('airbyte-ci/connectors/pipelines').absolutePath}" + args "run" + args "airbyte-ci", "connectors", "--name=${project.name}" + args connectorsArgs + // Forbid these kinds of tasks from running concurrently. + // We can induce serial execution by giving them all a common output directory. + outputs.dir rootProject.file("${rootProject.buildDir}/airbyte-ci-lock") + outputs.upToDateWhen { false } + } + task.configure { dependsOn poetryInstallAirbyteCI } + return task + } + + // Build connector image as part of 'assemble' task. + // This is required for local 'integrationTest' execution. + def buildConnectorImage = airbyteCIConnectorsTask( + 'buildConnectorImage', '--disable-report-auto-open', 'build', '--use-host-gradle-dist-tar') + buildConnectorImage.configure { + // Images for java projects always rely on the distribution tarball. + dependsOn tasks.matching { it.name == 'distTar' } + // Ensure that all files exist beforehand. + dependsOn tasks.matching { it.name == 'generate' } + } + tasks.named('assemble').configure { + // We may revisit the dependency on assemble but the dependency should always be on a base task. + dependsOn buildConnectorImage + } + + // Convenience tasks for local airbyte-ci execution. + airbyteCIConnectorsTask('airbyteCIConnectorBuild', 'build') + airbyteCIConnectorsTask('airbyteCIConnectorTest', 'test') +} + // produce reproducible archives // (see https://docs.gradle.org/current/userguide/working_with_files.html#sec:reproducible_archives) tasks.withType(AbstractArchiveTask).configureEach { diff --git a/buildSrc/src/main/groovy/airbyte-docker.gradle b/buildSrc/src/main/groovy/airbyte-docker-legacy.gradle similarity index 89% rename from buildSrc/src/main/groovy/airbyte-docker.gradle rename to buildSrc/src/main/groovy/airbyte-docker-legacy.gradle index c279ce65f601c2..11eadbce39237c 100644 --- a/buildSrc/src/main/groovy/airbyte-docker.gradle +++ b/buildSrc/src/main/groovy/airbyte-docker-legacy.gradle @@ -19,8 +19,18 @@ import java.nio.file.Paths import org.apache.commons.text.StringSubstitutor +/** + * AirbyteDockerLegacyTask is the task which builds a docker image based on a Dockerfile. + * + * It and the other classes in this file have "Legacy" in their name because we want to get rid of this plugin in favor + * of dagger-pipeline-based tooling like `airbyte-ci`. As of the time of this writing this is already the case for + * connectors. There are still a few remaining usages outside of connectors and they are useful to support a smooth + * local java-centric development experience with gradle, especially around integration tests. + * + * Issue https://github.com/airbytehq/airbyte/issues/30708 tracks the complete removal of this plugin. + */ @CacheableTask -abstract class AirbyteDockerBaseTask extends DefaultTask { +abstract class AirbyteDockerLegacyTask extends DefaultTask { @InputFiles @PathSensitive(PathSensitivity.RELATIVE) @@ -30,15 +40,14 @@ abstract class AirbyteDockerBaseTask extends DefaultTask { Map baseImageHashes @InputFile + @PathSensitive(PathSensitivity.RELATIVE) File dockerFile @OutputFile File idFileOutput -} - -abstract class AirbyteDockerTask extends AirbyteDockerBaseTask { @InputFile + @PathSensitive(PathSensitivity.RELATIVE) File buildScript = project.rootProject.file('tools/bin/build_image.sh') @TaskAction @@ -57,11 +66,11 @@ abstract class AirbyteDockerTask extends AirbyteDockerBaseTask { } /** - * AirbyteDockerTaskFactory is a convenience object to avoid passing the current project around. + * AirbyteDockerLegacyTaskFactory is a convenience object to avoid passing the current project around. */ -class AirbyteDockerTaskFactory { +class AirbyteDockerLegacyTaskFactory { - private AirbyteDockerTaskFactory() {} + private AirbyteDockerLegacyTaskFactory() {} Project project String dockerFileName @@ -198,7 +207,6 @@ class AirbyteDockerTaskFactory { logger.info "Skipping ${taskName} because ${dockerFile()} does not exist." } } - Class taskClass = AirbyteDockerTask // Tagged name of the image to be built by this task. def taggedImage = DockerHelpers.getDevTaggedImage(project.projectDir, dockerFileName) @@ -208,7 +216,7 @@ class AirbyteDockerTaskFactory { // The ID file contains the hash of the image. def idFilePath = Paths.get(project.rootProject.rootDir.absolutePath, '.dockerversions', dockerfilePathHash()) // Register the task (lazy creation). - def airbyteDockerTask = project.tasks.register(taskName, taskClass) { task -> + def airbyteDockerTask = project.tasks.register(taskName, AirbyteDockerLegacyTask) { task -> // Set inputs. task.filesInDockerImage = filteredProjectFiles() task.dockerFile = this.dockerFile() @@ -283,7 +291,7 @@ class AirbyteDockerTaskFactory { } static def build(Project project, String taskName, String dockerFileName) { - def f = new AirbyteDockerTaskFactory() + def f = new AirbyteDockerLegacyTaskFactory() f.project = project f.dockerFileName = dockerFileName f.createTask(taskName) @@ -291,20 +299,20 @@ class AirbyteDockerTaskFactory { } /** - * AirbyteDockerPlugin creates an airbyteDocker task for the project when a Dockerfile is present. + * AirbyteDockerLegacyPlugin creates an airbyteDocker task for the project when a Dockerfile is present. * * Following the same logic, it creates airbyteDockerTest when Dockerfile.test is present, though * that behavior is not used anywhere except in the source-mongo connector and is therefore deprecated * through the use of airbyte-ci. */ -class AirbyteDockerPlugin implements Plugin { +class AirbyteDockerLegacyPlugin implements Plugin { void apply(Project project) { - AirbyteDockerTaskFactory.build(project, 'airbyteDocker', 'Dockerfile') + AirbyteDockerLegacyTaskFactory.build(project, 'airbyteDocker', 'Dockerfile') // Used only for source-mongodb. Consider removing entirely. if (project.name.endsWith('source-mongodb')) { - AirbyteDockerTaskFactory.build(project, 'airbyteDockerTest', 'Dockerfile.test') + AirbyteDockerLegacyTaskFactory.build(project, 'airbyteDockerTest', 'Dockerfile.test') } // Used for base-normalization. @@ -318,7 +326,7 @@ class AirbyteDockerPlugin implements Plugin { 'airbyteDockerTiDB' : 'tidb', 'airbyteDockerDuckDB' : 'duckdb' ].forEach {taskName, customConnector -> - AirbyteDockerTaskFactory.build(project, taskName, "${customConnector}.Dockerfile") + AirbyteDockerLegacyTaskFactory.build(project, taskName, "${customConnector}.Dockerfile") } } } diff --git a/buildSrc/src/main/groovy/airbyte-python.gradle b/buildSrc/src/main/groovy/airbyte-python.gradle index 97dafec3370c0b..b0be7c885051ae 100644 --- a/buildSrc/src/main/groovy/airbyte-python.gradle +++ b/buildSrc/src/main/groovy/airbyte-python.gradle @@ -32,8 +32,8 @@ class Helpers { boolean requiresTasks = false if (project.file(testFilesDirectory).exists()) { - project.projectDir.toPath().resolve(testFilesDirectory).traverse(type: FileType.FILES, - nameFilter: ~/(^test_.*|.*_test)\.py$/) {file -> + def testDir = project.projectDir.toPath().resolve(testFilesDirectory) + testDir.traverse(type: FileType.FILES, nameFilter: ~/(^test_.*|.*_test)\.py$/) {file -> requiresTasks = true // If a file is found, terminate the traversal, thus causing this task to be declared at most once return FileVisitResult.TERMINATE @@ -43,7 +43,7 @@ class Helpers { return } - def coverageTask = project.tasks.register("_${taskName}Coverage", PythonTask) { + def coverageTask = project.tasks.register(taskName, PythonTask) { def dataFile = "${testFilesDirectory}/.coverage.${taskName}" def rcFile = project.rootProject.file('pyproject.toml').absolutePath def testConfig = project.file('pytest.ini').exists() ? 'pytest.ini' : project.rootProject.file('pyproject.toml').absolutePath @@ -54,43 +54,6 @@ class Helpers { coverageTask.configure { dependsOn taskDependencies } - // generation of coverage report is optional and we should skip it if tests are empty - - def testTask = project.tasks.register(taskName, Exec){ - def dataFile = "${testFilesDirectory}/.coverage.${taskName}" - def rcFile = project.rootProject.file('pyproject.toml').absolutePath - def coverageFormat = project.hasProperty('reports_folder') ? 'xml' : 'report' - def outputArg = project.hasProperty('reports_folder') ? "-otemp_coverage.xml" : "--skip-empty" - - commandLine = ".venv/bin/python" - args "-m", "coverage", coverageFormat, "--data-file=${dataFile}", "--rcfile=${rcFile}", outputArg - setIgnoreExitValue true - - doLast { - // try to move a generated report to custom report folder if needed - if (project.file('temp_coverage.xml').exists() && project.hasProperty('reports_folder')) { - project.file('temp_coverage.xml').renameTo(project.file("${project.reports_folder}/coverage.xml")) - } - } - } - testTask.configure { - dependsOn coverageTask - } - } - - static boolean isPyenvInPath() { - String path = System.getenv('PATH') - if (path == null || path.empty) { - return false - } - for (final String p : path.split(File.pathSeparator)) { - for (final String d : p.split(File.separator)) { - if (".pyenv" == d) { - return true - } - } - } - return false } } @@ -104,7 +67,7 @@ class AirbytePythonPlugin implements Plugin { // Add a task that allows cleaning up venvs to every python project def cleanPythonVenv = project.tasks.register('cleanPythonVenv', Exec) { commandLine 'rm' - args '-rf', "${project.projectDir.absolutePath}/${venvDirectoryName}", "${project.projectDir.absolutePath}/.pytest_cache" + args '-rf', "${project.projectDir.absolutePath}/${venvDirectoryName}" } project.tasks.named('clean').configure { dependsOn cleanPythonVenv @@ -115,56 +78,35 @@ class AirbytePythonPlugin implements Plugin { // Configure gradle python plugin. project.python { envPath = venvDirectoryName - if (Helpers.isPyenvInPath()) { - // When using pyenv, prefer 'python' instead of 'python3'. - pythonBinary = 'python' + minPythonVersion '3.10' + + // Pyenv support. + try { + def pyenvRoot = "pyenv root".execute() + def pyenvLatest = "pyenv latest ${minPythonVersion}".execute() + // Pyenv definitely exists at this point: use 'python' instead of 'python3' in all cases. + pythonBinary "python" + if (pyenvRoot.waitFor() == 0 && pyenvLatest.waitFor() == 0) { + pythonPath "${pyenvRoot.text.trim()}/versions/${pyenvLatest.text.trim()}/bin" + } + } catch (IOException _) { + // Swallow exception if pyenv is not installed. } - minPythonVersion = '3.9' - scope = 'VIRTUALENV' + + scope 'VIRTUALENV' installVirtualenv = true - pip 'pip:21.3.1' + pip 'pip:23.2.1' pip 'mccabe:0.6.1' // https://github.com/csachs/pyproject-flake8/issues/13 pip 'flake8:4.0.1' // flake8 doesn't support pyproject.toml files // and thus there is the wrapper "pyproject-flake8" for this pip 'pyproject-flake8:0.0.1a2' - pip 'black:22.3.0' pip 'mypy:1.4.1' - pip 'isort:5.6.4' pip 'pytest:6.2.5' pip 'coverage[toml]:6.3.1' } - def isortReport = project.tasks.register('isortReport', PythonTask) { - module = "isort" - command = "--settings-file=${project.rootProject.file('pyproject.toml').absolutePath} --diff --quiet ./" - outputPrefix = '' - } - - def blackReport = project.tasks.register('blackReport', PythonTask) { - module = "black" - command = "--config ${project.rootProject.file('pyproject.toml').absolutePath} --diff --quiet ./" - outputPrefix = '' - } - - def flakeCheck = project.tasks.register('flakeCheck', PythonTask) { - module = "pflake8" - command = "--config ${project.rootProject.file('pyproject.toml').absolutePath} ./" - } - - def flakeReport = project.tasks.register('flakeReport', PythonTask) { - module = "pflake8" - command = "--exit-zero --config ${project.rootProject.file('pyproject.toml').absolutePath} ./" - outputPrefix = '' - } - - def mypyReport = project.tasks.register("mypyReport", Exec){ - commandLine = ".venv/bin/python" - args "-m", "mypy", "--config-file", "${project.rootProject.file('pyproject.toml').absolutePath}", "./" - setIgnoreExitValue true - } - // Attempt to install anything in requirements.txt. // By convention this should only be dependencies whose source is located in the project. if (project.file('requirements.txt').exists()) { @@ -180,12 +122,20 @@ class AirbytePythonPlugin implements Plugin { project.tasks.register('installLocalReqs', PythonTask) { module = "pip" command = "install .[dev,tests]" + inputs.file('setup.py') + outputs.file('build/installedlocalreqs.txt') } } else { - throw new GradleException('Error: Python module lacks requirement.txt and setup.py') + return } + def installLocalReqs = project.tasks.named('installLocalReqs') + def flakeCheck = project.tasks.register('flakeCheck', PythonTask) { + module = "pflake8" + command = "--config ${project.rootProject.file('pyproject.toml').absolutePath} ./" + } + def installReqs = project.tasks.register('installReqs', PythonTask) { module = "pip" command = "install .[main]" @@ -211,103 +161,26 @@ class AirbytePythonPlugin implements Plugin { dependsOn installReqs } - if (extension.hasProperty('moduleDirectory') && extension.moduleDirectory != null) { - def mypyCheck = project.tasks.register('mypyCheck', PythonTask) { - module = "mypy" - command = "-m ${extension.moduleDirectory} --config-file ${project.rootProject.file('pyproject.toml').absolutePath}" - } - mypyCheck.configure { - dependsOn installTestReqs - } - project.tasks.named('check').configure { - dependsOn mypyCheck + def mypyCheck = project.tasks.register('mypyCheck', PythonTask) { + module = "mypy" + command = "-m ${extension.moduleDirectory} --config-file ${project.rootProject.file('pyproject.toml').absolutePath}" + onlyIf { + extension.hasProperty('moduleDirectory') && extension.moduleDirectory != null } } - - Helpers.addTestTaskIfTestFilesFound(project, 'unit_tests', 'unitTest', installTestReqs) + mypyCheck.configure { + dependsOn installTestReqs + } project.tasks.named('check').configure { - dependsOn project.tasks.matching { it.name == 'unitTest' } + dependsOn mypyCheck } - Helpers.addTestTaskIfTestFilesFound(project, 'integration_tests', 'customIntegrationTests', installTestReqs) - - def airbytePythonReport = project.tasks.register('airbytePythonReport') { - doLast { - if (project.hasProperty('reports_folder')) { - // Gradles adds some log messages to files and we must remote them - // examples of these lines: - // :airbyte-integrations:connectors: ... - // [python] .venv/bin/python -m black ... - project.fileTree(project.reports_folder).visit { FileVisitDetails details -> - project.println "Found the report file: " + details.file.path - def tempFile = project.file(details.file.path + ".1") - details.file.eachLine { line -> - if ( !line.startsWith(":airbyte") && !line.startsWith("[python]") ) { - tempFile << line + "\n" - } - } - if (!tempFile.exists()) { - // generate empty file - tempFile << "\n" - } - tempFile.renameTo(details.file) - - } - } - } - } - airbytePythonReport.configure { - dependsOn blackReport - dependsOn isortReport - dependsOn flakeReport - dependsOn mypyReport + Helpers.addTestTaskIfTestFilesFound(project, 'unit_tests', 'testPython', installTestReqs) + project.tasks.named('check').configure { + dependsOn project.tasks.matching { it.name == 'testPython' } } - // saves tools reports to a custom folder - def reportsFolder = project.hasProperty('reports_folder') ? project.reports_folder : '' - if ( reportsFolder != '' ) { - - // clean reports folders - project.file(reportsFolder).deleteDir() - project.file(reportsFolder).mkdirs() - - blackReport.configure { - it.logging.addStandardOutputListener(new StandardOutputListener() { - @Override - void onOutput(CharSequence charSequence) { - project.file("$reportsFolder/black.diff") << charSequence - } - }) - } - isortReport.configure { - it.logging.addStandardOutputListener(new StandardOutputListener() { - @Override - void onOutput(CharSequence charSequence) { - project.file("$reportsFolder/isort.diff") << charSequence - } - }) - } - - flakeReport.configure { - it.logging.addStandardOutputListener(new StandardOutputListener() { - @Override - void onOutput(CharSequence charSequence) { - project.file("$reportsFolder/flake.txt") << charSequence - } - }) - } - - mypyReport.configure { - dependsOn installReqs - it.logging.addStandardOutputListener(new StandardOutputListener() { - @Override - void onOutput(CharSequence charSequence) { - project.file("$reportsFolder/mypy.log") << charSequence - } - }) - } - - } + Helpers.addTestTaskIfTestFilesFound(project, 'integration_tests', 'integrationTestPython', installTestReqs) } } diff --git a/octavia-cli/build.gradle b/octavia-cli/build.gradle index b20d1a7c5d8367..c8fa81d04d393c 100644 --- a/octavia-cli/build.gradle +++ b/octavia-cli/build.gradle @@ -3,7 +3,7 @@ import org.openapitools.generator.gradle.plugin.tasks.GenerateTask plugins { id "org.openapi.generator" version "5.3.1" id 'airbyte-python' - id 'airbyte-docker' + id 'airbyte-docker-legacy' } airbytePython { diff --git a/tools/bin/ci_integration_test.sh b/tools/bin/ci_integration_test.sh index 7084594acb6a71..a4d2e8db1f83b6 100755 --- a/tools/bin/ci_integration_test.sh +++ b/tools/bin/ci_integration_test.sh @@ -19,7 +19,7 @@ else export SUB_BUILD="CONNECTORS_BASE" # avoid schema conflicts when multiple tests for normalization are run concurrently export RANDOM_TEST_SCHEMA="true" - ./gradlew --no-daemon --scan airbyteDocker + ./gradlew --no-daemon --scan assemble elif [[ "$connector" == *"bases"* ]]; then connector_name=$(echo $connector | cut -d / -f 2) selected_integration_test=$(echo "$all_integration_tests" | grep "^$connector_name$" || echo "") diff --git a/tools/bin/ci_performance_test.sh b/tools/bin/ci_performance_test.sh index 3caa5154ad40a5..a58005a7277ae0 100755 --- a/tools/bin/ci_performance_test.sh +++ b/tools/bin/ci_performance_test.sh @@ -35,7 +35,7 @@ else export SUB_BUILD="CONNECTORS_BASE" # avoid schema conflicts when multiple tests for normalization are run concurrently export RANDOM_TEST_SCHEMA="true" - ./gradlew --no-daemon --scan airbyteDocker + ./gradlew --no-daemon --scan assemble elif [[ "$connector" == *"bases"* ]]; then connector_name=$(echo $connector | cut -d / -f 2) selected_performance_test=$(echo "$all_performance_tests" | grep "^$connector_name$" || echo "") diff --git a/tools/code-generator/build.gradle b/tools/code-generator/build.gradle index c5810d7529af14..0c2de175e2cc9b 100644 --- a/tools/code-generator/build.gradle +++ b/tools/code-generator/build.gradle @@ -1,3 +1,3 @@ plugins { - id 'airbyte-docker' + id 'airbyte-docker-legacy' } diff --git a/tools/integrations/manage.sh b/tools/integrations/manage.sh index 9a5557b8937180..c7814a5e123de8 100755 --- a/tools/integrations/manage.sh +++ b/tools/integrations/manage.sh @@ -71,7 +71,7 @@ cmd_build() { if test "$path" == "airbyte-integrations/bases/base-normalization"; then export RANDOM_TEST_SCHEMA="true" - ./gradlew --no-daemon --scan :airbyte-integrations:bases:base-normalization:airbyteDocker + ./gradlew --no-daemon --scan :airbyte-integrations:bases:base-normalization:assemble fi ./gradlew --no-daemon --scan "$(_to_gradle_path "$path" integrationTest)"