diff --git a/aspen/__init__.py b/aspen/__init__.py index e3664dfea..8fd2aa590 100644 --- a/aspen/__init__.py +++ b/aspen/__init__.py @@ -70,9 +70,10 @@ from aspen.http.response import Response from aspen import json_ as json from aspen.logging import log, log_dammit +from aspen.website import Website # Shut up, PyFlakes. I know I'm addicted to you. -Response, json, is_callable, log, log_dammit +Response, json, is_callable, log, log_dammit, Website dist = pkg_resources.get_distribution('aspen') __version__ = dist.version @@ -92,3 +93,14 @@ RENDERERS.sort() + +def serve(website, host=None, port=None): + """Serve a website. + """ + import os + from wsgiref.simple_server import make_server + + port = int(os.environ.get('PORT', '8080')) + server = make_server('0.0.0.0', port, website) + log_dammit("Greetings, program! Welcome to port {0}.".format(port)) + server.serve_forever() diff --git a/aspen/__main__.py b/aspen/__main__.py index 5abbfe4f3..bab7292e0 100644 --- a/aspen/__main__.py +++ b/aspen/__main__.py @@ -21,15 +21,8 @@ from __future__ import print_function from __future__ import unicode_literals -import os -from aspen import log_dammit -from aspen.website import Website -from wsgiref.simple_server import make_server - +from aspen import serve, Website if __name__ == '__main__': website = Website() - port = int(os.environ.get('PORT', '8080')) - server = make_server('0.0.0.0', port, website) - log_dammit("Greetings, program! Welcome to port {0}.".format(port)) - server.serve_forever() + serve(website)