diff --git a/cmd/exec.go b/cmd/exec.go index d8c49b2..79caf02 100644 --- a/cmd/exec.go +++ b/cmd/exec.go @@ -122,23 +122,26 @@ func (c *cliSession) prepExec() (*http.Request, error) { } u.Path = fmt.Sprintf("/api/v1/namespaces/%s/pods/%s/exec", c.namespace, c.opts.Pod) - query := "stdout=true&stderr=true" + query := url.Values{} + query.Add("stdout", "true") + query.Add("stderr", "true") + for _, c := range c.opts.Command { - query += "&command=" + c + query.Add("command", c) } if c.opts.Container != "" { - query += "&container=" + c.opts.Container + query.Add("container", c.opts.Container) } if c.opts.TTY { - query += "&tty=true" + query.Add("tty", "true") } if c.opts.Stdin { - query += "&stdin=true" + query.Add("stdin", "true") } - u.RawQuery = query + u.RawQuery = query.Encode() req := &http.Request{ Method: http.MethodGet, diff --git a/cmd/kubeletexec.go b/cmd/kubeletexec.go index c45f154..a365c43 100644 --- a/cmd/kubeletexec.go +++ b/cmd/kubeletexec.go @@ -55,19 +55,22 @@ func (c *cliSession) prepKubeletExec() (*http.Request, error) { } u.Path = fmt.Sprintf("/exec/%s/%s/%s", c.namespace, c.opts.Pod, ctrName) - query := "output=1&error=1" + query := url.Values{} + query.Add("output", "1") + query.Add("error", "1") + for _, c := range c.opts.Command { - query += "&command=" + c + query.Add("command", c) } if c.opts.TTY { - query += "&tty=1" + query.Add("tty", "1") } if c.opts.Stdin { - query += "&input=1" + query.Add("input", "1") } - u.RawQuery = query + u.RawQuery = query.Encode() req := &http.Request{ Method: http.MethodGet,