Unknown Values: The Secret to Terraform Plan
log.martinatkins.me
Unknown Values: The Secret to Terraform Plan
1–10 of 22 posts
Re: Unknown Values: The Secret to Terraform Plan
#2That sure does sound like the author believes "pulumi preview" shouldn't ever work
Re: Unknown Values: The Secret to Terraform Plan
#3> So returning to the original question: why doesn't Terraform use an existing language? So far, I've not yet encountered an existing language runtime which contains the building blocks Terraform uses in order to keep the plan-related promises. That sure does sound like the author believes "pulumi preview" shouldn't ever work
Re: Unknown Values: The Secret to Terraform Plan
#4> So returning to the original question: why doesn't Terraform use an existing language? So far, I've not yet encountered an existing language runtime which contains the building blocks Terraform uses in order to keep the plan-related promises. That sure does sound like the author believes "pulumi preview" shouldn't ever work
Re: Unknown Values: The Secret to Terraform Plan
#5> So returning to the original question: why doesn't Terraform use an existing language? So far, I've not yet encountered an existing language runtime which contains the building blocks Terraform uses in order to keep the plan-related promises. That sure does sound like the author believes "pulumi preview" shouldn't ever work
Re: Unknown Values: The Secret to Terraform Plan
#6Re: Unknown Values: The Secret to Terraform Plan
#7> So returning to the original question: why doesn't Terraform use an existing language? So far, I've not yet encountered an existing language runtime which contains the building blocks Terraform uses in order to keep the plan-related promises. That sure does sound like the author believes "pulumi preview" shouldn't ever work
I want so badly to use pulumi's tools, but relying on them as a 3rd party service is just not acceptable to me.
Re: Unknown Values: The Secret to Terraform Plan
#8The discussion part where you are not allowed (from Terraform lang) to create behavior dependent on the actual values of "Unknown" values (to prevent an ambiguous / non-deterministic plan), reminds of Applicatives vs Monads a bit.
(Sketchy potentially non-100% true illustration ahead)
For example, if you write a command-line parsing library using a Monad, then the set of command-line options is not an upfront fixed set easy to list with --help, but can change depending on previous command line options (here the command line parsing can peek into the upfront "Unknown" values, the options used and their values, to generate even more options).
While if you write it using Applicative, then peeking into the actual values is not possible, you can't create branching behaviour.
Re: Unknown Values: The Secret to Terraform Plan
#9I suspect you could implement this as a Haskell DSL. The discussion part where you are not allowed (from Terraform lang) to create behavior dependent on the actual values of "Unknown" values (to prevent an ambiguous / non-deterministic plan), reminds of Applicatives vs Monads a bit. (Sketchy potentially non-100% true illustration ahead) For example, if you write a command-line parsing library using a Monad, then the…
Re: Unknown Values: The Secret to Terraform Plan
#10> So returning to the original question: why doesn't Terraform use an existing language? So far, I've not yet encountered an existing language runtime which contains the building blocks Terraform uses in order to keep the plan-related promises. That sure does sound like the author believes "pulumi preview" shouldn't ever work
I haven't really looked under the hood but I strongly suspect I'm not that far away from truth. At some point I've seriously considered a question why I'm not just templating HCL directly rather than dealing with all those Pulumi oddities.
Either way it feels very different and pretty much alien.