Browse Source

Run the embedded Django server and point the web browser to it. (for Desktop usage)

Natenom/support-murmur-13-1446181288462
Harry Gabriel 14 years ago
parent
commit
8a0f0f6957
  1. 42
      mdd.py

42
mdd.py

@ -0,0 +1,42 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
""" Run the embedded Django server and point the web browser to it. """
import webbrowser, sys, os
from django.core.servers.basehttp import run, AdminMediaHandler, WSGIServerException
from django.core.handlers.wsgi import WSGIHandler
from os.path import join, dirname, abspath, exists
MUMBLE_DJANGO_ROOT = None
# Path auto-detection
if not MUMBLE_DJANGO_ROOT or not exists( MUMBLE_DJANGO_ROOT ):
MUMBLE_DJANGO_ROOT = dirname(abspath(__file__))
# environment variables
sys.path.append( MUMBLE_DJANGO_ROOT )
sys.path.append( join( MUMBLE_DJANGO_ROOT, 'pyweb' ) )
if __name__ == "__main__":
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
PORT = 8000
try:
HANDLER = AdminMediaHandler(WSGIHandler(), '')
webbrowser.open('http://localhost:%s' % PORT)
run('0.0.0.0', PORT, HANDLER)
except WSGIServerException, e:
# Use helpful error messages instead of ugly tracebacks.
ERRORS = {
13: "You don't have permission to access that port.",
98: "That port is already in use.",
99: "That IP address can't be assigned-to.",
}
try:
ERROR_TEXT = ERRORS[e.args[0].args[0]]
except (AttributeError, KeyError):
ERROR_TEXT = str(e)
sys.stderr.write("Error: %s \n" % ERROR_TEXT)
Loading…
Cancel
Save