The truth behind Pulumi's AWS provider

Pulumi Terraform provider AWS

2 min read | by Jordi Prats

If when writing Pulumi code to deploy to AWS ever got the feeling that you where using some interface to write terraform code (HCL), there might be a reason for you to get that feeling.

If you check pulumi's AWS provider you'll notice how it is using terraform's AWS provider. For example, version v5.37.0 in commit 6d0e07c is clearly stating which version of the terraform provider is it using:

Upgrade terraform-provider-aws to v4.63.0

They are even forking the repository: pulumi/terraform-provider-aws vs hashicorp/terraform-provider-aws

If we clone both repositories, switch to the appropriate tag/commit, we can see how it's the same exact provider with absolutely no changes:

$ diff -Naur pulumi-fork/ hashicorp/ -x .git

What I find concerning is that for the more recent versions they are not so explicit, for example for commit 0b881b4 they refers to it just as upstream:

Upgrade to v4.65.0 (#2510)

* Upgrade to upstream v4.65.0

Reusing something that's already well tested by a a wide range of people is going to give pulumi users confidence when deploying infrastructure with this product, there's no reason to hide it. Instead, they should be proud of not trying to reinvent the wheel.

Posted on 24/05/2023