Commit 967d1e85 authored by Adam Reese's avatar Adam Reese Committed by GitHub

Merge pull request #1709 from adamreese/fix/tiller-plugin-ns

fix(helm): add tiller-host to plugin environment
parents 5fc020f0 5961cc44
...@@ -63,7 +63,7 @@ func loadPlugins(baseCmd *cobra.Command, home helmpath.Home, out io.Writer) { ...@@ -63,7 +63,7 @@ func loadPlugins(baseCmd *cobra.Command, home helmpath.Home, out io.Writer) {
RunE: func(cmd *cobra.Command, args []string) error { RunE: func(cmd *cobra.Command, args []string) error {
k, u := manuallyProcessArgs(args) k, u := manuallyProcessArgs(args)
if err := cmd.ParseFlags(k); err != nil { if err := cmd.Parent().ParseFlags(k); err != nil {
return err return err
} }
...@@ -112,7 +112,7 @@ func loadPlugins(baseCmd *cobra.Command, home helmpath.Home, out io.Writer) { ...@@ -112,7 +112,7 @@ func loadPlugins(baseCmd *cobra.Command, home helmpath.Home, out io.Writer) {
func manuallyProcessArgs(args []string) ([]string, []string) { func manuallyProcessArgs(args []string) ([]string, []string) {
known := []string{} known := []string{}
unknown := []string{} unknown := []string{}
kvargs := []string{"--host", "--kube-context", "--home"} kvargs := []string{"--host", "--kube-context", "--home", "--tiller-namespace"}
knownArg := func(a string) bool { knownArg := func(a string) bool {
for _, pre := range kvargs { for _, pre := range kvargs {
if strings.HasPrefix(a, pre+"=") { if strings.HasPrefix(a, pre+"=") {
...@@ -176,6 +176,7 @@ func setupEnv(shortname, base, plugdirs string, home helmpath.Home) { ...@@ -176,6 +176,7 @@ func setupEnv(shortname, base, plugdirs string, home helmpath.Home) {
"HELM_PATH_STARTER": home.Starters(), "HELM_PATH_STARTER": home.Starters(),
"TILLER_HOST": tillerHost, "TILLER_HOST": tillerHost,
tillerNamespaceEnvVar: tillerNamespace,
} { } {
os.Setenv(key, val) os.Setenv(key, val)
} }
......
...@@ -31,18 +31,16 @@ import ( ...@@ -31,18 +31,16 @@ import (
func TestManuallyProcessArgs(t *testing.T) { func TestManuallyProcessArgs(t *testing.T) {
input := []string{ input := []string{
"--debug", "--debug",
"--foo", "--foo", "bar",
"bar", "--host", "example.com",
"--host", "--kube-context", "test1",
"example.com",
"--kube-context",
"test1",
"--home=/tmp", "--home=/tmp",
"--tiller-namespace=hello",
"command", "command",
} }
expectKnown := []string{ expectKnown := []string{
"--debug", "--host", "example.com", "--kube-context", "test1", "--home=/tmp", "--debug", "--host", "example.com", "--kube-context", "test1", "--home=/tmp", "--tiller-namespace=hello",
} }
expectUnknown := []string{ expectUnknown := []string{
...@@ -162,6 +160,7 @@ func TestSetupEnv(t *testing.T) { ...@@ -162,6 +160,7 @@ func TestSetupEnv(t *testing.T) {
{"HELM_PATH_LOCAL_REPOSITORY", hh.LocalRepository()}, {"HELM_PATH_LOCAL_REPOSITORY", hh.LocalRepository()},
{"HELM_PATH_STARTER", hh.Starters()}, {"HELM_PATH_STARTER", hh.Starters()},
{"TILLER_HOST", tillerHost}, {"TILLER_HOST", tillerHost},
{"TILLER_NAMESPACE", tillerNamespace},
} { } {
if got := os.Getenv(tt.name); got != tt.expect { if got := os.Getenv(tt.name); got != tt.expect {
t.Errorf("Expected $%s=%q, got %q", tt.name, tt.expect, got) t.Errorf("Expected $%s=%q, got %q", tt.name, tt.expect, got)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment