Skip to content

Commit 96421e9

Browse files
authored
Fix issue that not all images are retrieved from S3 backend. (#4)
1 parent 2f369c9 commit 96421e9

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

cmd/internal/determine-sync-images/lister.go

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -198,17 +198,19 @@ func (s *SyncLister) reduce(images []api.OS, sizeCount int64) ([]api.OS, int64,
198198
}
199199

200200
func (s *SyncLister) retrieveImagesFromS3() (map[string]s3.Object, error) {
201-
objects, err := s.s3.ListObjects(&s3.ListObjectsInput{
201+
res := map[string]s3.Object{}
202+
203+
err := s.s3.ListObjectsPages(&s3.ListObjectsInput{
202204
Bucket: &s.config.ImageBucket,
205+
}, func(objects *s3.ListObjectsOutput, lastPage bool) bool {
206+
for _, o := range objects.Contents {
207+
res[*o.Key] = *o
208+
}
209+
return true
203210
})
204211
if err != nil {
205212
return nil, errors.Wrap(err, "cannot list s3 objects")
206213
}
207214

208-
res := map[string]s3.Object{}
209-
for _, o := range objects.Contents {
210-
res[*o.Key] = *o
211-
}
212-
213215
return res, nil
214216
}

0 commit comments

Comments
 (0)