3 ms·
You build a multi language component: https://www.pulumi.com/blog/pulumiup-pulumi-packages-multi-language-components/ https://www.pulumi.com/blog/pulumiup-pulum
by jaxxstorm 3y ago
You build a multi language component: https://www.pulumi.com/blog/pulumiup-pulumi-packages-multi-language-components/ https://www.pulumi.com/blog/pulumiup-pulumi-packages-multi-l...
You can then publish a language SDK for your supported languages, so npm for node packages, pip for python.
The invoking peer needs to have the language they're using runtime locally
The python boilerplater is here: https://github.com/pulumi/pulumi-component-provider-py-boilerplate/ https://github.com/pulumi/pulumi-component-provider-py-boile...
Here's an example component built in Go: https://github.com/jaxxstorm/pulumi-productionapp https://github.com/jaxxstorm/pulumi-productionapp
Then in examples you can see it being using: https://github.com/jaxxstorm/pulumi-productionapp/tree/main/examples https://github.com/jaxxstorm/pulumi-productionapp/tree/main/...
- verdverm 3y agoThanks for that blog link! I have been asking this question for a while and you are the first to provide an actual useful answer. Can I pass arguments to these components in other languages? Still unclear It looks to limit, or create specific points, of where the reuse can happen. Like it is still impossible to use a helper function from one runtime in another. So we still need to maintain utilities in multiple languages Either way, it looks like a lot more complexity for anyone who goes down this path