From d45d6c62518bd1a84204013d2b8cf83c8bc02405 Mon Sep 17 00:00:00 2001 From: Alex Dadgar Date: Wed, 19 Dec 2018 16:32:42 -0800 Subject: [PATCH] add docker logger to separate main --- drivers/docker/cmd/main.go | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/drivers/docker/cmd/main.go b/drivers/docker/cmd/main.go index 5c26333dd..2d0d1104d 100644 --- a/drivers/docker/cmd/main.go +++ b/drivers/docker/cmd/main.go @@ -1,12 +1,34 @@ package main import ( + "os" + log "github.com/hashicorp/go-hclog" + plugin "github.com/hashicorp/go-plugin" "github.com/hashicorp/nomad/drivers/docker" + "github.com/hashicorp/nomad/drivers/docker/docklog" "github.com/hashicorp/nomad/plugins" + "github.com/hashicorp/nomad/plugins/base" ) func main() { + + if len(os.Args) > 1 { + // Detect if we are being launched as a docker logging plugin + switch os.Args[1] { + case docklog.PluginName: + plugin.Serve(&plugin.ServeConfig{ + HandshakeConfig: base.Handshake, + Plugins: map[string]plugin.Plugin{ + docklog.PluginName: docklog.NewPlugin(docklog.NewDockerLogger(log.Default().Named(docklog.PluginName))), + }, + GRPCServer: plugin.DefaultGRPCServer, + }) + + return + } + } + // Serve the plugin plugins.Serve(factory) }