Wpis z mikrobloga

W jaki sposób w Terraformie najlepiej utworzyć backend (Azure Storage Account) do trzymania state file w taki sposób, żeby utworzył się przed innymi zasobami? Jedyny sposób jaki znam to trzymać kod tworzący backend i pozostałe zasoby w osobnych plikach i wykonać je sekwencyjnie: wpierw backend potem reszta. Da się to jakoś uprościć?

Drugie pytanie to czy da się to jakoś zautomatyzować, np stworzyć plik run.sh w którym zrobię coś w stylu
terraform init *terraform init

#programowanie #devops #terraform*
  • 5
@markaron: jest taki parametr jak target nie wiem czy akurat będzie dobry dla Twojego przypadku, ale w sumie warto znać :D
a co do automatyzacji to spotykałem się z rozwiązaniami typu trzymanie całej struktury plików *.tf w gicie, backend w jakimś właśnie cloudowym storage no i pełna automaryzacja z CI/CD, czyli commit zmieniający jakieś elementy infry odrazu triggerował jakiś pipeline z planowaniem i sprawdzało się to super
@markaron: 1) dokladnie tak w projekcie robilismy, tzw mielismy plik create-storage.sh, ktory stworzyl wszystko
2) da sie :) w formie takiej jak piszesz :)

Gdybys chcial z tego zrobic pipeline to musisz zwrocic uwage na jedna rzecz. Mianowicie kod, ktory tworzy storage, albo musi byc manualnym krokiem, ktory wykonasz tylko raz, albo musisz uwzglednic w kodzie to, ze jak storage jest, to zeby go nie tworzyc (co w sumie jest proste).