gpt4 book ai didi

amazon-web-services - 在 AWS SAM 中使用 !Ref 设置环境变量?

转载 作者:行者123 更新时间:2023-12-01 09:43:55 25 4
gpt4 key购买 nike

我正在使用 SAM CLI v0.8.1。我正在尝试将环境变量 MY_TABLE_VAR 设置为我的资源 (MyTableResource) 中表的名称。但是,在本地运行我的应用程序时, MY_TABLE_VAR 未定义。你能告诉我我的模板有什么问题,我该如何正确设置?以下是我的 SAM 模板:

Globals:
Function:
Timeout: 30
Runtime: nodejs8.10
Environment:
Variables:
MY_TABLE_VAR: !Ref MyTableResource
Resources:
MyTableResource:
Type: AWS::Serverless::SimpleTable
Properties:
TableName: table1
PrimaryKey:
Name: id
Type: String
ProvisionedThroughput:
ReadCapacityUnits: 5
WriteCapacityUnits: 5

最佳答案

据我了解,Globals部分无法引用 Resources 中的资源部分(依赖关系在另一个方向,因为添加到 Globals 部分的任何内容都会在 Resources 部分中添加 to all Serverless Functions and APIs)。要解决此问题,我建议您使用 MappingsParameters ,例如

Parameters:
TableName:
Type: String
Default: table1

Globals:
Function:
Timeout: 30
Runtime: nodejs8.10
Environment:
Variables:
MY_TABLE_VAR: !Ref TableName

Resources:
MyTableResource:
Type: AWS::Serverless::SimpleTable
Properties:
TableName: !Ref TableName
# more table config....

关于amazon-web-services - 在 AWS SAM 中使用 !Ref 设置环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53697215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com