open-nomad/command/agent/plugins_test.go
Charlie Voiselle 65ce3ec8de
[core] Do not start the plugin loader on non-clients (#16111)
The plugin loader loads task and device driver plugins which are not
used on server nodes.
2023-02-10 15:33:16 -05:00

34 lines
703 B
Go

package agent
import (
"testing"
"github.com/hashicorp/nomad/api"
"github.com/shoenig/test/must"
)
func TestPlugins_WhenNotClientSkip(t *testing.T) {
s, _, _ := testServer(t, false, nil)
must.Nil(t, s.Agent.pluginSingletonLoader)
}
func TestPlugins_WhenClientRun(t *testing.T) {
s, _, _ := testServer(t, true, nil)
must.NotNil(t, s.Agent.pluginSingletonLoader)
}
func testServer(t *testing.T, runClient bool, cb func(*Config)) (*TestAgent, *api.Client, string) {
// Make a new test server
a := NewTestAgent(t, t.Name(), func(config *Config) {
config.Client.Enabled = runClient
if cb != nil {
cb(config)
}
})
t.Cleanup(a.Shutdown)
c := a.Client()
return a, c, a.HTTPAddr()
}