Skip to content

Commit fbe9b84

Browse files
author
Matthew Fisher
committed
Merge pull request #4249 from Joshua-Anderson/deis-plugins
feat(client-go): support deis plugins
2 parents e5565a2 + f65c74e commit fbe9b84

1 file changed

Lines changed: 19 additions & 2 deletions

File tree

client-go/deis.go

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ package main
33
import (
44
"fmt"
55
"os"
6+
"os/exec"
67
"strings"
8+
"syscall"
79

810
"github.com/deis/deis/client-go/parser"
911
"github.com/deis/deis/version"
@@ -109,8 +111,23 @@ Use 'git push deis master' to deploy to an application.
109111
fmt.Print(usage)
110112
return 0
111113
default:
112-
parser.PrintUsage()
113-
return 1
114+
env := os.Environ()
115+
command = "deis-" + argv[0]
116+
117+
binary, err := exec.LookPath(command.(string))
118+
if err != nil {
119+
parser.PrintUsage()
120+
return 1
121+
}
122+
123+
cmdArgv := []string{command.(string)}
124+
cmdArgv = append(cmdArgv, argv[1:]...)
125+
126+
err = syscall.Exec(binary, cmdArgv, env)
127+
if err != nil {
128+
parser.PrintUsage()
129+
return 1
130+
}
114131
}
115132
if err != nil {
116133
fmt.Printf("Error: %v\n", err)

0 commit comments

Comments
 (0)