Поскольку вы не предоставили нам общий код, я создал следующий лямбда-пример функции, который копирует определенный файл из исходной папки в папку назначения, а затем удаляет файл из исходной папки. насколько я могу судить, похоже, что в вашей лямбде не хватает некоторых параметров и некоторых обещаний.
Фрагмент кода:
const aws = require('aws-sdk');
const s3 = new aws.S3();
const bucketName = 'Bucket Name'
const sourceFolder = 'Source Folder'
const fileName = 'File Name with extention'
const destFolder = 'Destination Folder'
const s3Params = {
Bucket: bucketName,
CopySource: `${bucketName}/${sourceFolder}/${fileName}`,
Key: `${destFolder}/${fileName}`
};
function copyFile() {
return s3.copyObject(s3Params).promise();
}
function deleteFile() {
return s3.deleteObject({ Bucket: bucketName, Key: `${sourceFolder}/${fileName}` }).promise();
}
exports.handler = async (event, context, callback) => {
try{
await copyFile().then(r => deleteFile());
console.log('All good')
}
catch(ex){ console.log(`Failed with the following exception : ${ex}`)
}
};