From 462a721edbf97bf72ac2cf434651a96d6d805f6c Mon Sep 17 00:00:00 2001 From: Chris Bednarski Date: Thu, 10 Dec 2015 14:48:06 -0800 Subject: [PATCH 1/3] Enable raw exec in dev mode --- client/driver/raw_exec.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/client/driver/raw_exec.go b/client/driver/raw_exec.go index 5b1d98269571..7bc2ac1121a5 100644 --- a/client/driver/raw_exec.go +++ b/client/driver/raw_exec.go @@ -48,6 +48,11 @@ func (d *RawExecDriver) Fingerprint(cfg *config.Config, node *structs.Node) (boo return false, fmt.Errorf("Failed to parse %v option: %v", rawExecConfigOption, err) } + // Always turn this driver on in dev mode because we don't have a config file + if cfg.DevMode { + enabled = true + } + if enabled { d.logger.Printf("[WARN] driver.raw_exec: raw exec is enabled. Only enable if needed") node.Attributes["driver.raw_exec"] = "1" From 1821db757b8969e25091e87df7c7f63ef1fc2aa1 Mon Sep 17 00:00:00 2001 From: Chris Bednarski Date: Thu, 10 Dec 2015 15:03:25 -0800 Subject: [PATCH 2/3] Use ReadBoolDefault --- client/driver/raw_exec.go | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/client/driver/raw_exec.go b/client/driver/raw_exec.go index 7bc2ac1121a5..9dbec8fb302a 100644 --- a/client/driver/raw_exec.go +++ b/client/driver/raw_exec.go @@ -3,7 +3,6 @@ package driver import ( "fmt" "path/filepath" - "strconv" "time" "github.com/hashicorp/nomad/client/allocdir" @@ -43,10 +42,7 @@ func NewRawExecDriver(ctx *DriverContext) Driver { func (d *RawExecDriver) Fingerprint(cfg *config.Config, node *structs.Node) (bool, error) { // Check that the user has explicitly enabled this executor. - enabled, err := strconv.ParseBool(cfg.ReadDefault(rawExecConfigOption, "false")) - if err != nil { - return false, fmt.Errorf("Failed to parse %v option: %v", rawExecConfigOption, err) - } + enabled := cfg.ReadBoolDefault(rawExecConfigOption, false) // Always turn this driver on in dev mode because we don't have a config file if cfg.DevMode { From 5bf8a1fff6df60db79f10060a1699323e6a585b0 Mon Sep 17 00:00:00 2001 From: Chris Bednarski Date: Thu, 10 Dec 2015 15:24:21 -0800 Subject: [PATCH 3/3] Move raw_exec enabled into the DevMode config block --- client/driver/raw_exec.go | 5 ----- command/agent/config.go | 3 +++ 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/client/driver/raw_exec.go b/client/driver/raw_exec.go index 9dbec8fb302a..9491873ba453 100644 --- a/client/driver/raw_exec.go +++ b/client/driver/raw_exec.go @@ -44,11 +44,6 @@ func (d *RawExecDriver) Fingerprint(cfg *config.Config, node *structs.Node) (boo // Check that the user has explicitly enabled this executor. enabled := cfg.ReadBoolDefault(rawExecConfigOption, false) - // Always turn this driver on in dev mode because we don't have a config file - if cfg.DevMode { - enabled = true - } - if enabled { d.logger.Printf("[WARN] driver.raw_exec: raw exec is enabled. Only enable if needed") node.Attributes["driver.raw_exec"] = "1" diff --git a/command/agent/config.go b/command/agent/config.go index e94ce2e4ce2a..e3fb3ae179f0 100644 --- a/command/agent/config.go +++ b/command/agent/config.go @@ -257,6 +257,9 @@ func DevConfig() *Config { } else if runtime.GOOS == "linux" { conf.Client.NetworkInterface = "lo" } + conf.Client.Options = map[string]string{ + "driver.raw_exec.enable": "true", + } return conf }