in backend/src/cleanup/clear-s3-bucket.js [7:60]
clearS3Bucket: function (event, context, cb) {
console.log("Event=", event);
console.log("Context=", context);
if (event.RequestType === 'Delete') {
var bucketName = event.ResourceProperties.BucketName;
console.log("Delete bucket requested for", bucketName);
var objects = listObjects(s3, bucketName);
objects.then(function(result) {
var keysToDeleteArray = [];
console.log("Found "+ result.Contents.length + " objects to delete.");
if (result.Contents.length === 0) {
sendResponse(event, context, "SUCCESS");
} else {
for (var i = 0, len = result.Contents.length; i < len; i++) {
var item = new Object();
item = {};
item = { Key: result.Contents[i].Key };
keysToDeleteArray.push(item);
}
var delete_params = {
Bucket: bucketName,
Delete: {
Objects: keysToDeleteArray,
Quiet: false
}
};
var deletedObjects = deleteObjects(s3, delete_params);
deletedObjects.then(function(result) {
console.log("deleteObjects API returned ", result);
sendResponse(event, context, "SUCCESS");
}, function(err) {
console.log("ERROR: deleteObjects API Call failed!");
console.log(err);
sendResponse(event, context, "FAILED");
});
}
}, function(err) {
console.log("ERROR: listObjects API Call failed!");
console.log(err);
sendResponse(event, context, "FAILED");
});
} else {
console.log("Delete not requested.");
sendResponse(event, context, "SUCCESS");
}
}