如何将 .env 文件中的环境变量读取到 terraform 脚本中?

2024-01-19

我正在使用 terraform 在 aws 上构建 lambda 函数。 terraform 脚本中用于上传环境变量的语法是:

resource "aws_lambda_function" "name_of_function" {

  ...

  environment {
    variables = {
      foo     = "bar"
    }
  }
}

现在我有一个.env我的存储库中的文件包含一堆变量,例如email='[email protected] /cdn-cgi/l/email-protection',我希望 terraform 从该文件中读取(其中一些)并将它们注入到要上传的环境变量的空间中并可供 lambda 函数使用。如何才能做到这一点?


这是一个纯 TerraForm 解决方案,用于解析.env文件到本地 TerraForm 地图。

output "foo" {
  value = { for tuple in regexall("(.*?)=(.*)", file("/path/to/.env")) : tuple[0] => tuple[1] }
}

我已将其定义为通过 CLI 进行快速测试的输出,但您始终可以将其定义为本地或直接在参数上。

编辑以允许环境变量包含=

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 .env 文件中的环境变量读取到 terraform 脚本中? 的相关文章

随机推荐