Terraform сам по себе прост, но когда открываешь чужие модули - хочется закрыть ноутбук и уйти в отпуск.
Что обычно встречается:
- 100500 переменных в
variables.tf, половина из которых нигде не используется.- "Универсальный" модуль: и под AWS, и под GCP, и под Azure - но работает только в одном.
- Output-хаос: чтобы понять, откуда берётся IP, нужно пройти 5 вложенных модулей.
- Нет документации — комментарии? README? Не, не слышали.
👉 Как выжить:
1. Начни с
terraform graph | dot -Tpng > graph.png — визуализация сильно помогает понять связи.2. Используй
terraform console — можно проверить выражения прямо на лету.3. Включи
TF_LOG=DEBUG при планировании — увидишь, что реально под капотом.4. И не стесняйся переписать модуль под себя — часто это быстрее, чем поддерживать чужую магию.
💡 Совет: заведите внутренний гайд по стилю Terraform (структура папок, нейминг, обязательный README). Это спасает нервы всей команды.
Подпишись 👉@devopslib