У меня есть служба, которую я развертываю на AWS Lamba Node, используя безсерверную инфраструктуру, используя плагин webpack для безсерверной.
Служба использует mongo javascript клиент.
Когда я пытаюсь запустить службу, я получаю сообщение об ошибке.Глядя на трассировку журнала на Lambda, я вижу следующее сообщение
Error: Cannot find module '//../cursor'
Другие службы, которые не используют Mongo , на самом деле работают нормально.
Я просмотрел файл .serverless / service.zip и, к моему удивлению, обнаружил, что в каталоге node_modules нет пакета mongodb .
The *Файл 1026 * webpack.conifg.js довольно стандартный и тот же, который я успешно использовал в других случаях для развертывания служб, использующих JavaScript-клиент mongo .
const path = require ('дорожка');const slsw = require ('serverless-webpack');
module.exports = {
devtool: 'source-map',
entry: slsw.lib.entries,
resolve: {
extensions: [
'.js',
'.json',
'.ts',
'.tsx'
]
},
output: {
devtoolModuleFilenameTemplate: '[absolute-resource-path]',
// devtoolFallbackModuleFilenameTemplate: '[absolute-resource-path]?[hash]',
libraryTarget: 'commonjs',
path: path.join(__dirname, '.webpack'),
filename: '[name].js'
},
target: 'node',
module: {
rules: [
{
test: /\.ts(x?)$/,
use: [
{
loader: 'ts-loader'
}
],
}
]
}
};
- версия без обслуживания 1.36.2
- версия webpack 4.29.0
- версия serverless-webpack5.2.0
- mongodb версия 3.1.12
Будем очень благодарны за любые предложения о том, на что обратить внимание.