From 168dd972021c4170742cb03000fed71b04bcd3c6 Mon Sep 17 00:00:00 2001 From: Avi Deitcher Date: Thu, 17 Apr 2025 15:08:55 +0300 Subject: [PATCH] S3 ReadFiles was missing URL path Signed-off-by: Avi Deitcher --- pkg/storage/s3/s3.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkg/storage/s3/s3.go b/pkg/storage/s3/s3.go index 95cba29..2af8e65 100644 --- a/pkg/storage/s3/s3.go +++ b/pkg/storage/s3/s3.go @@ -7,6 +7,7 @@ import ( "net/url" "os" "path" + "path/filepath" "strings" "time" @@ -150,7 +151,9 @@ func (s *S3) ReadDir(ctx context.Context, dirname string, logger *log.Entry) ([] } // Call ListObjectsV2 with your bucket and prefix - result, err := client.ListObjectsV2(context.TODO(), &s3.ListObjectsV2Input{Bucket: aws.String(s.url.Hostname()), Prefix: aws.String(dirname)}) + // ensure that there is no leading / + p := strings.TrimPrefix(filepath.Join(s.url.Path, dirname), "/") + result, err := client.ListObjectsV2(context.TODO(), &s3.ListObjectsV2Input{Bucket: aws.String(s.url.Hostname()), Prefix: aws.String(filepath.Join(p, dirname))}) if err != nil { return nil, fmt.Errorf("failed to list objects, %v", err) }