-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initial suggestions for plugin release #4
Comments
Hello @misraved, and thanks for taking the time!
The plugin embeds a bunch of code taken directly from Terraform (just before it switched from MPL 2.0 to BSL). There's a bit more info at the end of the README. This is used to interface with the actual Terraform providers, since that is quite convoluted and not documented anywhere. Since I'm not a lawyer, and open source license compatibility is what it is, I opted for keeping the entire plugin under MPL. Now, I have read that "if the author keeps the MPL’d code in separate files, they can combine that code with closed-source code to create an aggregate work. The new code files can be kept proprietary or released under a different license", but I haven't found a clear statement that "you can use MPL files in an Apache-licensed project, as long as you do so-and-so". Do you have any experiences mixing MPL and Apache code? Can it be done safely, and the whole thing licensed under Apache?
Ah, gotcha. That's
Not that I know. A question: from where would those envvars come from? The classical example is AWS's plugin, but there the envvars are very clear: those that the AWS CLI can read should also be respected by the plugin. However, on this plugin there's no preexisting CLI that does the same (okay, there's Terraform itself, but with Terraform you don't operate a provider in isolation, and you don't set the provider, version or config by using envvars). Is it common practice to "invent" envvars just to give users another way of setting config params instead of writing them in the HCL file, or is that only done to reflect an already-existing CLI? In such a case, this plugin wouldn't support them
I think I don't quite understand. For example, which CLI commands does the AWS provider support? Do you mean the Terraform AWS provider or the Steampipe AWS plugin? (yes, I've been fighting with that confusion since I started this project)
Oopsie. I'll get that fixed
Yes, for now. Should that be explicitly indicated somewhere in the docs, or maybe in the HCL comments?
As of now, you have to provide it. There's #1 for adding a In other words, if the plugin defaults to the latest version if the user doesn't provide one, this could happen:
This could be especially bad if the queries aren't run on-demand by a user, but as part of another automatic system where they could be failing for a while and generating bad or empty data. It would be cool if the plugin could somehow detect that it's being launched without a version, find the latest one, and then "freeze" that version forever by editing the HCL file itself (so any further launches would then use that version, which is supposed to work), but that's not possible. And it may be confusing too, having the HCL file change without warning
Of course, sorry! I remember deleting it, I don't remember why |
This is a really interesting plugin! I agree if copying MPL code it's simplest to keep the code under the MPL. This can be through: whole repo as MPL, specific files/dir in repo under MPL or create a separate repo for MPL components to depend upon. For our work we prefer the separate repo approach, but I think for a specific plugin any option is fine. |
@jreyesr we want to express our appreciation for the outstanding work you've done on this new plugin 🎉!
While the fundamental structure is impressive, our usage of the plugin has led us to formulate a few suggestions in line with our best practices:
LICENSE
Mozilla Public License 2.0
license instead ofApache License 2.0
?config/tfbridge.spc
tfbridge.spc
file, that way we implore the users to set the value they need for plugin initialization. Would be more interested to know if you have a different stand on this 👍.tfbridge/config.go
docs/index.md
og_description
seems to be incorrect.version
param? Will the plugin automatically retrieve the default/latest value depending on the provider?Thank you once again for the new plugin @jreyesr, please let me know if you have questions on the above comments. Thanks!!
Looking forward to getting this published on the hub 👍 🚀 !!!
The text was updated successfully, but these errors were encountered: