问题标签 [sam]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1122 浏览

python - 使用 AWS SAM 创建 Hello World 应用程序:运行“sam build”时的问题

我刚刚开始使用 AWS SAM。我尝试遵循亚马逊的教程:https ://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-getting-started-hello-world.html 。但我被困在第 2 步:当我在应用程序目录中运行“sam build”时,出现此错误:

我在 anaconda 上使用 Python 3.7.7。我该如何解决这个依赖问题?

这是完整的调试:

0 投票
1 回答
2426 浏览

yaml - 如何使用带有可选参数的覆盖参数将参数传递给 sam 模板

我想创建一个包含 lambda 和几个 sqs 的 SAM template.yml。我想用参数部署它,但不填充所有sqs,这取决于我需要部署它的环境。如何创建填充了部分参数的模板?

0 投票
3 回答
823 浏览

amazon-web-services - AWS SAM - 如何在 swagger 端点 uri 上将阶段变量与 Fn::Sub 组合

我们有一个堆栈,它使用另一个堆栈的输出和跨堆栈引用,Fn::ImportValue在一个 swagger 定义主体中使用。

注:其他部分省略以缩短代码

${OtherStackName}-SampleFunctionName从其他堆栈导入的函数的名称在哪里。

现在,我们现在的问题是我们不能把它放在端点的uri. Cloudformation 在 sam deploy 期间抱怨它,说这${stageVariables.SampleFunctionName}是 Fn::Sub 内部的非法属性。

我尝试了几种方法,包括将整体uri放在舞台变量本身上,但它仍然没有出现。

非常感谢您的想法!

0 投票
1 回答
3404 浏览

amazon-web-services - 使用无服务器框架与 aws sam 的优缺点是什么?

我想选择一个框架来构建和部署 AWS 服务,并且我需要一个完整的优缺点列表来证明一个框架优于另一个框架。由于本论坛不希望人们仅仅发表意见,请在您的回复中提供参考。另外,我想听听使用任何这些框架部署生产解决方案的人的意见。

0 投票
2 回答
2614 浏览

amazon-web-services - AWS SAM 所需的查询字符串参数

我无法在SAM 项目requred query string params的文件中指定。template.yml到目前为止,我没有找到这样的方法,只发现我们可以通过event.queryStringParameters标头访问 lambda 函数中的查询字符串参数。

那么我应该检查 lambda 层是否需要参数吗?或者有没有办法在 API 层本身做到这一点。因为我知道在serverless框架中我们可以指定是否需要查询字符串参数,如下所示:

0 投票
1 回答
168 浏览

command-line-interface - 如何在 XC32 编译器中使用 SAMC21 控制器上的软件复位指令填充未使用的内存?

我正在使用 SAMC21 控制器和 xc32 编译器。我想用软件复位指令填充我所有未使用的 ROM 存储器。有谁知道,从 XC32 编译器执行软件重置的命令行选项是什么。

IDE - MPLABX
编译器 - XC32
微控制器 - SAMC21

0 投票
2 回答
36 浏览

aws-lambda - CloudFormation 能否在构建堆栈后填充资源或依赖项?

堆栈的一个简单示例可能是:

1) 认知用户池。2) 拉姆达。

有没有办法让我引用它构建时生成的 cognito 用户池 ID,以便它可以在我的 lambda 函数(代码)中使用,或者需要获取并手动输入到我的 repo/config 中

或者我可以在构建之前指定一个认知用户池ID吗?我没有看到任何例子。

谢谢

0 投票
1 回答
786 浏览

ssh - 如何自定义 sam 构建以传递 ssh 并访问我在 GitHub 上的私人仓库?

我创建了一堆 lambda 函数,并使用 ide pycharm 在我的本地主机上测试它们。在 requirements.txt 文件中,我添加了对 github 上私有存储库的引用。

该存储库有效,我能够通过其他项目的 requirements.txt 安装它。

但是当我开始本地测试时,使用 aws sam cli,sam buil 失败,因为容器没有 ssh 密钥来访问存储库。

有没有办法自定义 sam 构建过程并将我的 ssh 密钥提供给容器访问我的私人仓库并安装包?

或者任何其他解决方案?

0 投票
3 回答
5446 浏览

amazon-web-services - 如何在 SAM 模板中设置舞台名称

我想在 SAM template.yaml 中为 API Gateway 设置阶段名称。但无论我尝试什么,我都没有成功。无需尝试命名我的阶段,一切都按预期工作,但使用默认阶段名称 Prod 和 Stage。

我的 sam-cli 版本是 0.47.0

我确实在 Stackoverflow 上找到了三个类似的问题,但没有一个答案对我有用。

我总是收到类似这样的错误:

那么我如何获得我自己选择的艺名。我不太关心 Prod 和 Stage 是否与我选择的名称共存。

为了完整起见,我的 template.yaml 文件如下:

我可能不明白这背后的预期工作流程。当 API Gateway 指向的 lambda 函数相同时,为什么有 2 个阶段名称?

我将拥有“dev”和“prod”环境,但它们将使用不同的堆栈名称,因此我永远不会混淆不同的环境。

我总是使用 deploy-dev.sh 和 deploy-pod.sh 脚本在实际部署之前检查我是否在开发或主(生产)分支上。因此这些脚本将指向不同的 template.yaml 文件,因为它们是从不同的 git 分支调用的。我已经使用这种方式进行部署很长时间了,它对我来说效果很好。

附带说明:为什么现有的艺名以大写字母开头?它看起来如此丑陋和不寻常。

0 投票
1 回答
148 浏览

amazon-web-services - AWS:::sam 本地调用“HelloWorldFunction”

我已经成功执行了 sam init 和 sam build。我的文件夹结构是:

在此处输入图像描述

在发出 sam local invoke "HelloWorldFunction" 时出现错误:::handle = win32file.CreateFile( pywintypes.error: (2, 'CreateFile', 'The system cannot find the file specified.')

请问有什么解决办法吗?