r - AWS SAM Lambda 附加运行时层而不构建运行时(CustomMakeBuilder 异常)
问题描述
我正在通过提供的运行时在 Lambda 上部署 R 函数,但是它在构建过程中失败。
我做的步骤:
通过 Lambda 层设置 R 运行时一切正常(https://github.com/bakdata/aws-lambda-r-runtime)
在 R 中创建 Lambda 函数并将其添加到 template.yml 文件中:
RTestFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: functions/r_test
Handler: fun.handler
Runtime: provided
Layers:
- !Ref Runtime # ARN String to Runtime Layer
- !Ref Recommended # ARN String to Recommended Layer
- !Ref AWSLibs # ARN String to AWSLibs Layer
Policies:
- AWSLambdaBasicExecutionRole
- S3ReadPolicy:
BucketName: !Ref Bucket
Timeout: 300
MemorySize: 256
- 执行
sam build
- 我收到以下错误消息:
Building codeuri: functions/r_test runtime: provided metadata: {} functions: ['RTestFunction']
Build Failed
Error: CustomMakeBuilder:Resolver - Path resolution for runtime: provided of binary: make was not successful
即使我收到错误,一切仍然正常工作,并且 RTestFunction 按预期工作。但我更愿意解决这个错误。
问题:
- 我如何跳过构建部分,因为该层已经部署并且可以工作。我只想通过使用相应的 ARN 将层(运行时、推荐和 AWSLibs)链接到 RTestFunction。
文档说使用 Metadata 标签构建运行时是可选的,但我没有使用 Metadata 标签,那为什么还要尝试构建运行时呢? https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html
解决方案
推荐阅读
- python - 无法区分用于执行一项特定操作的两个选择器
- java - 如何仅使用 Selenide 指定 chrome 配置文件
- php - 正则表达式排除搜索词组?
- python - 如何在它选择的 seaborn 分布图中添加一条垂直线?
- javascript - Bootstrap 4 tablist - 点击时切换标签
- django - 如何在自定义 django 模型管理员中使用 csrf 令牌?
- twitter - Twitter 预览卡未显示
- javascript - 如果我没有 Mac 可连接,如何在 iOS 上的 Safari 中检查浏览器错误?
- android - 反应原生onesignal无法在android中注册用户
- sql - 是否可以在 SQL Server 中从现有表创建新表并更改列数据类型?