我们正在使用AWS Lambda,并且我正在尝试自动化我们的部署。无服务器脱机软件包在无服务器构建时生成错误。
这是一个多端点部署。我们将部署多个目录,因此将在管道中部署cd console
。我们可以使用无服务器部署很好地进行手动部署,但是到目前为止,我进行自动化的尝试都没有结果。
我的pipeline.yml
image: lambci/lambda:build-nodejs6.10
pipelines:
default:
- step:
deployment: test
script:
- npm install
- npm install -g serverless
- npm install -g serverless-offline
- npm install -g serverless-domain-manager
- cd console # will be doing this for multiple directories, but just using one for now
- serverless plugin install --name serverless-webpack
- serverless plugin install --name serverless-offline
- serverless plugin install --name serverless-domain-manager
- serverless create -t aws-nodejs
- serverless deploy
该目录的我的部分serverless.yml
# Use the serverless-webpack plugin to transpile ES6
plugins:
- serverless-webpack
- serverless-offline
- serverless-domain-manager
# serverless-webpack configuration
# Enable auto-packing of external modules
custom:
webpack:
webpackConfig: ./webpack.config.js
includeModules: true
customDomain:
我尝试使用
进行安装 npm install -g serverless-offline
和
- serverless plugin install --name serverless-offline
。
如果我错过任何一个我都会收到错误
Serverless plugin "serverless-offline" not found. Make sure it's installed and listed in the "plugins" section of your serverless config file.
但是现在我得到了
Serverless plugin "serverless-offline" initialization errored: Unexpected identifier
当我运行无服务器创建步骤时。
谢谢。
答案 0 :(得分:0)
发现问题后,我需要全局安装无服务器,但必须在目录内安装npm:
- npm install -g serverless
- git log --grep=console
- cd console
- npm install
答案 1 :(得分:0)
您还可以在package.json文件的devDependencies中将带有版本的无服务器添加为:
"devDependencies": {
"serverless": "1.72.0",
....
}
然后在脚本部分添加自定义命令
"scripts": {
"sls:deploy": "serverless deploy",
.....
}
然后在您的管道中。yml
- npm i
- npm run sls:deploy