[master/rhel7] set proxy related environmental variables (#854029)
Brian C. Lane
bcl at redhat.com
Thu Mar 6 19:29:03 UTC 2014
pre and post scripts using utilities like curl should use the global
proxy setting from the cmdline. libreport will also use this to setup
the proxy for bug reporting.
Resolves: rhbz#854029
---
anaconda | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/anaconda b/anaconda
index 192561d..270295e 100755
--- a/anaconda
+++ b/anaconda
@@ -765,6 +765,7 @@ if __name__ == "__main__":
from pyanaconda import kickstart
from pyanaconda import ntp
from pyanaconda import keyboard
+ from pyanaconda.iutil import ProxyString, ProxyStringError
verdesc = "%s for %s %s" % (getAnacondaVersion(),
product.productName, product.productVersion)
@@ -935,6 +936,24 @@ if __name__ == "__main__":
# cmdline flags override kickstart settings
if anaconda.proxy:
ksdata.method.proxy = anaconda.proxy
+
+ # Setup proxy environmental variables so that pre/post scripts use it
+ # as well as libreport
+ try:
+ proxy = ProxyString(anaconda.proxy)
+ except ProxyStringError as e:
+ log.info("Failed to parse proxy \"%s\": %s" % (anaconda.proxy, e))
+ finally:
+ # Set environmental variables to be used by pre/post scripts
+ os.environ["PROXY"] = proxy.noauth_url
+ os.environ["PROXY_USER"] = proxy.username or ""
+ os.environ["PROXY_PASSWORD"] = proxy.password or ""
+
+ # Variables used by curl, libreport, etc.
+ os.environ["http_proxy"] = proxy.url
+ os.environ["ftp_proxy"] = proxy.url
+ os.environ["HTTPS_PROXY"] = proxy.url
+
if flags.noverifyssl:
ksdata.method.noverifyssl = flags.noverifyssl
if opts.multiLib:
--
1.8.5.3
More information about the anaconda-patches
mailing list