Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 19 additions & 6 deletions kubernetes/client/configuration.py
Original file line number Diff line number Diff line change
Expand Up @@ -161,15 +161,28 @@ def __init__(self, host="http://localhost",
self.proxy = None
"""Proxy URL
"""
self.no_proxy = None
# Load proxy from environment variables (if set)

self.no_proxy = []
# Load proxy from environment variables (if set)
if os.getenv("HTTPS_PROXY"): self.proxy = os.getenv("HTTPS_PROXY")
if os.getenv("https_proxy"): self.proxy = os.getenv("https_proxy")
if os.getenv("HTTP_PROXY"): self.proxy = os.getenv("HTTP_PROXY")
if os.getenv("http_proxy"): self.proxy = os.getenv("http_proxy")
# Load no_proxy from environment variables (if set)
if os.getenv("NO_PROXY"): self.no_proxy = os.getenv("NO_PROXY")
if os.getenv("no_proxy"): self.no_proxy = os.getenv("no_proxy")
# Load and parse no_proxy from environment variables
# Check for uppercase NO_PROXY first (should take precedence)
no_proxy_env = None
# Check if NO_PROXY exists in environment (even if empty)
if "NO_PROXY" in os.environ:
no_proxy_env = os.getenv("NO_PROXY")
elif "no_proxy" in os.environ:
no_proxy_env = os.getenv("no_proxy")

if no_proxy_env is not None and no_proxy_env != "":
self.no_proxy = [
domain.strip()
for domain in no_proxy_env.split(",")
if domain.strip()
]
"""bypass proxy for host in the no_proxy list.
"""
self.proxy_headers = None
Expand Down Expand Up @@ -411,4 +424,4 @@ def get_host_from_settings(self, index, variables=None):

url = url.replace("{" + variable_name + "}", used_value)

return url
return url