bin/tile-server
author Tero Marttila <terom@qmsk.net>
Sat, 04 Oct 2014 01:04:45 +0300
changeset 169 b69ffcd1ecc7
parent 165 1dc09e81a4e2
permissions -rwxr-xr-x
bin/tile-server --threaded
#!/usr/bin/env python

"""
    Development server for pngtile.tile serving.
"""

import argparse
import pngtile.tile
import werkzeug.serving

def main ():
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument('--listen',     metavar='ADDR', default='0.0.0.0',
            help="Listen on address")
    parser.add_argument('--port',       metavar='PORT', type=int, default=8080,
            help="Listen on port")

    parser.add_argument('--reload',     action='store_true',
            help="Reload")
    parser.add_argument('--debugger',   action='store_true',
            help="Debugger")
    parser.add_argument('--threaded',   action='store_true',
            help="Use threaded requests")

    parser.add_argument('--image-server',    metavar='URL', required=True,
            help="http://.../ URL to imageserver root")
    parser.add_argument('image_root',   metavar='PATH',
            help="Path to images")

    args = parser.parse_args()

    application = pngtile.tile.TileApplication(
        image_root      = args.image_root,

        image_server    = args.image_server,
    )

    werkzeug.serving.run_simple(args.listen, args.port, application,
            use_reloader    = args.reload,
            use_debugger    = args.debugger,
            threaded        = args.threaded,
    )

if __name__ == '__main__':
    main()