Provide args to BuildWithEnv as slice not map
diff --git a/gexec/build.go b/gexec/build.go index 462f033..d11b2fd 100644 --- a/gexec/build.go +++ b/gexec/build.go
@@ -30,7 +30,7 @@ /* BuildWithEnvironment is identical to Build but allows you to specify env vars to be set at build time. */ -func BuildWithEnvironment(packagePath string, env map[string]string, args ...string) (compiledPath string, err error) { +func BuildWithEnvironment(packagePath string, env []string, args ...string) (compiledPath string, err error) { return doBuild(os.Getenv("GOPATH"), packagePath, env, args...) } @@ -41,7 +41,7 @@ return doBuild(gopath, packagePath, nil, args...) } -func doBuild(gopath, packagePath string, env map[string]string, args ...string) (compiledPath string, err error) { +func doBuild(gopath, packagePath string, env []string, args ...string) (compiledPath string, err error) { tmpDir, err := temporaryDirectory() if err != nil { return "", err @@ -61,11 +61,7 @@ build := exec.Command("go", cmdArgs...) build.Env = append([]string{"GOPATH=" + gopath}, os.Environ()...) - - for k, v := range env { - envVar := k + "=" + v - build.Env = append(build.Env, envVar) - } + build.Env = append(build.Env, env...) output, err := build.CombinedOutput() if err != nil {
diff --git a/gexec/build_test.go b/gexec/build_test.go index c090339..8df0790 100644 --- a/gexec/build_test.go +++ b/gexec/build_test.go
@@ -40,9 +40,9 @@ var _ = Describe(".BuildWithEnvironment", func() { var err error - env := map[string]string{ - "GOOS": "linux", - "GOARCH": "amd64", + env := []string{ + "GOOS=linux", + "GOARCH=amd64", } It("compiles the specified package with the specified env vars", func() {