Я не могу получить доступ к членам набора terraform путем индексации
Это дает мне ошибку:
variable "set" {
type = set(string)
default = ["./someFile2.txt", "Hello World Again!"]
}
output "set" {
value = var.set[1]
}
Я подозреваю, что мы не можем получить доступ к членам путем их индексации, а только путем итерации. Не могли бы вы это подтвердить? и, возможно, приведите какой-нибудь пример.
Обновлять:
Elements of a set are identified only by their value and don't have any separate index or key to select with, so it's only possible to perform operations across all elements of the │ set.Что ж, это как бы подтверждает мои подозрения, но как его использовать, или распространен ли этот тип данных (на первый взгляд, это приносит гораздо больше головной боли, чем решений)
У меня нет конкретного варианта использования, это в образовательных целях, мне хотелось бы понять, какие проблемы решаются с помощью наборов.





По определению set неупорядочен, и к его участникам нельзя получить доступ по отдельности. Вместо этого вам понадобится list:
variable "list" {
type = list(string)
default = ["./someFile2.txt", "Hello World Again!"]
}
output "list" {
value = var.set[1]
}
Если в какой-то момент вам по какой-то причине понадобится вернуть тип обратно к set, то функция toset позволит добиться этого.
Ах... вот что я пропустил, наборы не упорядочены!
Чего вы хотите добиться с помощью переменной? Источники данных полезны, но неясно, как и где вы хотите использовать этот набор.