问题标签 [terraform-template-file]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
terraform - 从 Terraform 模块导入值
我有我正在构建的两个 Terraform 模块的骨架:api-gateway
和lambda
. 这是文件结构:
的(摘录)内容modules/api-gateway/main.tf
是:
的(摘录)内容modules/lambda/main.tf
是:
${aws_lambda_function.fn_name.invoke_arn}
问题是我无法读取以下值modules/api-gateway/main.tf
:
有没有办法从内部“导出”该值modules/api-gateway/main.tf
?
terraform - user_data 中的命令不会在 terraform 中执行
您好 EC2 实例已创建,但作为 userdata.sh 一部分的命令未得到执行。当我通过 putty 手动连接到 EC2 时,我发现 EC2 实例中没有安装 nginx。为了验证脚本是否正在执行,我添加了回显消息,但是当我运行 terraform apply 时,命令提示符中没有显示任何输出。我如何验证用户数据是否正在执行?
我已经在 C 驱动器中安装了 Terraform,并且下面的脚本存在于同一文件夹 C:/Terraform/userdata.sh、C:/Terraform/main.tf 中,我尝试将路径作为 ${file("./userdata.sh") }" 但它仍然不起作用。
请建议,因为我刚刚学习 terraform。谢谢。
这在我的 terraform 程序 [main.tf] 中被调用,如下所示:
terraform-template-file - Terraform Template_File 渲染不工作
我是 Terraform 和 AWS 学习 template_file 的新手。我刚刚使用 template_file 构建了如下代码,但在启动 EC2 实例后,我发现 template_file 中的脚本未执行 - 未安装 tcpdump 和 httpd 并且未进行主机名和名称服务器配置。有人可以指出我在这里做错了什么吗?
模板文件:user_data.sh.tpl:
/li>模块目录下 application.tf 文件中的资源和数据:
/li>
amazon-web-services - 资源 'data.template_file.user_data' 没有属性 'rendered'
地形版本:v0.11.8
用例
尝试使用 terraform 终止资源,运行输出命令时出错。
代码:
调试输出
module.test.output.test_rendered:资源“data.template_file.user_data”没有变量“data.template_file.user_data.rendered”的属性“rendered”
预期行为
没有任何错误的终止。
附加上下文
这个问题是在我将 terraform 从 v0.11.4 升级到 v0.11.8 并且我还将 aws 提供程序更新到最新的 1.33.0 之后出现的
有什么帮助吗?
谢谢!
terraform - Terraform template_provider 数据源输出的正确方法
我正在尝试使用 Terraform 中的模板渲染地图的输出:
variable "default_tags" {
type = "map"
default = {
"tag1" ="Tag A",
"tag2" ="Tag B"
}
}
定义一个 template_file 数据源来渲染地图:
我的输出块应如下所示:
但是,我在计划时收到此错误:
输出渲染模板的正确方法是什么?
amazon-s3 - 一个来源可以预定义 AWS 存储桶策略,例如乐高积木吗?
假设我们要求所有存储桶策略都应该拒绝不包含加密信息的存储请求。一种干净的方法是将其定义为各种模板,然后在需要时将该模板导入特定的存储桶策略。
在 AWS 访问策略语言和 Terraform 中,我似乎找不到任何可以做到这一点的东西。如果可能,我想在 Terraform 中执行此操作,但我们将不胜感激任何建议。
terraform - Terraform 模板文件在销毁时没有“渲染”属性
运行时出现错误terraform destroy
,我的输出是template_file
资源的结果,其内容取决于被破坏的资源。
当我进行破坏时,我收到一个错误:
Resource 'data.template_file.ansible_inventory' does not have attribute 'rendered' for variable 'data.template_file.ansible_inventory.rendered'
有解决方法吗?这似乎与此处报告的问题相同:资源'data.template_file.user_data'没有属性'rendered'
azure-web-app-service - 错误:azurerm_app_service.ci_rg:资源重复多次
我正在尝试在同一资源组中部署 2 个不同的 Azure 应用程序。
这些 Azure 应用程序被定义为存储在 Azure 容器注册表中的 docker 镜像(我之前在其中推送了这些 docker 镜像)。
我无法同时部署它们,因为我认为我定义它们的方式有问题,因为 Terraform 期望只找到一个azurerm_app_service
,但我不确定如何解决这个问题?
当我运行此命令时:terraform plan -var-file test.tfvars
,然后我在输出中看到此消息:
如何定义“相同类型的 2 个不同资源”?
这是main.tf
文件的内容(我在其中注入定义的变量和定义variables.tf
的值test.tfvars
):
编辑:
我不完全确定这个 Terraform 是如何工作的,但我认为这个标签azurerm_app_service
是由“Terraform 的语法”所采用的。请参阅此处的文档:https ://www.terraform.io/docs/providers/azurerm/r/app_service.html
标题为azurerm_app_service
. 所以我认为我无法改变这一点。
terraform - EC2 实例上的 Terraform local-exec 配置程序失败并显示“权限被拒绝”
尝试使用 Terraform 配置 EKS 集群。
terraform apply
失败:
我的 eks_node 模块:
EKS 当前记录了 EKS 工作程序节点所需的用户数据,以便在 EC2 实例上正确配置 Kubernetes 应用程序。 https://amazon-eks.s3-us-west-2.amazonaws.com/1.10.3/2018-06-05/amazon-eks-nodegroup.yaml
我的用户数据.tpl: