[Docs] CLI command to serve docs locally (#6956)
* CLI command to serve docs locally * Document it * Default port * Use `with` and subclass `SimpleHTTPRequestHandler` to set working dir * Apply suggestions from code review Co-Authored-By: skullydazed <skullydazed@users.noreply.github.com> * Update docs/cli.mdbetter_chibios_wait 0.7.35
parent
e7d95701bf
commit
2707652c98
@ -0,0 +1,22 @@ |
||||
"""Serve QMK documentation locally |
||||
""" |
||||
import http.server |
||||
|
||||
from milc import cli |
||||
|
||||
|
||||
class DocsHandler(http.server.SimpleHTTPRequestHandler): |
||||
def __init__(self, *args, **kwargs): |
||||
super().__init__(*args, directory='docs', **kwargs) |
||||
|
||||
|
||||
@cli.argument('-p', '--port', default=8936, type=int, help='Port number to use.') |
||||
@cli.subcommand('Run a local webserver for QMK documentation.') |
||||
def docs(cli): |
||||
"""Spin up a local HTTPServer instance for the QMK docs. |
||||
""" |
||||
with http.server.HTTPServer(('', cli.config.docs.port), DocsHandler) as httpd: |
||||
cli.log.info("Serving QMK docs at http://localhost:%d/", cli.config.docs.port) |
||||
cli.log.info("Press Control+C to exit.") |
||||
|
||||
httpd.serve_forever() |
Loading…
Reference in new issue