1737: Exception is thrown when adding a private GitHub repository

kevin.******@gmai***** (Google Code) (Is this you? Claim this profile.)
Sept. 26, 2010
What version are you running?
1.5RC1

What's the URL of the page containing the problem?
http://reviews.kevmaster.com/admin/db/scmtools/repository/add/

What steps will reproduce the problem?
1. Add new repository: Hosting service "GitHub (private)"
2. Fill out all data 
3. Hit "Save"

What is the expected output? What do you see instead?
Expected: repository gets added.
Actual: 500 page. 


What operating system are you using? What browser?
OS X 10.6.4
Chrome 5.0, Firefox 3.6.8   (error happens in both)


Please provide any additional information below.

Error log dump is below:

ERROR:root:Exception thrown for user admin at http://reviews.kevmaster.com/admin/db/scmtools/repository/add/

'tool'
Traceback (most recent call last):
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/core/handlers/base.py", line 100, in get_response
    response = callback(request, *callback_args, **callback_kwargs)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/contrib/admin/sites.py", line 512, in root
    return self.model_page(request, *url.split('/', 2))
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/views/decorators/cache.py", line 69, in _wrapped_view_func
    response = view_func(request, *args, **kwargs)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/contrib/admin/sites.py", line 531, in model_page
    return admin_obj(request, rest_of_url)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/contrib/admin/options.py", line 1190, in __call__
    return self.add_view(request)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/utils/decorators.py", line 21, in _wrapper
    return decorator(bound_func)(*args, **kwargs)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/utils/decorators.py", line 76, in _wrapped_view
    response = view_func(request, *args, **kwargs)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/utils/decorators.py", line 17, in bound_func
    return func(self, *args2, **kwargs2)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/db/transaction.py", line 299, in _commit_on_success
    res = func(*args, **kw)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/contrib/admin/options.py", line 777, in add_view
    if form.is_valid():
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/ReviewBoard-1.5rc1-py2.4.egg/reviewboard/scmtools/forms.py", line 577, in is_valid
    return (super(RepositoryForm, self).is_valid() and
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/forms/forms.py", line 121, in is_valid
    return self.is_bound and not bool(self.errors)
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/forms/forms.py", line 112, in _get_errors
    self.full_clean()
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/ReviewBoard-1.5rc1-py2.4.egg/reviewboard/scmtools/forms.py", line 499, in full_clean
    return super(RepositoryForm, self).full_clean()
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/forms/forms.py", line 268, in full_clean
    self._clean_form()
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/forms/forms.py", line 296, in _clean_form
    self.cleaned_data = self.clean()
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/ReviewBoard-1.5rc1-py2.4.egg/reviewboard/scmtools/forms.py", line 515, in clean
    self._clean_hosting_info()
  File "/home3/kevmaste/.local/lib/python2.4/site-packages/ReviewBoard-1.5rc1-py2.4.egg/reviewboard/scmtools/forms.py", line 447, in _clean_hosting_info
    tool_name = self.cleaned_data['tool'].name
KeyError: 'tool'
chipx86
#1 chipx86
  • -Priority-Medium
    +Priority-Critical
    +Milestone-Release1.5
    +Component-SCMTools
#2 kevin.******@gmai***** (Google Code) (Is this you? Claim this profile.)
The admin account just received this email containing the post-data for the failing request. Hope this helps.

<WSGIRequest
GET:<QueryDict: {}>,
POST:<QueryDict: {u'username': [u'hosting@partyearth.com'], u'name': [u'Partyearth'], u'bug_tracker_type': [u'none'], u'encoding': [u''], u'tool': [u'2'], u'api_token': [u'xxxxxxx'], u'bug_tracker_project_name': [u'Partyearth'], u'hosting_project_name': [u'Partyearth'], u'bug_tracker_base_url': [u''], u'visible': [u'on'], u'hosting_type': [u'github-private'], u'bug_tracker_owner': [u''], u'_save': [u'Save'], u'raw_file_url': [u''], u'bug_tracker': [u''], u'path': [u''], u'csrfmiddlewaretoken': [u'46fd13a07a342baa7c4ba8397e2e65be'], u'password': [u'pe4life!'], u'mirror_path': [u''], u'hosting_owner': [u'partyearth']}>,
COOKIES:{'csrftoken': '46fd13a07a342baa7c4ba8397e2e65be',
 'rbsessionid': 'ebd5c17c7efcd94f605785518577a94d'},
META:{'CONTENT_LENGTH': '2448',
 'CONTENT_TYPE': 'multipart/form-data; boundary=---------------------------168072824752491622650073',
 'CSRF_COOKIE': '46fd13a07a342baa7c4ba8397e2e65be',
 'DOCUMENT_ROOT': '/home3/kevmaste/public_html/reviews',
 'GATEWAY_INTERFACE': 'CGI/1.1',
 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
 'HTTP_ACCEPT_ENCODING': 'gzip,deflate',
 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5',
 'HTTP_CONNECTION': 'keep-alive',
 'HTTP_COOKIE': 'rbsessionid=ebd5c17c7efcd94f605785518577a94d; csrftoken=46fd13a07a342baa7c4ba8397e2e65be',
 'HTTP_HOST': 'reviews.kevmaster.com',
 'HTTP_KEEP_ALIVE': '115',
 'HTTP_REFERER': 'http://reviews.kevmaster.com/admin/db/scmtools/repository/add/',
 'HTTP_USER_AGENT': 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8',
 'PATH': '/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin',
 'PATH_INFO': u'/admin/db/scmtools/repository/add/',
 'PATH_TRANSLATED': 'redirect:/reviewboard.fcgi/admin/db/scmtools/repository/add//db/scmtools/repository/add/',
 'QUERY_STRING': '',
 'REDIRECT_STATUS': '200',
 'REDIRECT_UNIQUE_ID': 'TE3hZ0rc12UAADR2IQ8AAACN',
 'REDIRECT_URL': '/admin/db/scmtools/repository/add/',
 'REDIRECT_file_gzip': '/ramdisk/cpud/status',
 'REMOTE_ADDR': '99.107.206.17',
 'REMOTE_PORT': '51075',
 'REQUEST_METHOD': 'POST',
 'REQUEST_URI': '/admin/db/scmtools/repository/add/',
 'SCRIPT_FILENAME': '/home3/kevmaste/public_html/reviews/reviewboard.fcgi',
 'SCRIPT_NAME': u'',
 'SERVER_ADDR': '74.220.202.29',
 'SERVER_ADMIN': 'webmaster@reviews.kevmaster.com',
 'SERVER_NAME': 'reviews.kevmaster.com',
 'SERVER_PORT': '80',
 'SERVER_PROTOCOL': 'HTTP/1.1',
 'SERVER_SIGNATURE': '<address>Apache/2.2.15 (CentOS) mod_ssl/2.2.15 0.9.8l DAV/2 mod_auth_passthrough/2.1 FrontPage/5.0.2.2635 Server at reviews.kevmaster.com Port 80</address>\n',
 'SERVER_SOFTWARE': 'Apache/2.2.15 (CentOS) mod_ssl/2.2.15 0.9.8l DAV/2 mod_auth_passthrough/2.1 FrontPage/5.0.2.2635',
 'UNIQUE_ID': 'TE3hZ0rc12UAADR2IQ8AAACN',
 'file_gzip': '/ramdisk/cpud/status',
 'wsgi.errors': <flup.server.fcgi_base.OutputStream object at 0x19354d0>,
 'wsgi.input': <flup.server.fcgi_base.InputStream object at 0x1935d50>,
- Hide quoted text -
 'wsgi.multiprocess': False,
 'wsgi.multithread': True,
 'wsgi.run_once': False,
 'wsgi.url_scheme': 'http',
 'wsgi.version': (1, 0)}>
chipx86
#3 chipx86
I've been unable to reproduce this. It seems, from the debug output, that the 'tool' being set is '2', which is not a valid value.

I know this has been a while. Were you guys able to add any repositories to this server at all? Has it just been failing with the Private GitHub?
  • +NeedInfo
#4 kevin.******@gmai***** (Google Code) (Is this you? Claim this profile.)
Adding a normal git repository doesn't work either, with the same error:

<WSGIRequest
GET:<QueryDict: {}>,
POST:<QueryDict: {u'username': [u'kevgo'], u'name': [u'Lyrictionary'], u'bug_tracker_type': [u'none'], u'encoding': [u''], u'tool': [u'2'], u'api_token': [u'xxxxxxxxxxxxxxxx'], u'bug_tracker_project_name': [u'PartyEarth'], u'hosting_project_name': [u'Lyrictionary'], u'bug_tracker_base_url': [u''], u'visible': [u'on'], u'hosting_type': [u'github'], u'bug_tracker_owner': [u''], u'_addanother': [u'Save and add another'], u'raw_file_url': [u''], u'bug_tracker': [u''], u'path': [u''], u'csrfmiddlewaretoken': [u'fbc4803e38bc182072cd95484837100e'], u'password': [u'xxxxxxxxxxxxx'], u'mirror_path': [u''], u'hosting_owner': [u'kevgo']}>,
COOKIES:{'__utma': '46634404.1102347595.1283184843.1283184843.1283199598.2',
 '__utmc': '46634404',
 '__utmz': '46634404.1283184843.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'csrftoken': 'fbc4803e38bc182072cd95484837100e',
 'rbsessionid': 'eddd638c46ee7008b2ebc349492f0500'},
META:{'CONTENT_LENGTH': '2174',
 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryodEqAdUkEtDneM8M',
 'CSRF_COOKIE': 'fbc4803e38bc182072cd95484837100e',
 'DOCUMENT_ROOT': '/home3/kevmaste/public_html/reviews',
 'GATEWAY_INTERFACE': 'CGI/1.1',
 'HTTP_ACCEPT': 'application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
 'HTTP_ACCEPT_ENCODING': 'gzip,deflate,sdch',
 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8',
 'HTTP_CACHE_CONTROL': 'max-age=0',
 'HTTP_CONNECTION': 'close',
 'HTTP_COOKIE': '__utmz=46634404.1283184843.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=46634404.1102347595.1283184843.1283184843.1283199598.2; __utmc=46634404; rbsessionid=eddd638c46ee7008b2ebc349492f0500; csrftoken=fbc4803e38bc182072cd95484837100e',
 'HTTP_HOST': 'reviews.kevmaster.com',
 'HTTP_ORIGIN': 'http://reviews.kevmaster.com',
 'HTTP_REFERER': 'http://reviews.kevmaster.com/admin/db/scmtools/repository/add/',
 'HTTP_USER_AGENT': 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_4; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Safari/533.4',
 'PATH': '/sbin:/usr/sbin:/bin:/usr/bin',
 'PATH_INFO': u'/admin/db/scmtools/repository/add/',
 'PATH_TRANSLATED': 'redirect:/reviewboard.fcgi/admin/db/scmtools/repository/add//db/scmtools/repository/add/',
 'QUERY_STRING': '',
 'REDIRECT_STATUS': '200',
 'REDIRECT_UNIQUE_ID': 'THwiBErc12UAADwnuNAAAAJO',
 'REDIRECT_URL': '/admin/db/scmtools/repository/add/',
 'REDIRECT_file_gzip': '/ramdisk/cpud/status',
 'REMOTE_ADDR': '99.107.204.248',
 'REMOTE_PORT': '55228',
 'REQUEST_METHOD': 'POST',
 'REQUEST_URI': '/admin/db/scmtools/repository/add/',
 'SCRIPT_FILENAME': '/home3/kevmaste/public_html/reviews/reviewboard.fcgi',
 'SCRIPT_NAME': u'',
 'SERVER_ADDR': '74.220.202.29',
 'SERVER_ADMIN': 'webmaster@reviews.kevmaster.com',
 'SERVER_NAME': 'reviews.kevmaster.com',
 'SERVER_PORT': '80',
 'SERVER_PROTOCOL': 'HTTP/1.1',
 'SERVER_SIGNATURE': '<address>Apache/2.2.16 (CentOS) mod_ssl/2.2.16 0.9.8l DAV/2 mod_fcgid/2.3.5 mod_auth_passthrough/2.1 FrontPage/5.0.2.2635 Server at reviews.kevmaster.com Port 80</address>\n',
 'SERVER_SOFTWARE': 'Apache/2.2.16 (CentOS) mod_ssl/2.2.16 0.9.8l DAV/2 mod_fcgid/2.3.5 mod_auth_passthrough/2.1 FrontPage/5.0.2.2635',
 'UNIQUE_ID': 'THwiBErc12UAADwnuNAAAAJO',
- Hide quoted text -
 'file_gzip': '/ramdisk/cpud/status',
 'wsgi.errors': <flup.server.fcgi_base.OutputStream object at 0x95fa10>,
 'wsgi.input': <flup.server.fcgi_base.InputStream object at 0x95f990>,
 'wsgi.multiprocess': False,
 'wsgi.multithread': True,
 'wsgi.run_once': False,
 'wsgi.url_scheme': 'http',
 'wsgi.version': (1, 0)}>
#5 kevin.******@gmai***** (Google Code) (Is this you? Claim this profile.)
Adding Subversion doesn't work either. Tool is set to '1' in this case.

<WSGIRequest
GET:<QueryDict: {}>,
POST:<QueryDict: {u'username': [u'kevgo'], u'name': [u'Lyrictionary'], u'bug_tracker_type': [u'none'], u'encoding': [u''], u'tool': [u'1'], u'api_token': [u'1d5c3c7ac96c350dc0fd64fe9e76e729'], u'bug_tracker_project_name': [u'PartyEarth'], u'hosting_project_name': [u'Lyrictionary'], u'bug_tracker_base_url': [u''], u'visible': [u'on'], u'hosting_type': [u'sourceforge'], u'bug_tracker_owner': [u''], u'_save': [u'Save'], u'raw_file_url': [u''], u'bug_tracker': [u''], u'path': [u''], u'csrfmiddlewaretoken': [u'fbc4803e38bc182072cd95484837100e'], u'password': [u'test'], u'mirror_path': [u''], u'hosting_owner': [u'kevgo']}>,
COOKIES:{'__utma': '46634404.1102347595.1283184843.1283184843.1283199598.2',
 '__utmc': '46634404',
 '__utmz': '46634404.1283184843.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'csrftoken': 'fbc4803e38bc182072cd95484837100e',
 'rbsessionid': 'eddd638c46ee7008b2ebc349492f0500'},
META:{'CONTENT_LENGTH': '2150',
 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryPifgA0jKTPbLbEtm',
 'CSRF_COOKIE': 'fbc4803e38bc182072cd95484837100e',
 'DOCUMENT_ROOT': '/home3/kevmaste/public_html/reviews',
 'GATEWAY_INTERFACE': 'CGI/1.1',
 'HTTP_ACCEPT': 'application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
 'HTTP_ACCEPT_ENCODING': 'gzip,deflate,sdch',
 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8',
 'HTTP_CACHE_CONTROL': 'max-age=0',
 'HTTP_CONNECTION': 'close',
 'HTTP_COOKIE': '__utmz=46634404.1283184843.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=46634404.1102347595.1283184843.1283184843.1283199598.2; __utmc=46634404; rbsessionid=eddd638c46ee7008b2ebc349492f0500; csrftoken=fbc4803e38bc182072cd95484837100e',
 'HTTP_HOST': 'reviews.kevmaster.com',
 'HTTP_ORIGIN': 'http://reviews.kevmaster.com',
 'HTTP_REFERER': 'http://reviews.kevmaster.com/admin/db/scmtools/repository/add/',
 'HTTP_USER_AGENT': 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_4; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Safari/533.4',
 'PATH': '/sbin:/usr/sbin:/bin:/usr/bin',
 'PATH_INFO': u'/admin/db/scmtools/repository/add/',
 'PATH_TRANSLATED': 'redirect:/reviewboard.fcgi/admin/db/scmtools/repository/add//db/scmtools/repository/add/',
 'QUERY_STRING': '',
 'REDIRECT_STATUS': '200',
 'REDIRECT_UNIQUE_ID': 'THwq9krc12UAAGMAC58AAAaK',
 'REDIRECT_URL': '/admin/db/scmtools/repository/add/',
 'REDIRECT_file_gzip': '/ramdisk/cpud/status',
 'REMOTE_ADDR': '99.107.204.248',
 'REMOTE_PORT': '55403',
 'REQUEST_METHOD': 'POST',
 'REQUEST_URI': '/admin/db/scmtools/repository/add/',
 'SCRIPT_FILENAME': '/home3/kevmaste/public_html/reviews/reviewboard.fcgi',
 'SCRIPT_NAME': u'',
 'SERVER_ADDR': '74.220.202.29',
 'SERVER_ADMIN': 'webmaster@reviews.kevmaster.com',
 'SERVER_NAME': 'reviews.kevmaster.com',
 'SERVER_PORT': '80',
 'SERVER_PROTOCOL': 'HTTP/1.1',
 'SERVER_SIGNATURE': '<address>Apache/2.2.16 (CentOS) mod_ssl/2.2.16 0.9.8l DAV/2 mod_fcgid/2.3.5 mod_auth_passthrough/2.1 FrontPage/5.0.2.2635 Server at reviews.kevmaster.com Port 80</address>\n',
 'SERVER_SOFTWARE': 'Apache/2.2.16 (CentOS) mod_ssl/2.2.16 0.9.8l DAV/2 mod_fcgid/2.3.5 mod_auth_passthrough/2.1 FrontPage/5.0.2.2635',
 'UNIQUE_ID': 'THwq9krc12UAAGMAC58AAAaK',
chipx86
#6 chipx86
Okay, it's a problem with your installation then. Do you remember what steps you did to install it? And was the database from this fresh install, or ported over from a developer install?

I would recommend wiping the database and doing a brand new one, assuming you don't have data in it.
chipx86
#7 chipx86
  • -Type-Defect
    -Milestone-Release1.5
    +Type-Support
#8 kevin.******@gmai***** (Google Code) (Is this you? Claim this profile.)
Thanks for looking into this, and sorry for this false alert. I have successfully run Reviewboard without any problems on a dedicated server. This particular install is on a shared host,  where I don't have access to the apache and python configuration. Hence the installation steps below (taken from a site that explains how to install a django-based app on shared hosting) work around the limitations there, and use fastcgi. Are there any official instructions on how to install Reviewboard in a shared hosting environment? The database and everything else are a clean install btw.


### Prepare installing local binaries.
export PATH=$HOME/opt/bin:$HOME/bin:$HOME/.local/lib/python/site-packages:$PATH

### Install customizable Python.
cd ~/src
wget http://peak.telecommunity.com/dist/virtual-python.py
python ~/src/virtual-python.py

### install python setuptools
cd ~/src
wget http://peak.telecommunity.com/dist/ez_setup.py
python ez_setup.py --install-dir=~/.local/lib/python/site-packages

### install Reviewboard
easy_install --prefix=$HOME/.local -f http://downloads.reviewboard.org/releases/ReviewBoard/1.5/ -U ReviewBoard
easy_install --prefix=$HOME/.local mysql-python
rb-site install reviewboard



### add this .htaccess file
AddHandler fcgid-script .fcgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ reviewboard.fcgi/$1 [QSA,L]


### change reviewboard.fcgi

#!/home3/kevmaste/bin/python
import os, sys

sys.path.insert(0, "/home3/kevmaste/reviewboard/conf")
sys.path.insert(0, "/home3/kevmaste/reviewboard/htdocs")
sys.path.insert(0, "/home3/kevmaste/.local/lib/python/site-packages")
sys.path.insert(0, "/home3/kevmaste/.local/lib/python2.4/site-packages")
sys.path.insert(0, "/home3/kevmaste/.local/bin")
sys.path.insert(0, "/home3/kevmaste/bin")

sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/setuptools-0.6c11-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/ReviewBoard-1.5rc1-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/python_memcached-1.45-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/pytz-2010h-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/flup-1.0.3.dev_20100525-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/Pygments-1.3.1-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/Djblets-0.6.3-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/django_evolution-0.5-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/PIL-1.1.7-py2.4-linux-x86_64.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/paramiko-1.7.6-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/pycrypto-2.1.0-py2.4-linux-x86_64.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/python_dateutil-1.5-py2.4.egg')
sys.path.insert(0, '/home3/kevmaste/.local/lib/python2.4/site-packages/recaptcha_client-1.0.5-py2.4.egg')

os.environ["DJANGO_SETTINGS_MODULE"] = "reviewboard.settings"
os.environ["PYTHON_EGG_CACHE"] = "/home3/kevmaste/.local/lib/python/site-packages"

from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")
david
#9 david
I think every shared host is different in that regards; if there's something janky in their apache/python installs, options are pretty limited. I'm not sure there's anything we can document except specific workarounds for specific hosts, which seems like it's not worth the trouble.
  • -NeedInfo
    +SetupIssue