是否可以使用 !Sub 在 AWS 的 SAM CLI 模板中将一个环境变量与另一个环境变量连接起来?
Is is possible to use !Sub to concatinate one environment variable with another in SAM CLI templates for AWS?
我有一组 lambda,我在参数存储参数中拥有大部分项目。我有由环境分隔的子树。
例子
/prod/type/app1/parameter1
/prod/type/app1/parameter2
/prod/type/app2/parameter1
/dev/type/app1/parameter1
/dev/type/app1/parameter2
/dev/type/app2/parameter1
我想使用 SAM CLI 为 lambda 函数引用 template.yml 环境变量中的路径。
我正在尝试使用 !Sub,但没有得到我希望的结果。
示例:
Environment:
Variables:
ENV: "DEV"
SSM_PS_APP1_PATH: !Sub "/${ENV}/type/app1/"
我得到的结果是:
/ENV/type/app1
我的问题是可以使用 !Sub 在环境变量声明中引用另一个变量吗?
遗憾的是,这不可能。您还必须创建 ENV
CloudFormation 变量:
Parameters:
ENV:
Default: DEV
然后:
Environment:
Variables:
ENV: !Ref ENV
SSM_PS_APP1_PATH: !Sub "/${ENV}/type/app1/"
我有一组 lambda,我在参数存储参数中拥有大部分项目。我有由环境分隔的子树。
例子
/prod/type/app1/parameter1
/prod/type/app1/parameter2
/prod/type/app2/parameter1
/dev/type/app1/parameter1
/dev/type/app1/parameter2
/dev/type/app2/parameter1
我想使用 SAM CLI 为 lambda 函数引用 template.yml 环境变量中的路径。
我正在尝试使用 !Sub,但没有得到我希望的结果。
示例:
Environment:
Variables:
ENV: "DEV"
SSM_PS_APP1_PATH: !Sub "/${ENV}/type/app1/"
我得到的结果是:
/ENV/type/app1
我的问题是可以使用 !Sub 在环境变量声明中引用另一个变量吗?
遗憾的是,这不可能。您还必须创建 ENV
CloudFormation 变量:
Parameters:
ENV:
Default: DEV
然后:
Environment:
Variables:
ENV: !Ref ENV
SSM_PS_APP1_PATH: !Sub "/${ENV}/type/app1/"