5 ms·
I'm a huge fan of Pulumi. After HCP's license switch, I'm even more sure that Pulumi will be a clear winner over Terraform in the long term.
by vmatsiiako 3y ago
I'm a huge fan of Pulumi. After HCP's license switch, I'm even more sure that Pulumi will be a clear winner over Terraform in the long term.
- Aeolun 3y agoI really don’t think that was ever in doubt. You only need to use it for a very short time to find that the ergonomics are infinitely nicer than Terraform.
- vbezhenar 3y agoMy biggest issue with terraform is concept of state file. It seems that Pulumi continues on this model. I wish someone came up with innovative idea of not needing state file.
- grudg3 3y agoBicep does that, but it's Azure only, and you can't really 'destroy', just apply.
- rirze 3y agoFrom my prelimary search, Bicep does utilize a state file, but it is completely hidden from the end users. Seems to be managed in Azure directly and automagically. https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/overview?tabs=bicep https://learn.microsoft.com/en-us/azure/azure-resource-manag...
- chokolad 3y agoI think you might be misunderstanding this page. Bicep's "state file" is actual Azure state. Bicep is a nicer way to write ARM (Azure Resource Manager), which is pretty much an Azure API. if you are familiar with Kubernetes, ARM represents Azure internal state in the same way kubernetes YAML represents actual kubernetes objects stored in the cluster.
- rirze 3y ago> No state or state files to manage: All state is stored in Azure. Users can collaborate and have confidence their updates are handled as expected. Not sure how I could "misunderstand" this quote to mean anything else. By that logic, CloudFormation is also the same; end users don't have access to the state so therefore the state file is the state of the environment itself? We, as users, have no idea what intermediate step exists between the configuration yaml and actual representation of an account's resources.
- notnmeyer 3y agothis is difficult for me to think about in the same way as trying to picture a 4th dimension. surely, state needs to be tracked somehow. what would an alternative even be?
- verve_rat 3y agoQuerying the cloud provider apis for current state? Go to the actual source of truth? I'm sure there are complications i don't care to see here, but why is "this is what is actually deployed" not the default case?
- Aeolun 3y agoQuerying cloud provider API’s takes a while. It can be done, but the results are cached afterwards, which is the state file. Refreshing the state file (and reconciling differences) also uses the cloud provider API’s. I don’t think we’re going to get better than that. Unless someone makes a common standard for resource reporting that all cloud providers implement.
- notnmeyer 3y agoexactly. relying purely on the provider’s api seems like an untenable solution with the current state of things.
- yencabulator 3y agoThe state file is more than a cache. If it was just a cache, it wouldn't be problematic.
- notnmeyer 3y agoyou’d be subject to rate limits and all manner of potential issues and outages if you only query the providers api. that’s part of the case for a centralized state, to have an additional place that describes what should exist and what it looks like.
- hdjjhhvvhga 3y ago
- hughesjj 3y ago<3 pulumi