Size: a a a

2019 July 31

VT

Victor Tur in terraform_ru
ссылка сразу на "Procedural vs Declarative"
источник

РР

Роман Рахманин in terraform_ru
Я предлагаю в закрепы уже историю со стейтами. Каждый день вопрос начинает повторяться)
источник

АО

Анатолий Облаухов in terraform_ru
Artem
мужики, не ругайтесь)вот такой простенький скрипт
я создаю вм-ку с именем - артем например, потом я хочу создать еще одну, с другим именем, в этом же регионе с этими же характеристиками
но у меня она не создается,а происходит обновление предыдущей, как этого избежать
Проблема в неправильном понимании терраформа.
Это не скрипт. Скрипт - это императивная последовательность действий.
Это конфигурация. Декларативная конфигурация. В терраформе нет скриптов, нет сценариев. В терраформе есть только конфигурации, описания. При применении конфигураци (не скрипта!) терраформ приводит энвайронмент в состояние, описанное в конфигурации. Если есть какие-то различия - предлагает их устранить, поменяв энвайронмент так, чтобы он совпадал с конфигурацией.
источник

VT

Victor Tur in terraform_ru
Max M
Я понимаю что сравнение это его основная фишка. Но есть задачи в которых это не нужно и никак это не отключить)
Пример задачи пожалуйста.
.
это задача типа "создал, и забыл, менять не надо, удалять не надо"?
вижу сходу только создание Лаб для пользователей,
где ресурс создался и автоматически какими-то внешними средствами, через определённый промежуток времени удаляется.
Т.е. например удаляешь в конце дня вообще все ресурсы в аккаунте(или другой сущности)
источник

АО

Анатолий Облаухов in terraform_ru
Если в конфигурации указаны три инстанса, терраформ не будет создавать их раз за разом при каждом запуске. Он будет раз за разом проверять соответствие энвайронмента конфигурации. Если отличий нет - ничего не изменится. Если запустить терраформ 100 раз - он не будет создавать 100 раз три инстанса. Он 100 раз проверит, есть ли там эти три инстанса и совпадают ли они с конфигурацией.
источник

АО

Анатолий Облаухов in terraform_ru
Если нужно определённое количество однотипных инстансов с какими-то несущественными различиями - нужно использовать count
источник

VT

Victor Tur in terraform_ru
Анатолий Облаухов
Если в конфигурации указаны три инстанса, терраформ не будет создавать их раз за разом при каждом запуске. Он будет раз за разом проверять соответствие энвайронмента конфигурации. Если отличий нет - ничего не изменится. Если запустить терраформ 100 раз - он не будет создавать 100 раз три инстанса. Он 100 раз проверит, есть ли там эти три инстанса и совпадают ли они с конфигурацией.
спасибо,
эти бы слова, да людям в уши.
к сожалению, каждый раз одно и тоже приходится тут объяснять.
источник

AO

Anton Olifir in terraform_ru
а как взять элемент листа в 0.12?
источник

AO

Anton Olifir in terraform_ru
в доке на element говорят юзайте list[], в доке про list, говорят что он депрейкейтнуть и не юзайте его...
источник

РР

Роман Рахманин in terraform_ru
в смысле? просто [count.index/id]
источник

РР

Роман Рахманин in terraform_ru
там не совсем то депрекейтед
источник

VT

Victor Tur in terraform_ru
Anton Olifir
а как взять элемент листа в 0.12?
element(mylist, 0)
источник

AO

Anton Olifir in terraform_ru
Victor Tur
element(mylist, 0)
вот у меня сейчас так
источник

РР

Роман Рахманин in terraform_ru
list[] это функция для создания списка, депрекейтнута она
источник

РР

Роман Рахманин in terraform_ru
А не выбор элемента
источник

AO

Anton Olifir in terraform_ru
а, сорян
источник

РР

Роман Рахманин in terraform_ru
а описание use list[index] имеется в виду, где list - название списка, а не функция
источник

VT

Victor Tur in terraform_ru
Anton Olifir
вот у меня сейчас так
если у тебя есть где-то ресурс с count, и ты хочешь его в outputs:
concat(aws_something.myresource.*.id, [""])[0]
источник

РР

Роман Рахманин in terraform_ru
Victor Tur
если у тебя есть где-то ресурс с count, и ты хочешь его в outputs:
concat(aws_something.myresource.*.id, [""])[0]
зачем так сложно, можно же просто по индексу забрать
источник

VT

Victor Tur in terraform_ru
Victor Tur
если у тебя есть где-то ресурс с count, и ты хочешь его в outputs:
concat(aws_something.myresource.*.id, [""])[0]
соответственно добавляешь element если несколько ресурсов, а не 0/1)
источник