File tree Expand file tree Collapse file tree 1 file changed +15
-6
lines changed
tests/functional/aws-node-sdk/lib/utility Expand file tree Collapse file tree 1 file changed +15
-6
lines changed Original file line number Diff line number Diff line change @@ -88,38 +88,47 @@ class BucketUtility {
8888 } ;
8989
9090 const listedObjects = await this . s3 . listObjectVersions ( param ) . promise ( ) ;
91+ const objectToDeletePromises = [ ] ;
92+ const directoryToDeletePromises = [ ] ;
93+ const deleteMarkerToDeletePromises = [ ] ;
9194
9295 for ( const version of listedObjects . Versions ) {
9396 if ( version . Key . endsWith ( '/' ) ) {
9497 continue ;
9598 }
9699
97- await this . s3 . deleteObject ( {
100+ objectToDeletePromises . push ( this . s3 . deleteObject ( {
98101 Bucket : bucketName ,
99102 Key : version . Key ,
100103 VersionId : version . VersionId ,
101- } ) . promise ( ) ;
104+ } ) . promise ( ) ) ;
102105 }
103106
107+ await Promise . all ( objectToDeletePromises ) ;
108+
104109 for ( const version of listedObjects . Versions ) {
105110 if ( ! version . Key . endsWith ( '/' ) ) {
106111 continue ;
107112 }
108113
109- await this . s3 . deleteObject ( {
114+ directoryToDeletePromises . push ( this . s3 . deleteObject ( {
110115 Bucket : bucketName ,
111116 Key : version . Key ,
112117 VersionId : version . VersionId ,
113- } ) . promise ( ) ;
118+ } ) . promise ( ) ) ;
114119 }
115120
121+ await Promise . all ( directoryToDeletePromises ) ;
122+
116123 for ( const marker of listedObjects . DeleteMarkers ) {
117- await this . s3 . deleteObject ( {
124+ deleteMarkerToDeletePromises . push ( this . s3 . deleteObject ( {
118125 Bucket : bucketName ,
119126 Key : marker . Key ,
120127 VersionId : marker . VersionId ,
121- } ) . promise ( ) ;
128+ } ) . promise ( ) ) ;
122129 }
130+
131+ await Promise . all ( deleteMarkerToDeletePromises ) ;
123132 }
124133
125134 emptyMany ( bucketNames ) {
You can’t perform that action at this time.
0 commit comments