The defining characteristic about Pulumi compared to other tools is that it's not a transpiler, in fact. It's a multi-language runtime written in Go that can host many language plugins (Node.js, Python, .NET, Go, etc), as well as many resource provider plugins (native ones, OpenAPI-based, Terraform-based). So although yes it can use Terraform providers -- great for coverage across many infrastructure providers as well as easy portability if you're coming from Terraform/HCL -- it's not correct to say that it's "just using Terraform" or is a "transpiler".
So they are implementing their own N language runtimes? That sounds like trouble waiting to happen. How do they have the man power to support N languages as a single company?
(edit)
Apparently they shell out to other language runtimes. So my original question about needing N runtimes available still applies. I'm not interested in supporting N runtimes for my IaC, TF seems good enough. Put Cuelang on top of that and you have a much better system. There are people already doing this.
As a Pulumi employee, what is your response to the N runtime problem and sharing of modules in an org?
4 comments
[ 3.0 ms ] story [ 23.5 ms ] threadiirc, it's just using Terraform behind the scenes anyway. If that is the case, is Pulumi just a glorified transpiler?
Pulumi is open source on GitHub if you want to check it out: https://github.com/pulumi/pulumi.
(edit)
Apparently they shell out to other language runtimes. So my original question about needing N runtimes available still applies. I'm not interested in supporting N runtimes for my IaC, TF seems good enough. Put Cuelang on top of that and you have a much better system. There are people already doing this.
As a Pulumi employee, what is your response to the N runtime problem and sharing of modules in an org?