This is an automated email from the ASF dual-hosted git repository.
eladkal pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 84c882a1d07 Fix DAG bundle retrieval from S3 (#57178)
84c882a1d07 is described below
commit 84c882a1d0799ed6aa7011baf471dca407f1e78c
Author: Manabu McCloskey <[email protected]>
AuthorDate: Thu Oct 23 18:40:06 2025 -0700
Fix DAG bundle retrieval from S3 (#57178)
Signed-off-by: Manabu McCloskey <[email protected]>
---
providers/amazon/src/airflow/providers/amazon/aws/hooks/s3.py | 2 ++
providers/amazon/tests/unit/amazon/aws/hooks/test_s3.py | 1 +
2 files changed, 3 insertions(+)
diff --git a/providers/amazon/src/airflow/providers/amazon/aws/hooks/s3.py
b/providers/amazon/src/airflow/providers/amazon/aws/hooks/s3.py
index 7575b9a3af6..e24779d5e51 100644
--- a/providers/amazon/src/airflow/providers/amazon/aws/hooks/s3.py
+++ b/providers/amazon/src/airflow/providers/amazon/aws/hooks/s3.py
@@ -1774,6 +1774,8 @@ class S3Hook(AwsBaseHook):
local_s3_objects = []
s3_bucket = self.get_bucket(bucket_name)
for obj in s3_bucket.objects.filter(Prefix=s3_prefix):
+ if obj.key.endswith("/"):
+ continue
obj_path = Path(obj.key)
local_target_path =
local_dir.joinpath(obj_path.relative_to(s3_prefix))
if not local_target_path.parent.exists():
diff --git a/providers/amazon/tests/unit/amazon/aws/hooks/test_s3.py
b/providers/amazon/tests/unit/amazon/aws/hooks/test_s3.py
index b275d0b0f55..2f94b79f2ca 100644
--- a/providers/amazon/tests/unit/amazon/aws/hooks/test_s3.py
+++ b/providers/amazon/tests/unit/amazon/aws/hooks/test_s3.py
@@ -1800,6 +1800,7 @@ class TestAwsS3Hook:
s3_client.put_object(Bucket=s3_bucket, Key="dag_01.py", Body=b"test
data")
s3_client.put_object(Bucket=s3_bucket, Key="dag_02.py", Body=b"test
data")
+ s3_client.put_object(Bucket=s3_bucket, Key="subproject1/", Body=b"")
s3_client.put_object(Bucket=s3_bucket, Key="subproject1/dag_a.py",
Body=b"test data")
s3_client.put_object(Bucket=s3_bucket, Key="subproject1/dag_b.py",
Body=b"test data")