launchpad-dev team mailing list archive
-
launchpad-dev team
-
Mailing list archive
-
Message #02451
Rewrite script breaking because it indirectly imports Windmill
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi all,
The branch-rewrite script is breaking locally, because it imports
Windmill indirectly. Windmill's mozrunner assumes that there will be an
environment variable named PATH, but there isn't when run under apache,
and this causes a KeyError.
I'm not sure what the right fix would be, which is why I'm bringing this
to this to the list.
First off: Why the heck would the branch-rewrite script be importing
Windmill? Two reasons:
1. Our generic script code imports lp.testing to log in as ANONYMOUS.
This is clearly fixable, and the only real question is where the code
should be moved to.
2. lp.services.scripts.base imports lp.testing.layers so that
execute_zcml_for_scripts can ensure we're not running under one.
There are a few options
1. supply a PATH. This is simple, but it doesn't fix the underlying
issue that stuff is being imported that you would never expect.
2. fix Windmill to not require a PATH. Again, this is simple, but it
doesn't fix the underlying issue that stuff is being imported that
you would never expect.
3. change the imports in lp.testing so that Windmill is not imported
until its first use. This fixes the issue that Windmill is being
imported unexpectedly, but still leaves test foo being imported by
scripts.
4. stop importing ANONYMOUS from testing. stop importing from
testing.layers. This is hard, because we have a good reason for
importing layers.
Thoughts?
Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAktrPmEACgkQ0F+nu1YWqI2mwACfUF/ayeUfaZ0GGRa3OqH5cS7u
spwAnAzgnZCwzx//Zrz1RaZ1Ny5cowsh
=jXMk
-----END PGP SIGNATURE-----
Follow ups