[elbe-devel] [PATCH 06/13] unset proxy config if not specified in XML
Manuel Traut
manuel.traut at linutronix.de
Wed Dec 6 11:07:26 CET 2017
On Wed, Dec 06, 2017 at 10:40:19AM +0100, Torben Hohn wrote:
> On Thu, Nov 30, 2017 at 03:15:08PM +0100, Manuel Traut wrote:
> > os.environ is persistent for multiple requests to elbe-daemon.
> > So the proxy configuration of a recent build is still active
> > for a new build that didn't specify any proxy. This change
> > sets the proxy env vars to an empty string if no proxy was
> > specified
>
> This is better than nothing.
> However, we should actually identify, where these variables are used,
> and make sure, that these cases are either isolated in separate
> processes (RpcAptCache is a separate process) or if we call wget via
> system or something, we seed the environment when starting the process.
>
> Because this is obviously a race condition, once we start sharing an
> initvm, and doing 2 builds at once.
i would like to take this patch in a first place and open an issue on github
about the race condition.
> >
> > Signed-off-by: Manuel Traut <manut at linutronix.de>
>
> Reviewed-by: Torben Hohn <torbenh at linutronix.de>
>
> > ---
> > elbepack/elbexml.py | 4 ++++
> > elbepack/rfs.py | 4 ++++
> > 2 files changed, 8 insertions(+)
> >
> > diff --git a/elbepack/elbexml.py b/elbepack/elbexml.py
> > index b280158a..e257856a 100644
> > --- a/elbepack/elbexml.py
> > +++ b/elbepack/elbexml.py
> > @@ -221,6 +221,10 @@ class ElbeXML(object):
> > proxy = self.prj.text ("mirror/primary_proxy").strip().replace("LOCALMACHINE", "10.0.2.2")
> > os.environ ["http_proxy"] = proxy
> > os.environ ["https_proxy"] = proxy
> > + else:
> > + os.environ ["http_proxy"] = ""
> > + os.environ ["https_proxy"] = ""
> > + os.environ["no_proxy"] = ""
> >
> > passman = urllib2.HTTPPasswordMgrWithDefaultRealm()
> > authhandler = urllib2.HTTPBasicAuthHandler(passman)
> > diff --git a/elbepack/rfs.py b/elbepack/rfs.py
> > index 2fa8f1a4..1a72dc81 100644
> > --- a/elbepack/rfs.py
> > +++ b/elbepack/rfs.py
> > @@ -99,6 +99,10 @@ class BuildEnv ():
> > proxy = self.xml.prj.text("mirror/primary_proxy").strip().replace("LOCALMACHINE", "localhost")
> > os.environ["http_proxy"] = proxy
> > os.environ["https_proxy"] = proxy
> > + else:
> > + os.environ["no_proxy"] = ""
> > + os.environ["http_proxy"] = ""
> > + os.environ["https_proxy"] = ""
> >
> > os.environ["LANG"] = "C"
> > os.environ["LANGUAGE"] = "C"
> > --
> > 2.15.1
> >
> >
> > _______________________________________________
> > elbe-devel mailing list
> > elbe-devel at linutronix.de
> > https://lists.linutronix.de/mailman/listinfo/elbe-devel
>
> --
> Mit freundlichen Grüßen
> Torben Hohn
>
> Linutronix GmbH
>
> Standort: Bremen
>
> Phone: +49 7556 25 999 18; Fax.: +49 7556 25 999 99
>
> Firmensitz / Registered Office: D-88690 Uhldingen, Bahnhofstr. 3
> Registergericht / Local District Court: Amtsgericht Freiburg i. Br.; HRB
> Nr. / Trade register no.: 700 806
>
> Geschäftsführer / Managing Directors: Heinz Egger, Thomas Gleixner
>
> Eine Bitte von uns: Sollten Sie diese E-Mail irrtümlich erhalten haben,
> benachrichtigen Sie uns in diesem Falle bitte sobald wie es Ihnen
> möglich ist, durch Antwort-Mail. Vielen Dank!
More information about the elbe-devel
mailing list