Skip to content

Commit 4d45bab

Browse files
fix: Remove unsupported --ignorefile flag and implement proper cleanup of temporary files
Co-Authored-By: Aaron <AJ> Steers <[email protected]>
1 parent 2b1db11 commit 4d45bab

File tree

1 file changed

+20
-5
lines changed

1 file changed

+20
-5
lines changed

airbyte_cdk/utils/docker/build.py

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -328,6 +328,15 @@ def build_from_base_image(
328328
dockerignore_temp_path.write_text(dockerignore_content)
329329
logger.debug(f"Created temporary .dockerignore at {dockerignore_temp_path}")
330330

331+
root_dockerignore_path = connector_dir / ".dockerignore"
332+
original_dockerignore = None
333+
if root_dockerignore_path.exists():
334+
original_dockerignore = root_dockerignore_path.read_text()
335+
logger.debug(f"Backing up original .dockerignore at {root_dockerignore_path}")
336+
337+
root_dockerignore_path.write_text(dockerignore_content)
338+
logger.debug(f"Temporarily replaced .dockerignore at {root_dockerignore_path}")
339+
331340
try:
332341
execute_build_customization_hooks(connector_dir, "post_connector_install")
333342
except subprocess.CalledProcessError:
@@ -347,14 +356,20 @@ def build_from_base_image(
347356
f"io.airbyte.name={metadata.dockerRepository}",
348357
"-f",
349358
str(dockerfile_temp_path),
350-
"--ignorefile",
351-
str(dockerignore_temp_path),
352359
str(connector_dir),
353360
]
354361

355-
run_docker_command(build_cmd)
356-
logger.info(f"Successfully built image: {full_image_name}")
357-
return full_image_name
362+
try:
363+
run_docker_command(build_cmd)
364+
logger.info(f"Successfully built image: {full_image_name}")
365+
return full_image_name
366+
finally:
367+
if original_dockerignore is not None:
368+
root_dockerignore_path.write_text(original_dockerignore)
369+
logger.debug(f"Restored original .dockerignore at {root_dockerignore_path}")
370+
elif root_dockerignore_path.exists():
371+
root_dockerignore_path.unlink()
372+
logger.debug(f"Removed temporary .dockerignore at {root_dockerignore_path}")
358373

359374
except Exception as e:
360375
logger.error(f"Failed to build image: {e}")

0 commit comments

Comments
 (0)