~launchpad-pqm/launchpad/devel

« back to all changes in this revision

Viewing changes to buildout-templates/_pythonpath.py.in

  • Committer: Gary Poster
  • Date: 2010-02-25 16:49:46 UTC
  • mto: (7675.623.23 launchpad)
  • mto: This revision was merged to the branch mainline in revision 10633.
  • Revision ID: gary.poster@canonical.com-20100225164946-i0vorkbnwjyd4bc2
be more precise about what is going on in _pythonpath, and add more comments

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
# NOTE: This is a generated file.  The original is in
5
5
# buildout-templates/_pythonpath.py.in
6
6
 
 
7
# This file works if the Python has been started with -S, or if bin/py
 
8
# has been used.
 
9
 
 
10
import os
7
11
import sys
8
12
 
9
13
site_dir = "${scripts:parts-directory}"
 
14
 
 
15
if ('site' in sys.modules and
 
16
    not sys.modules['site'].__file__.startswith(
 
17
        os.path.join(site_dir, 'site.py'))):
 
18
    # We have the wrong site.py, so our paths are not set up correctly.
 
19
    # We blow up, with a hopefully helpful error message.
 
20
    raise RuntimeError(
 
21
        'The wrong site.py is imported. Scripts should usually be '
 
22
        "started with Launchpad's bin/py, or with a Python invoked with "
 
23
        'the -S flag.')
 
24
 
10
25
if site_dir not in sys.path:
11
 
    if 'site' in sys.modules:
12
 
        raise RuntimeError(
13
 
            'The wrong site.py is imported. Scripts should usually be '
14
 
            "started with Launchpad's bin/py, or their shebang line needs "
15
 
            'the -S flag in the python invocation.')
16
26
    sys.path.insert(0, site_dir)
17
27
import site # sets up paths