问题标签 [aws-sam-cli]
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.
amazon-web-services - How do I destroy a aws SAM Local lambda?
Follow the read for an example it says:
Now what is the sam local command to delete the whole stack including s3 bucket and CF stack?
amazon-web-services - 将 lambda 部署到 s3 存储桶文件夹?
这是部署 lambda 的命令:
但是我可以指定一个桶前缀吗?所以它被部署到子文件夹而不是存储桶的根目录?
amazon-web-services - 如何从 sam deploy 命令中排除文件夹?
我运行它来部署我的 lambda:
这可行,但此代码受版本控制,并且 sam 也在上传 .git 文件夹。我如何让 sam 像使用 gitignore 一样忽略一些文件夹?
aws-lambda - 来自 Lambda 函数的主机上的 AWS SAM 本地访问服务
我正在使用 SAM Local 测试 Lambda 函数。该函数调用 REST API。在本地,我有一个模拟休息服务来测试呼叫。为了连接,我目前在 Lambda 函数中使用主机的 IP 地址。这一直有效,直到我的 IP 更改或其他人尝试运行该功能。我想使用环境变量将主机名/IP 地址传递给 Lambda 函数。一旦部署,这应该很容易做到,但我还没有找到在我的本地模板中设置它的好方法。有没有很好的方法来设置它?
aws-sam-cli - AWS-SAM-LOCAL 单元测试策略
我一直在寻找 aws-sam-local 单元测试策略,但没有找到太多。只是在寻找建议?
amazon-web-services - 如何使用现有的 Cloud Formation 模板生成 SAM Local 环境
我正在研究涉及 AWS 无服务器数据湖的数据湖项目。 https://github.com/awslabs/aws-data-lake-solution 当我尝试创建 SAM 本地模板文件时,我在配置现有资源(API 网关、Coginto 用户池)时遇到了一些问题。我可以使用现有的云形成模板来生成 SAM 本地环境吗?请让我知道我必须对现有模板进行哪些更改。
云形成模板 https://github.com/awslabs/aws-data-lake-solution/tree/master/deployment
amazon-web-services - 如何在 SAM 模板上指定现有的 FunctionName
我正在尝试使用 SAM 部署 AWS Lambda 函数。我想要做的是通过部署本地源代码来更新现有的 lambda 函数。
为此,我在 template.yaml 中将现有的 lambda 函数名称指定为“FunctionName”,如下所示。但是,'FunctionName' 只支持创建新功能,不支持更新到现有功能。 https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname
是否有任何方法可以在 SAM 中指定函数名称以更新 lambda 函数?
[模板.yaml]
aws-lambda - 使用 Cloud9 部署 Lambda
您好,这是我的项目结构:
-AppName
-Common
-common.js //Global module which i'm using in all functions
-Func1
-index.js
-Func2
-index.js
-template.yaml
这是 template.yaml 内容:
AWSTemplateFormatVersion: '2010-09-09'
Transform: 'AWS::Serverless-2016-10-31'
Description: An AWS Serverless Specification template describing your function.
Resources:
Func1:
Type: 'AWS::Serverless::Function'
Properties:
Handler: Func1/index.handler
Runtime: nodejs6.10
MemorySize: 512
Timeout: 10
Func2:
Type: 'AWS::Serverless::Function'
Properties:
Handler: Func2/index.handler
Runtime: nodejs6.10
MemorySize: 512
Timeout: 10
当我部署例如 Func2 时,结果包包含应用程序内的所有文件夹,而只有 Func2。是否可以通过 yaml 文件进行配置,结果包中会包含哪些文件?例如,如果我部署 Func2,我想在下一个包中查看:
-Common
-common.js
-Func2
-index.js
python-3.x - AWS(SAM 本地)Lambda 读/写关闭管道错误
我有一个非常简单的函数(py3.6),我正在sam-local
通过它运行它start-api
,我正在使用一个充满curl
帖子的 shell 脚本进行测试:
validate_json
该测试在大约 95% 的时间在正确的用例中运行良好,但在引发 anException
尽管被捕获,或者当post_to_dynamo_db_local
短路并提前返回(对象已经在 DB 中,返回)时失败(不一致)。
*我说正确的用例在大约 95% 的情况下都有效,因为有时我触摸东西但它失败了,但我触摸东西很可能是原因。虽然未经证实!
根据sam-local
控制台,该函数似乎正确返回:
但是curl
直到请求超时才收到响应:
大约在同一时间sam-local
控制台响应:
有任何想法吗?对于这样一个简单的任务,函数运行时间似乎异常高,我认为这里的内存不应该是一个问题......
失败案例流程:
开始->检查输入(字符串)->引发异常->捕获异常->返回响应(字符串)
补充:有几件事有帮助:
- 在卷发之间睡觉(最多尝试 10 秒,但偶尔仍会出错
- 不缓存对表的引用(因此现在应该很快收集它们
amazon-web-services - 在 docker 中将 AWS SAM Local 与 dynamodb 连接
我已经使用 AWS sam local 设置了一个 api gateway/aws lambda 对,并确认我可以在运行后成功调用它
sam local start-api
然后,我在 docker 容器中添加了一个本地 dynamodb 实例,并使用 aws cli 在其上创建了一个表
但是,将代码添加到 lambda 以写入我收到的 dynamodb 实例:
2018-02-22T11:13:16.172Z ed9ab38e-fb54-18a4-0852-db7e5b56c8cd 错误:无法写入表:{"message":"connect ECONNREFUSED 0.0.0.0:8000","code":"NetworkingError", "errno":"ECONNREFUSED","syscall":"connect","address":"0.0.0.0","port":8000,"region":"eu-west-2","hostname":"0.0 .0.0","retryable":true,"time":"2018-02-22T11:13:16.165Z"} 从命令写入事件:{"name":"test","geolocation":"xyz"," type":"createDestination"} END RequestId: ed9ab38e-fb54-18a4-0852-db7e5b56c8cd
我在网上看到您可能需要连接到同一个 docker 网络,所以我创建了一个网络docker network create lambda-local
并将启动命令更改为:
sam local start-api --docker-network lambda-local
和
docker run -v "$PWD":/dynamodb_local_db -p 8000:8000 --network=lambda-local cnadiminti/dynamodb-local:latest
但仍然收到相同的错误
sam local 正在打印2018/02/22 11:12:51 Connecting container 98b19370ab92f3378ce380e9c840177905a49fc986597fef9ef589e624b4eac3 to network lambda-local
我正在使用以下方法创建 dynamodbclient:
并检查我的代码正在创建的 dynamodbclient 节目
这个设置应该工作吗?我如何让他们互相交谈?
- - 编辑 - -
基于 Twitter 对话,值得一提(也许)我可以在 CLI 和 web shell 中与 dynamodb 交互