top | item 31543376

(no title)

PhineasRex | 3 years ago

If you do any non-trivial devops works on cloud providers it's immediately obvious why this is nonsensical.

Let's take the most basic example: auto-generated ids. Many resources in AWS, GCS, etc have auto generated ids (just use tags you say, but many don't have tags or tags are used as part of some other system). Now, when terraform creates that resource you have to modify the config to contain the id. But if you have any sense terraform runs as part of a CI system that lets others review your code before merging, deploy to staging, etc.

So now does the terraform process need to make an automatic git push? What if there's a conflict? Does it make a PR that has to be manually merged? All of this is much more complicated than just having one JSON file in S3.

I have actually managed resources with Ansible where you have this problem and it's worse. And this is just _one_ thing.

Is Terraform's state story perfect? No. There are definitely annoyances, and one thing I'd love to see is a way to declaratively handle imports, renames, etc. when you need to, but it's better than the alternative.

discuss

order

No comments yet.