crossplane / terrajet

Generate Crossplane Providers from any Terraform Provider
https://crossplane.io
Apache License 2.0
290 stars 38 forks source link

Allow Terrajet-based providers to run in shared gRPC mode #261

Closed ulucinar closed 2 years ago

ulucinar commented 2 years ago

What problem are you facing?

We would like to have an option to prevent the Terraform CLI from forking the native provider plugin for each request, and instead communicate with a long running provider process via gRPC in the context of #38 and #233.

How could Terrajet help solve your problem?

We can extent provider-jet-template and probably the configuration framework in Terrajet with options for configuring Terrajet-based providers to use a shared gRPC server.

muvaf commented 2 years ago

One implication of this is that we should warn against using env vars for authentication because TF won't fork the provider process anymore, hence it cannot affect its env vars. Having it there as available will be confusing if we have the shared provider in the template as the default mode of execution. In fact, I think we can deprecate it and then remove in a future release in order to push for standardization of the execution mode to shared provider.