bin/dev-server
author Tero Marttila <terom@fixme.fi>
Tue, 26 Jan 2010 01:37:30 +0200
changeset 106 26f10ed59c8e
parent 103 1a6a6957197d
permissions -rwxr-xr-x
clean up dev-server stuff, and construct memcache client..
36
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     1
#!/usr/bin/python
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     2
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     3
import wsgiref.simple_server
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     4
import werkzeug
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     5
from werkzeug.exceptions import NotFound
106
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
     6
import memcache
36
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     7
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     8
import pngtile.wsgi
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     9
106
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    10
def main (host='0.0.0.0', port=8000, memcache_host='localhost:11211') :
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    11
    print "Using memcache server at %s" % memcache_host
36
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    12
106
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    13
    # cache
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    14
    cache = memcache.Client([memcache_host])
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    15
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    16
    # original app
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    17
    app = pngtile.wsgi.WSGIApplication(cache)
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    18
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    19
    # serve up static content as well
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    20
    app = werkzeug.SharedDataMiddleware(app, {
26f10ed59c8e clean up dev-server stuff, and construct memcache client..
Tero Marttila <terom@fixme.fi>
parents: 103
diff changeset
    21
        '/static':          'static',
103
1a6a6957197d basic caching behaviour, not use yet
Tero Marttila <terom@fixme.fi>
parents: 50
diff changeset
    22
    })
1a6a6957197d basic caching behaviour, not use yet
Tero Marttila <terom@fixme.fi>
parents: 50
diff changeset
    23
    
1a6a6957197d basic caching behaviour, not use yet
Tero Marttila <terom@fixme.fi>
parents: 50
diff changeset
    24
    # http server
36
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    25
    httpd = wsgiref.simple_server.make_server(host, port, app)
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    26
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    27
    print "Listening on %s:%d" % (host, port)
103
1a6a6957197d basic caching behaviour, not use yet
Tero Marttila <terom@fixme.fi>
parents: 50
diff changeset
    28
    
1a6a6957197d basic caching behaviour, not use yet
Tero Marttila <terom@fixme.fi>
parents: 50
diff changeset
    29
    # go
36
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    30
    httpd.serve_forever()
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    31
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    32
if __name__ == '__main__' :
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    33
    main()
caabf287c75e add missing dev-server script
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    34