You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Terraform中用Range生成批量Room资源(免手动维护列表)

用Range自动生成带序号的房间名称方案

当然可以通过range函数实现固定前缀加序号的命名,完全不用手动维护房间名称列表。以下是修改后的代码:

# 直接用range动态生成room1到room1000的名称列表,无需手动维护变量
locals {
  room_names = [for i in range(1, 1001) : "room${i}"]
}

resource "random_string" "room_id" {
  count            = length(local.room_names) # 和房间数量保持一致
  length           = 14
  special          = true
  override_special = "/@£$"
}

resource "subject" "list" {
  for_each = zipmap(local.room_names, random_string.room_id)

  room      = each.key
  unique_id = each.value.result
}

关键修改说明:

  • 移除了原有的list_of_rooms变量,改用locals结合range生成从room1到room1000的名称列表。range(1, 1001)会生成1到1000的整数,通过字符串插值拼接成房间名。
  • random_string的count设为length(local.room_names),确保随机ID的数量和房间数量完全匹配,避免硬编码数字。
  • 后续如果需要调整资源数量,只需要修改range的结束值(比如要创建500个就改成range(1, 501)),无需改动其他部分。

这样就能高效批量生成带有序号的房间资源,完全不用手动维护冗长的名称列表。

内容的提问来源于stack exchange,提问作者Rob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 20:25:02