mirror of
https://github.com/kemko/nomad.git
synced 2026-01-05 09:55:44 +03:00
Merge pull request #5242 from hashicorp/b-fix-drivers-panic
drivers: pass logger through driver plugin client
This commit is contained in:
@@ -205,7 +205,7 @@ func (l *PluginLoader) dispensePlugin(
|
||||
|
||||
client := plugin.NewClient(&plugin.ClientConfig{
|
||||
HandshakeConfig: base.Handshake,
|
||||
Plugins: getPluginMap(pluginType),
|
||||
Plugins: getPluginMap(pluginType, logger),
|
||||
Cmd: pluginCmd,
|
||||
AllowedProtocols: []plugin.Protocol{plugin.ProtocolGRPC},
|
||||
Logger: logger,
|
||||
@@ -259,7 +259,7 @@ func (l *PluginLoader) dispensePlugin(
|
||||
}
|
||||
|
||||
// getPluginMap returns a plugin map based on the type of plugin being launched.
|
||||
func getPluginMap(pluginType string) map[string]plugin.Plugin {
|
||||
func getPluginMap(pluginType string, logger log.Logger) map[string]plugin.Plugin {
|
||||
pmap := map[string]plugin.Plugin{
|
||||
base.PluginTypeBase: &base.PluginBase{},
|
||||
}
|
||||
@@ -268,7 +268,7 @@ func getPluginMap(pluginType string) map[string]plugin.Plugin {
|
||||
case base.PluginTypeDevice:
|
||||
pmap[base.PluginTypeDevice] = &device.PluginDevice{}
|
||||
case base.PluginTypeDriver:
|
||||
pmap[base.PluginTypeDriver] = &drivers.PluginDriver{}
|
||||
pmap[base.PluginTypeDriver] = drivers.NewDriverPlugin(nil, logger)
|
||||
}
|
||||
|
||||
return pmap
|
||||
|
||||
@@ -11,6 +11,8 @@ import (
|
||||
"google.golang.org/grpc"
|
||||
)
|
||||
|
||||
var _ plugin.GRPCPlugin = &PluginDriver{}
|
||||
|
||||
// PluginDriver wraps a DriverPlugin and implements go-plugins GRPCPlugin
|
||||
// interface to expose the the interface over gRPC
|
||||
type PluginDriver struct {
|
||||
@@ -19,7 +21,7 @@ type PluginDriver struct {
|
||||
logger hclog.Logger
|
||||
}
|
||||
|
||||
func NewDriverPlugin(d DriverPlugin, logger hclog.Logger) plugin.GRPCPlugin {
|
||||
func NewDriverPlugin(d DriverPlugin, logger hclog.Logger) *PluginDriver {
|
||||
return &PluginDriver{
|
||||
impl: d,
|
||||
logger: logger,
|
||||
|
||||
@@ -43,7 +43,7 @@ func (d *DriverHarness) Impl() drivers.DriverPlugin {
|
||||
func NewDriverHarness(t testing.T, d drivers.DriverPlugin) *DriverHarness {
|
||||
logger := testlog.HCLogger(t).Named("driver_harness")
|
||||
|
||||
pd := drivers.NewDriverPlugin(d, logger).(*drivers.PluginDriver)
|
||||
pd := drivers.NewDriverPlugin(d, logger)
|
||||
|
||||
client, server := plugin.TestPluginGRPCConn(t,
|
||||
map[string]plugin.Plugin{
|
||||
|
||||
Reference in New Issue
Block a user