@@ -60,9 +60,6 @@ def read_metadata(connector_dir: Path) -> ConnectorMetadata:
6060 return metadata_file .data
6161
6262
63-
64-
65-
6663def run_docker_command (cmd : List [str ], check : bool = True ) -> Tuple [int , str , str ]:
6764 """Run a Docker command as a subprocess.
6865
@@ -244,6 +241,34 @@ def build_from_base_image(
244241"""
245242
246243 dockerignore_content = """
244+ *
245+
246+ !**/*.py
247+ !**/*.yaml
248+ !**/*.yml
249+ !**/*.json
250+ !**/*.md
251+ !**/*.txt
252+ !**/*.sh
253+ !**/*.sql
254+ !**/*.csv
255+ !**/*.tsv
256+ !**/*.ini
257+ !**/*.toml
258+ !**/*.lock
259+ !**/*.cfg
260+ !**/*.conf
261+ !**/*.properties
262+ !LICENSE
263+ !NOTICE
264+ !requirements.txt
265+ !setup.py
266+ !pyproject.toml
267+ !poetry.lock
268+ !poetry.toml
269+ !Dockerfile
270+ !.dockerignore
271+
247272**/__pycache__
248273**/.pytest_cache
249274**/.venv
@@ -381,13 +406,9 @@ def run_command(connector_dir: Path, tag: str, no_verify: bool, verbose: bool) -
381406 logger .info (f"Building for platforms: { platforms } " )
382407
383408 if metadata .connectorBuildOptions and metadata .connectorBuildOptions .baseImage :
384- image_name = build_from_base_image (
385- connector_dir , metadata , tag , platforms
386- )
409+ image_name = build_from_base_image (connector_dir , metadata , tag , platforms )
387410 else :
388- image_name = build_from_dockerfile (
389- connector_dir , metadata , tag , platforms
390- )
411+ image_name = build_from_dockerfile (connector_dir , metadata , tag , platforms )
391412
392413 if not no_verify :
393414 if verify_image (image_name ):
@@ -416,21 +437,27 @@ def run_command(connector_dir: Path, tag: str, no_verify: bool, verbose: bool) -
416437def run () -> None :
417438 """Entry point for the airbyte-cdk build command."""
418439 import argparse
419-
440+
420441 parser = argparse .ArgumentParser (description = "Build connector Docker images" )
421442 parser .add_argument ("connector_dir" , type = str , help = "Path to the connector directory" )
422- parser .add_argument ("--tag" , type = str , default = "dev" , help = "Tag to apply to the built image (default: dev)" )
423- parser .add_argument ("--no-verify" , action = "store_true" , help = "Skip verification of the built image" )
443+ parser .add_argument (
444+ "--tag" , type = str , default = "dev" , help = "Tag to apply to the built image (default: dev)"
445+ )
446+ parser .add_argument (
447+ "--no-verify" , action = "store_true" , help = "Skip verification of the built image"
448+ )
424449 parser .add_argument ("--verbose" , "-v" , action = "store_true" , help = "Enable verbose logging" )
425-
450+
426451 args = parser .parse_args (sys .argv [1 :])
427-
428- sys .exit (run_command (
429- connector_dir = Path (args .connector_dir ),
430- tag = args .tag ,
431- no_verify = args .no_verify ,
432- verbose = args .verbose
433- ))
452+
453+ sys .exit (
454+ run_command (
455+ connector_dir = Path (args .connector_dir ),
456+ tag = args .tag ,
457+ no_verify = args .no_verify ,
458+ verbose = args .verbose ,
459+ )
460+ )
434461
435462
436463if __name__ == "__main__" :
0 commit comments