繁体   English   中英

无服务器 SaaS 系统的 AWS 参考解决方案 - 错误:找不到模板文件 - template.yml

[英]AWS reference solution for a serverless SaaS system - Error: Template file not found - template.yml

我正在尝试使用 AWS Cloud9 部署一个 AWS 参考解决方案,它演示了一个示例 SaaS 系统。 解决方案的回购协议在这里:

https://github.com/aws-samples/aws-saas-factory-ref-solution-serverless-saas/blob/main/DOCUMENTATION.md

有一个部署文件可以运行以在 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM