问题标签 [hcl]
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.
amazon-web-services - target_groups 可选参数不是可选的:terraform
给定键未标识此集合值中的元素
.
对我来说都是希腊语。我们可以使用帮助..
terraform - terraform 文件中的扩展运算符
我想简化这样的结构
HCL 是否有类似于传播运算符的东西?
terraform - Terraform:来自多个模块调用的输出
伪代码:
(模块 ./foo 根据输入值输出一个唯一的 id)
问题:
我希望能够任意实例化/调用 ./foo 模块并访问每个模块实例的唯一 ID。我看不到使用 Terraform 执行此操作的方法,因为输出语法需要每个模块实例化一个唯一的 val=expression。不幸的是(并不奇怪)不支持模块对象 (module.*.id) 上的 Splat 表达式。
我猜这不能在 terraform 中完成,但很想错。
xpages - 基于 xPages 的论坛
不幸的是,我对基于 Domino FP9 服务器的论坛有疑问。使用框架/语言 xpages 创建了几个页面。我创建了一个组和一个类别。但用户无法访问内容。
我的问题是:如何在 HCL 管理员或设计器中实现组的权限以读取页面上的内容?
亲切的问候
奥坎
docker - 如何使用 terraform destroy 强制删除 Docker 映像
我正在关注terraform.io 上的教程,该教程让我使用 terraform 配置 docker 映像和容器,然后销毁 terraform 堆栈。但是,我收到以下错误:
我知道本机 Docker 解决方案正在运行docker rmi -f 540a289bab6c
。但是,我想知道是否有一种 terraform 方法来解决这个问题?
terraform 资源的文档docker_image
显示了 terraform 试图破坏图像的原因terraform destroy
:模板main.tf
已keep-locally
设置为true
. 但它没有说明如何强制进行这种破坏。
教程的main.tf
内容如下:
那么,如何terraform destroy
在不借助 docker 原生工具的手动干预的情况下强制使用此模板呢?
terraform - 使用 for_each 填写列表参数
我正在尝试将条目添加到资源labels
的和metadata
子块中。我很难循环遍历每个度量描述符的结构图,以及 和 的内部集合。它似乎不接受块内的内部,并且尝试分配给它似乎也不起作用。google_monitoring_metric_descriptor
for_each
labels
metadata
for_each
=
这给出了这个错误terraform apply
:
terraform - terraform 执行计划中的前缀有什么区别?
这是文档给出的解释:
前缀 -/+ 表示 Terraform 将销毁并重新创建资源,而不是就地更新它。虽然可以就地更新某些属性(以 ~ 前缀显示),但更改 EC2 实例的 AMI 需要重新创建它。Terraform 会为您处理这些细节,执行计划清楚地表明 Terraform 将做什么。
此外,执行计划显示 AMI 更改是需要替换您的资源的原因。使用此信息,您可以调整您的更改,以避免在某些情况下不可接受的更新/创建更新。
这是示例 CLI 输出:
我理解-/+
之前的前缀resource "aws_instance"
——这意味着实例将被终止并使用 AMI 重新创建。
我不明白的是它下面的逐项列表中的~
、-
和之间的区别。+
例如,在上面的代码片段中,安全组~
前面有 a 而特定安全组名称前面default
有a 似乎是任意的-
。
这并不妨碍我完成某些事情,我只是对那些语法决定感到好奇,这样我也许可以对 Terraform 有更深入的了解。
terraform - 如何根据资源所在的环境动态命名资源?
我正在尝试根据环境(开发、阶段或产品)统一资源的命名。我将举例说明。
假设我想创建一个 aws iam 用户资源,例如:
在这里,我将“dev”硬编码到资源的名称中。但理想情况下,我希望根据它所在的文件夹动态完成此操作(文件夹类似于 dev 或 prod 等环境)。
文件夹结构类似于:
所以我想要实现的是:
命名函数将名称作为输入并根据环境对其进行命名。所以如果这个资源是在dev下创建的,那么naming_function(woof)
应该返回字符串“woof_dev”
所以我的问题是:
- 如何动态命名事物?
- 使用包含诸如 meow_{env_name} 之类的环境的命名约定是否正确?
list - Terraform - 将列表转换为新的列表列表
在 Terraform 中,我需要将输入数据结构从例如:
产生这样的输出:
所以本质上,我需要获取列表的输入列表并创建一个输出,该输出再次是列表列表,但其第 0 个列表是输入中每个列表的第 0 个元素的列表......然后再次相同第一个等等。我无法提前知道输入中有多少个列表或它们会有多长时间,但如果有帮助,我们可以假设这些列表的长度都相同。
我已经尝试了几乎所有我能想到的并在网上搜索,但没有运气。非常欢迎所有建议!
terraform - 是否可以在 HCL 中执行嵌套迭代,从而在不调用 flatten 的情况下生成一个平面列表?
是否有可能在不诉诸于的情况下HCL
让嵌套迭代返回一个平面?list(map)
flatten
我有这个:
我想消除对flatten
这样的需求:
但似乎每个人都for .. in
必须返回数据。