Skip to content

Instantly share code, notes, and snippets.

@wonderbeyond
Last active June 17, 2022 06:32
Show Gist options
  • Select an option

  • Save wonderbeyond/c619ef81c44c6037814c50d9d1c5e7a4 to your computer and use it in GitHub Desktop.

Select an option

Save wonderbeyond/c619ef81c44c6037814c50d9d1c5e7a4 to your computer and use it in GitHub Desktop.

Revisions

  1. wonderbeyond revised this gist Nov 9, 2017. 1 changed file with 10 additions and 5 deletions.
    15 changes: 10 additions & 5 deletions sanic-run.py
    Original file line number Diff line number Diff line change
    @@ -1,25 +1,30 @@
    import hupper
    import argparse

    from app import app


    def main():
    parser = argparse.ArgumentParser(
    description='sanic test server',
    description='Sanic test server',
    formatter_class=argparse.ArgumentDefaultsHelpFormatter
    )
    parser.add_argument('--host', dest='host', default='0.0.0.0')
    parser.add_argument('--port', dest='port', type=int, default=8600)
    parser.add_argument('--reload', dest='reload', action='store_true')
    parser.add_argument('--shell', dest='shell', action='store_true',
    help='Launch an ipython shell after server start')
    parser.add_argument('--shell-point', dest='shell_point',
    default='after_server_start',
    help='before_server_start | after_server_start')
    args = parser.parse_args()

    reloader = hupper.start_reloader('run.main')
    reloader.watch_files([])
    if args.reload:
    import hupper
    reloader = hupper.start_reloader('run.main')
    reloader.watch_files([])

    if args.shell:
    @app.listener('after_server_start')
    @app.listener(args.shell_point)
    async def launch_shell(app, loop):
    import IPython
    IPython.embed()
  2. wonderbeyond revised this gist Nov 9, 2017. No changes.
  3. wonderbeyond created this gist Nov 9, 2017.
    31 changes: 31 additions & 0 deletions sanic-run.py
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,31 @@
    import hupper
    import argparse

    from app import app


    def main():
    parser = argparse.ArgumentParser(
    description='sanic test server',
    formatter_class=argparse.ArgumentDefaultsHelpFormatter
    )
    parser.add_argument('--host', dest='host', default='0.0.0.0')
    parser.add_argument('--port', dest='port', type=int, default=8600)
    parser.add_argument('--shell', dest='shell', action='store_true',
    help='Launch an ipython shell after server start')
    args = parser.parse_args()

    reloader = hupper.start_reloader('run.main')
    reloader.watch_files([])

    if args.shell:
    @app.listener('after_server_start')
    async def launch_shell(app, loop):
    import IPython
    IPython.embed()

    app.run(host=args.host, port=args.port)


    if __name__ == "__main__":
    main()