ReleaseEngineering/PuppetAgain/Python

The python module uses this data tree to get python packages.

In general, these are just downloads from pypi. However, a few packages are special - see below.

These packages are at

http://repos/python/packages

and can also be sourced at

puppet:///python/packages

in file resources.

Mirror Access

If you would like to point your 'pip' at the python repository, you'll want a ~/.pip/pip.conf that looks something like

[global]
no-index = true
find-links = http://puppetagain.pub.build.mozilla.org/data/python/packages

Special Cases

virtualenv.py

An un-packaged copy of virtualenv.py is at python/packages/virtualenv.py. This is used to bootstrap virtualenvs.

Twisted

Some virtualenvs need to be installed on systems without compilers. In particular, Talos systems don't have compilers or development libraries installed. For these cases, we install packages that can fall back to a pure-python implementation when the compile fails. The tarball of Twisted-10.2.0 is *not* the one from pypi; that tarball was unpacked, conditionalExtensions was set to [] in both setup.py and twisted/topfiles/setup.py, and a new tarball made with setup.py sdist, and the result is in the python-packages directory. Newer Twisteds may not need this treatment -- who knows.