https://pulumi.com logo
Title
b

bored-oyster-3147

05/06/2021, 3:07 PM
can I get some links toward any information regarding writing your own pulumi provider?
It was suggested internally to maybe write a terraform provider and then use your bridge to convert it to a pulumi provider... is that a valid method or is the bad taste that puts in my mouth justified? lol
p

prehistoric-nail-50687

05/06/2021, 3:31 PM
I think this is what you are looking for: https://github.com/pulumi/pulumi-provider-boilerplate
b

bored-oyster-3147

05/06/2021, 3:33 PM
thank you!
r

red-match-15116

05/06/2021, 4:28 PM
@bored-oyster-3147 what kinda provider are you trying to write? We currently have two kinds - tf-bridged providers (based on a tf schema) and native providers (based on openapi specs) @broad-dog-22463 might be the person with the most info here
b

bored-oyster-3147

05/06/2021, 4:29 PM
what would implementing https://github.com/pulumi/pulumi-provider-boilerplate fall under? Cause that would seem to be neither native or tf-bridged
r

red-match-15116

05/06/2021, 4:30 PM
The README does imply “native”
This repo is a boilerplate showing how to create a native Pulumi provider
b

bored-oyster-3147

05/06/2021, 4:31 PM
Ah, I guess I was confused then because I thought
native
was only generated from an open api spec
b

broad-dog-22463

05/06/2021, 4:32 PM
@bored-oyster-3147 what provider are you thinking of writing?
r

red-match-15116

05/06/2021, 4:33 PM
The ones currently in rotation (kubernetes, azure-native and gcp-native) are based on openapi specs. or at least k8s and azure-native are. In any case, I guess that’s not strictly necessary
b

bored-oyster-3147

05/06/2021, 4:33 PM
We just have some internal resources that we would like to be part of the pulumi deployment cycle for the purpose of automation. Probably a very low number of resources, so fairly lightweight. Honestly a dynamic provider would probably be best, but we're a .NET shop so can't do that without disconnecting it from all of our existing code. So we just want to be able to put together something light weight, or at least figure out what the best course of action is to do that
b

broad-dog-22463

05/06/2021, 4:35 PM
@red-match-15116 is 100% correct here - a native provider jsut means that it's a non-TF based provider. You can have your own logic in there that does things
You can implement your own diff / check etc
b

bored-oyster-3147

05/06/2021, 4:37 PM
Gotcha, that makes sense. Ok so we'll take a deeper look at that then and see if we can put something together. Looks like it's time to learn Go! lol. thanks everyone
b

broad-dog-22463

05/06/2021, 5:34 PM
let me know if you need anything here!
🙌 1