diff --git a/go.mod b/go.mod index 2b3953561..341472a10 100644 --- a/go.mod +++ b/go.mod @@ -64,7 +64,7 @@ require ( github.com/hashicorp/go-msgpack v1.1.5 github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/go-netaddrs v0.1.0 - github.com/hashicorp/go-plugin v1.4.10 + github.com/hashicorp/go-plugin v1.6.0 github.com/hashicorp/go-secure-stdlib/listenerutil v0.1.4 github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 github.com/hashicorp/go-set/v2 v2.1.0 diff --git a/go.sum b/go.sum index c7ab56f2d..de5a07128 100644 --- a/go.sum +++ b/go.sum @@ -327,6 +327,8 @@ github.com/boltdb/bolt v1.3.1/go.mod h1:clJnj/oiGkjum5o1McbSZDSLxVThjynRyGBgiAx2 github.com/brianvoe/gofakeit/v6 v6.20.1 h1:8ihJ60OvPnPJ2W6wZR7M+TTeaZ9bml0z6oy4gvyJ/ek= github.com/brianvoe/gofakeit/v6 v6.20.1/go.mod h1:Ow6qC71xtwm79anlwKRlWZW6zVq9D2XHE4QSSMP/rU8= github.com/bshuster-repo/logrus-logstash-hook v0.4.1/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= +github.com/bufbuild/protocompile v0.4.0 h1:LbFKd2XowZvQ/kajzguUp2DC9UEIQhIq77fZZlaQsNA= +github.com/bufbuild/protocompile v0.4.0/go.mod h1:3v93+mbWn/v3xzN+31nwkJfrEpAUwp+BagBSZWx+TP8= github.com/buger/jsonparser v0.0.0-20180808090653-f4dd9f5a6b44/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= @@ -860,8 +862,8 @@ github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+l github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/hashicorp/go-netaddrs v0.1.0 h1:TnlYvODD4C/wO+j7cX1z69kV5gOzI87u3OcUinANaW8= github.com/hashicorp/go-netaddrs v0.1.0/go.mod h1:33+a/emi5R5dqRspOuZKO0E+Tuz5WV1F84eRWALkedA= -github.com/hashicorp/go-plugin v1.4.10 h1:xUbmA4jC6Dq163/fWcp8P3JuHilrHHMLNRxzGQJ9hNk= -github.com/hashicorp/go-plugin v1.4.10/go.mod h1:6/1TEzT0eQznvI/gV2CM29DLSkAK/e58mUWKVsPaph0= +github.com/hashicorp/go-plugin v1.6.0 h1:wgd4KxHJTVGGqWBq4QPB1i5BZNEx9BR8+OFmHDmTk8A= +github.com/hashicorp/go-plugin v1.6.0/go.mod h1:lBS5MtSSBZk0SHc66KACcjjlU6WzEVP/8pwz68aMkCI= github.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs= github.com/hashicorp/go-retryablehttp v0.6.6/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= github.com/hashicorp/go-retryablehttp v0.7.2 h1:AcYqCvkpalPnPF2pn0KamgwamS42TqUDDYFRKq/RAd0= @@ -967,8 +969,8 @@ github.com/jarcoal/httpmock v0.0.0-20180424175123-9c70cfe4a1da h1:FjHUJJ7oBW4G/9 github.com/jarcoal/httpmock v0.0.0-20180424175123-9c70cfe4a1da/go.mod h1:ks+b9deReOc7jgqp+e7LuFiCBH6Rm5hL32cLcEAArb4= github.com/jefferai/isbadcipher v0.0.0-20190226160619-51d2077c035f h1:E87tDTVS5W65euzixn7clSzK66puSt1H4I5SC0EmHH4= github.com/jefferai/isbadcipher v0.0.0-20190226160619-51d2077c035f/go.mod h1:3J2qVK16Lq8V+wfiL2lPeDZ7UWMxk5LemerHa1p6N00= -github.com/jhump/protoreflect v1.6.0 h1:h5jfMVslIg6l29nsMs0D8Wj17RDVdNYti0vDN/PZZoE= -github.com/jhump/protoreflect v1.6.0/go.mod h1:eaTn3RZAmMBcV0fifFvlm6VHNz3wSkYyXYWUh7ymB74= +github.com/jhump/protoreflect v1.15.1 h1:HUMERORf3I3ZdX05WaQ6MIpd/NJ434hTp5YiKgfCL6c= +github.com/jhump/protoreflect v1.15.1/go.mod h1:jD/2GMKKE6OqX8qTjhADU1e6DShO+gavG9e0Q693nKo= github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= github.com/jmespath/go-jmespath v0.0.0-20160803190731-bd40a432e4c7/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= diff --git a/plugins/base/plugin_test.go b/plugins/base/plugin_test.go index 40802f593..840ab116c 100644 --- a/plugins/base/plugin_test.go +++ b/plugins/base/plugin_test.go @@ -52,7 +52,7 @@ func TestBasePlugin_PluginInfo_GRPC(t *testing.T) { PluginInfoF: knownType, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ PluginTypeBase: &PluginBase{Impl: mock}, }) defer server.Stop() @@ -92,7 +92,7 @@ func TestBasePlugin_ConfigSchema(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ PluginTypeBase: &PluginBase{Impl: mock}, }) defer server.Stop() @@ -131,7 +131,7 @@ func TestBasePlugin_SetConfig(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ PluginTypeBase: &PluginBase{Impl: mock}, }) defer server.Stop() diff --git a/plugins/device/plugin_test.go b/plugins/device/plugin_test.go index adb8e8ebd..1a832bc4a 100644 --- a/plugins/device/plugin_test.go +++ b/plugins/device/plugin_test.go @@ -62,7 +62,7 @@ func TestDevicePlugin_PluginInfo(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -105,7 +105,7 @@ func TestDevicePlugin_ConfigSchema(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -152,7 +152,7 @@ func TestDevicePlugin_SetConfig(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -236,7 +236,7 @@ func TestDevicePlugin_Fingerprint(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -314,7 +314,7 @@ func TestDevicePlugin_Fingerprint_StreamErr(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -367,7 +367,7 @@ func TestDevicePlugin_Fingerprint_CancelCtx(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -443,7 +443,7 @@ func TestDevicePlugin_Reserve(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -553,7 +553,7 @@ func TestDevicePlugin_Stats(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -631,7 +631,7 @@ func TestDevicePlugin_Stats_StreamErr(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) @@ -684,7 +684,7 @@ func TestDevicePlugin_Stats_CancelCtx(t *testing.T) { }, } - client, server := plugin.TestPluginGRPCConn(t, map[string]plugin.Plugin{ + client, server := plugin.TestPluginGRPCConn(t, true, map[string]plugin.Plugin{ base.PluginTypeBase: &base.PluginBase{Impl: mock}, base.PluginTypeDevice: &PluginDevice{Impl: mock}, }) diff --git a/plugins/drivers/testutils/testing.go b/plugins/drivers/testutils/testing.go index e2db11132..9ceb0227d 100644 --- a/plugins/drivers/testutils/testing.go +++ b/plugins/drivers/testutils/testing.go @@ -46,6 +46,7 @@ func NewDriverHarness(t testing.T, d drivers.DriverPlugin) *DriverHarness { pd := drivers.NewDriverPlugin(d, logger) client, server := plugin.TestPluginGRPCConn(t, + true, map[string]plugin.Plugin{ base.PluginTypeDriver: pd, base.PluginTypeBase: &base.PluginBase{Impl: d},