![](/img/trans.png)
[英]AWS cloudformation template.yml fails when I try to use method OPTIONS for CORS preflight (Lambda)
[英]AWS reference solution for a serverless SaaS system - Error: Template file not found - template.yml
我正在尝试使用 AWS Cloud9 部署一个 AWS 参考解决方案,它演示了一个示例 SaaS 系统。 解决方案的回购协议在这里:
有一个部署文件可以运行以在 AWS 中引导示例系统 - 它是 repo 中的/aws-saas-factory-ref-solution-serverless-saas/deployment.sh
。
部分部署脚本使用文件/aws-saas-factory-ref-solution-serverless-saas/server/bootstrap-template.yaml
构建引导程序资源,这是一个 CloudFormation 模板。 该脚本然后根据配置文件/aws-saas-factory-ref-solution-serverless-saas/server/samconfig-bootstrap.toml
部署引导程序资源
执行构建和引导程序的./deployment.sh
的相关部分如下。 构建和部署利用 AWS“无服务器应用程序模型”(sam):
sam build -t bootstrap-template.yaml --use-container --region=$REGION
sam deploy --config-file samconfig-bootstrap.toml --region=$REGION --parameter-overrides AdminEmailParameter=$1
当我在 EC2(新加坡区域)上的 Cloud 9 实例上运行./deployment.sh
时,在公共资源引导阶段出现以下错误:
[11034] Failed to execute script main
sam deploy --config-file samconfig-bootstrap.toml --region=ap-southeast-1 --parameter-overrides AdminEmailParameter=chris.halcrow@elenium.com
Error: Template file not found at /home/ec2-user/environment/aws-saas-factory-ref-solution-serverless-saas/server/template.yml
当我搜索template.yml
的代码时,我没有看到任何东西,所以我不确定是什么试图引用它。 该文件不存在于解决方案中。
此处的指南描述了如何快速设置在 EC2 实例上运行的 AWS Cloud9 环境,可以从其 Github 存储库中将解决方案克隆到其中以运行./deployment.sh
脚本 - https://catalog.us- east-1.prod.workshops.aws/workshops/b0c6ad36-0a4b-45d8-856b-8a64f0ac76bb/en-US/pre-requisites/12-own-aws-account
查看构建规范文件(buildspec.yaml 文件用于在 AWS CodeBuild 中为 CI/CD 提供元数据)后,似乎 AWS 团队正在使用 CI/CD 管道测试部署并忘记更新 shell脚本。
另一方面,您无需担心构建规范文件。
解决方案
Go 只需将template.yml
更改为tenant-template.yaml
我发现template.yml
是一个通常在构建过程中生成的工件 - 请参阅SAM 部署命令参考
sam deploy
默认情况下,当您使用此命令时,AWS SAM CLI 假定您当前的工作目录是项目的根目录。 AWS SAM CLI 首先尝试找到使用 sam build 命令构建的模板文件,该文件位于 .aws-sam 子文件夹中,名为 template.yaml。
由于运行 Cloud9 的 EC2 实例的 memory 大小不足,似乎没有创建template.yml
。
此解决方案由@ujwalbukka在以下 git 问题中提供,在参考解决方案的存储库中:
https://github.com/aws-samples/aws-saas-factory-ref-solution-serverless-saas/issues/19
为了让 SaaS 参考解决方案在 Cloud9 中运行,我在 Cloud9 中克隆了一个额外的存储库(SaaS 参考解决方案的 AWS研讨会的存储库)。 我使用git clone https://github.com/aws-samples/aws-serverless-saas-workshop.git
克隆该存储库后,我按照此处的步骤运行车间存储库中存在的脚本,增加 Cloud9 EC2 实例大小并安装运行参考解决方案的先决条件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.