Python Buildspec.yml文件中设置的环境变量在生成时未显示在环境中(AWS Lambda/CodeStar)

Python Buildspec.yml文件中设置的环境变量在生成时未显示在环境中(AWS Lambda/CodeStar),python,aws-lambda,aws-codestar,Python,Aws Lambda,Aws Codestar,首先是一点背景知识。我们正在AWS中构建一个应用程序,使用CodeStar控制一切。它是用Python 3编写的 但是,尽管每次尝试,我们都无法获得在buildspec.yml文件中设置的变量,以便在部署代码时在环境中显示 例如,下面是buildspec.yml文件 version: 0.2 env: variables: PASSWORD: "abc123" artifacts: type: zip

首先是一点背景知识。我们正在AWS中构建一个应用程序,使用CodeStar控制一切。它是用Python 3编写的

但是,尽管每次尝试,我们都无法获得在buildspec.yml文件中设置的变量,以便在部署代码时在环境中显示

例如,下面是buildspec.yml文件

    version: 0.2

      env:
        variables:
            PASSWORD: "abc123"

      artifacts:
        type: zip
        files:
          - template-export.yml
          - '**/*'
然后,当我们构建一个打印整个环境变量的函数时,变量中没有显示MY_VAR。我们使用的代码基本上如下所示:

    import os

    def handler(event, context):
      PASSWORD1 = str(os.environ["PASSWORD"])
      print(PASSWORD1)
据我所知,它目前有一个分配给它的角色,赋予它完全的权限。我相信有一个简单的解决方案,但到目前为止,我们还没有找到它-尽管花了数小时试图让它工作

如有任何帮助或指点,将不胜感激

注意-这似乎非常类似于:


但是我们希望在yaml文件中设置变量,而不是通过Lambda配置区域设置变量。如果您有template.yaml文件,请将环境变量放入该文件中。在资源的属性中,包括名为Environment的属性和名为Variables的子属性。这里有一个与我们使用的类似的例子

  LambdaFunction:
    Type: AWS::Serverless::Function
    Properties:
      CodeUri: ./src
      Handler: lambda_function.lambda_handler
      MemorySize: 1024
      Timeout: 3
      Environment:
        Variables:
          LOG_LEVEL: DEBUG