diff --git a/src/main/kubectl.ts b/src/main/kubectl.ts index 1e57e29d5d..672d93cf65 100644 --- a/src/main/kubectl.ts +++ b/src/main/kubectl.ts @@ -283,6 +283,12 @@ export class Kubectl { bashScript += "fi\n" bashScript += `export PATH="${helmPath}:${kubectlPath}:$PATH"\n` bashScript += "export KUBECONFIG=\"$tempkubeconfig\"\n" + + bashScript += "NO_PROXY=\",${NO_PROXY:-localhost},\"\n" + bashScript += "NO_PROXY=\"${NO_PROXY//,localhost,/,}\"\n" + bashScript += "NO_PROXY=\"${NO_PROXY//,127.0.0.1,/,}\"\n" + bashScript += "NO_PROXY=\"localhost,127.0.0.1${NO_PROXY%,}\"\n" + bashScript += "export NO_PROXY\n" bashScript += "unset tempkubeconfig\n" await fsPromises.writeFile(bashScriptPath, bashScript.toString(), { mode: 0o644 }) @@ -308,6 +314,11 @@ export class Kubectl { zshScript += "d=${d/#:/}\n" zshScript += "export PATH=\"$helmpath:$kubectlpath:${d/%:/}\"\n" zshScript += "export KUBECONFIG=\"$tempkubeconfig\"\n" + zshScript += "NO_PROXY=\",${NO_PROXY:-localhost},\"\n" + zshScript += "NO_PROXY=\"${NO_PROXY//,localhost,/,}\"\n" + zshScript += "NO_PROXY=\"${NO_PROXY//,127.0.0.1,/,}\"\n" + zshScript += "NO_PROXY=\"localhost,127.0.0.1${NO_PROXY%,}\"\n" + zshScript += "export NO_PROXY\n" zshScript += "unset tempkubeconfig\n" zshScript += "unset OLD_ZDOTDIR\n" await fsPromises.writeFile(zshScriptPath, zshScript.toString(), { mode: 0o644 }) diff --git a/src/main/shell-session.ts b/src/main/shell-session.ts index 1d9d722f57..962074c803 100644 --- a/src/main/shell-session.ts +++ b/src/main/shell-session.ts @@ -125,6 +125,8 @@ export class ShellSession extends EventEmitter { if (this.preferences.httpsProxy) { env["HTTPS_PROXY"] = this.preferences.httpsProxy } + const no_proxy = ["localhost", "127.0.0.1", env["NO_PROXY"]] + env["NO_PROXY"] = no_proxy.filter(address => !!address).join() if (env.DEBUG) { // do not pass debug option to bash delete env["DEBUG"] }