如何将无服务器应用程序模型 (SAM) 模板转换为 Cloudformation?

How to transform a Serverless Application Model (SAM) template to Cloudformation?

来自this answer我了解到SAM是Cloudformation的一个转换。

有没有办法通过控制台、CLI 或其他方式从 SAM 模板获取转换后的 Cloudformation 模板?

对于已部署的 SAM 项目,您应该在 CloudFormation 控制台中找到本机 CloudFormation 模板,post 转换。 Select 你的堆栈,然后打开 Template 选项卡。您还可以使用 aws cloudformation get-template.

通过 awscli 检索它

您也可以使用 SAM cli,例如:

sam package \
  --output-template-file output.yaml \
  --s3-bucket mybucketname

我猜您想将打包的 SAM 模板转换为普通的 Cloudformation 模板。

您可以通过以下简单步骤实现此目的:

pip install aws-sam-translator docopt

wget https://raw.githubusercontent.com/awslabs/serverless-application- model/develop/bin/sam-translate.py`

python sam-translate.py --template-file=input_file.yml --output-template=output_file.json

现在您在 output_file.json

有了一个打包的香草 CloudFormation 模板

有关此内容的更多信息,请访问 https://github.com/awslabs/serverless-application-model/blob/develop/bin/sam-translate.py