我正在构建一些无服务器应用程序并尝试使用SAM。我正在阅读一些教程,其中有些使用 sam build
,而另一些使用 sam package
。
这两个命令有什么区别吗?似乎 sam package
更难使用。
我正在构建一些无服务器应用程序并尝试使用SAM。我正在阅读一些教程,其中有些使用 sam build
,而另一些使用 sam package
。
这两个命令有什么区别吗?似乎 sam package
更难使用。
您可能会看到一些较旧的教程,其中使用了sam package
,但是这个命令正在/已经集成到sam deploy
命令中,因此您不再需要手动执行它。
今天通常的调用顺序是init
-> build
-> deploy
。
至于这两者之间的区别,build
会在本地预处理您的项目文件,而package
过去则会将项目打包成zip格式,将其推送到S3存储桶并返回一个处理后的模板(替换代码引用),然后您可以部署该模板(现在这个打包、推送到S3和部署的过程由deploy
命令处理)。
我通常只使用sam build
并通过sam deploy
进行部署。
sam build
用于将+<应用程序代码>本地构建为应用程序。sam package
将应用程序打包为zip文件并上传到S3存储桶。sam deploy
将应用程序部署到CloudFormation中以创建/执行更改。