@architect/deploy
用于向云基础设施部署应用程序的无服务器架构模块
安装
npm i @architect/deploy
let deploy = require('@architect/deploy')
所需资源
你需要拥有 sam 命令行工具库 $PATH检查 AWS 文档 说明如何安装.
API 密码
deploy.direct({ isDryRun, srcDirs }, callback)
将函数代码直接部署到一个或多个中转(或生产)环境 Lambdas 直接更新代码有效载荷。这对现场调试非常有用;通过直接部署进行的修改应被视为临时的.
deploy.sam({ quiet, verbose, production }, callback)
部署与您的 @ architect app 相关的所有基础设施 .
设定 quiet 用于压制部署进度和状态信息(来自更新系统)。 设定 verbose 用于实现详细输出,包括CloudFormation日志、文件操作细节和部署文物信息。 除非 production 真实的.
deploy.static({ bucket, credentials, fingerprint, prefix, prune, quiet, region, verbose, production }, callback)
所有参数都是可选的.
将静态资产从 public/ @ architect apps 到 S3 的文件夹, 由您的 @ architect apps 定义 .arc 文档。 尊重 fingerprint (单位:千美元)true 或者说 external, (中文(简体) ), prefix, (中文(简体) ), prune,以及 ignore 参数或 @static 实用程序指令(关于 @static 弧向导) (中文(简体) ).
除非 production 真实的。 设定 verbose 以启用聊天模式.
aws-sdk 备注
需要部署 aws-sdk; 包括先前的版本 aws-sdk 内 peerDependenciesnpm 7 之前不会自动安装 aws-sdk因为建筑师认为你已经 aws-sdk 或者如果你在Lambda里使用部署 可以在运行时使用.
然而,npm 7(再次)改变了 peerDependencies,现在自动安装全部 peerDependencies (而不是只打印出一个提醒) 这意味着任何使用部署的Lambdas,如果部署在有npm 7的机器上,就会得到一个>50MB依赖有效载荷.
因此,请确保 aws-sdk 安装在您的项目上, 或者在全球安装在您的机器上。 我们很遗憾把这个问题变成一个使用地问题,但我们认为这比不必要和隐蔽地造成问题更为可取 aws-sdk 在Lambdas中安装双安装,对冷起动时间产生消极影响并增加bug向量.
