如何将环境变量从SAM cli传递到Lambda函数代码

时间:2019-03-03 10:42:12

标签: python aws-lambda environment-variables

是否可以在SAM中指定env变量,以便在Lambda函数代码(python)中可用?我需要为阶段部署的变量设置不同的值。我可以在模板文件(yml)中设置env变量,但不确定如何为不同的环境(dev,prod)定义它。

1 个答案:

答案 0 :(得分:0)

您可以通过模板参数设置环境变量:


AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31

Parameters:
  Stage:
    Type: String
    AllowedValues:
      - dev
      - prod

Globals:
  Function:
    Environment:
      Variables:
        STAGE: !Ref Stage

然后在部署过程中,从SAM模板创建/更新堆栈时传入Stage参数。例如,如果您通过CLI进行操作,请使用--parameters ParameterKey=Stage,ParameterValue=prod