hashicorp / go-secure-stdlib

Mozilla Public License 2.0
64 stars 24 forks source link

Add plugincontainer module #84

Closed tomhjp closed 1 year ago

tomhjp commented 1 year ago

Follows up on the new interfaces added in https://github.com/hashicorp/go-plugin/pull/270.

Apologies for the size, although a lot of it is generated/license code. Happy to take feedback on splitting this up into multiple PRs if preferred. Maybe the example could be added separately for instance, but it does make for quite a nice end to end integration test of the feature.

tomhjp commented 1 year ago

I think this is in a decent state to review now. I'm planning to tag go-plugin and pull that tag in once there's rough consensus on this PR, just in case there are any last minute API changes required in go-plugin.

tomhjp commented 1 year ago

Note: Looks like the CI gives a green tick even if the build and tests fail: https://github.com/hashicorp/go-secure-stdlib/actions/runs/5956014581/job/16155887975. I'll look into fixing this in a separate PR tomorrow.

tomhjp commented 1 year ago

Sorry for the commit noise, I accidentally pushed a merge with my CI branch, and chose to revert the merge commit rather than rebase so that it's easier to see changes since last review.

tomhjp commented 1 year ago

I think this is relatively stable now, but I'm yet to finish the Vault changes leveraging this PR, so I might discover some more requirements. There also seems to be a problem with the tests failing in CI, but they work on my machine, so that may take a bit of time to unpick. (Failing CI link with #85 merged in)

tomhjp commented 1 year ago

Thanks all!