mirror of
https://github.com/getpelican/pelican.git
synced 2025-10-15 20:28:56 +02:00
Add Invoke tasks for building and serving docs
This commit is contained in:
parent
f18429f23a
commit
535df9cd9c
4 changed files with 28 additions and 5 deletions
|
|
@ -105,13 +105,15 @@ environments.
|
||||||
Building the docs
|
Building the docs
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
If you make changes to the documentation, you should preview your changes
|
If you make changes to the documentation, you should build and inspect your
|
||||||
before committing them::
|
changes before committing them::
|
||||||
|
|
||||||
cd docs
|
invoke docserve
|
||||||
make html
|
|
||||||
|
|
||||||
Open ``_build/html/index.html`` in your browser to preview the documentation.
|
Open http://localhost:8000 in your browser to review the documentation. While
|
||||||
|
the above task is running, any changes you make and save to the documentation
|
||||||
|
should automatically appear in the browser, as it live-reloads when it detects
|
||||||
|
changes to the documentation source files.
|
||||||
|
|
||||||
Plugin development
|
Plugin development
|
||||||
------------------
|
------------------
|
||||||
|
|
|
||||||
|
|
@ -48,6 +48,7 @@ markdown = "~3.1.1"
|
||||||
typogrify = "^2.0"
|
typogrify = "^2.0"
|
||||||
sphinx = "=1.4.9"
|
sphinx = "=1.4.9"
|
||||||
sphinx_rtd_theme = "^0.4.3"
|
sphinx_rtd_theme = "^0.4.3"
|
||||||
|
livereload = "^2.6"
|
||||||
mock = "^3.0"
|
mock = "^3.0"
|
||||||
pytest = "^5.2"
|
pytest = "^5.2"
|
||||||
pytest-cov = "^2.8"
|
pytest-cov = "^2.8"
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1,3 @@
|
||||||
sphinx==1.4.9
|
sphinx==1.4.9
|
||||||
sphinx_rtd_theme
|
sphinx_rtd_theme
|
||||||
|
livereload
|
||||||
|
|
|
||||||
19
tasks.py
19
tasks.py
|
|
@ -6,6 +6,7 @@ from invoke import task
|
||||||
|
|
||||||
PKG_NAME = "pelican"
|
PKG_NAME = "pelican"
|
||||||
PKG_PATH = Path("pelican")
|
PKG_PATH = Path("pelican")
|
||||||
|
DOCS_PORT = os.environ.get("DOCS_PORT", 8000)
|
||||||
ACTIVE_VENV = os.environ.get("VIRTUAL_ENV", None)
|
ACTIVE_VENV = os.environ.get("VIRTUAL_ENV", None)
|
||||||
VENV_HOME = Path(os.environ.get("WORKON_HOME", "~/virtualenvs"))
|
VENV_HOME = Path(os.environ.get("WORKON_HOME", "~/virtualenvs"))
|
||||||
VENV_PATH = Path(ACTIVE_VENV) if ACTIVE_VENV else (VENV_HOME / PKG_NAME)
|
VENV_PATH = Path(ACTIVE_VENV) if ACTIVE_VENV else (VENV_HOME / PKG_NAME)
|
||||||
|
|
@ -18,6 +19,24 @@ PRECOMMIT = (
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@task
|
||||||
|
def docbuild(c):
|
||||||
|
"""Build documentation"""
|
||||||
|
c.run(f"{VENV}/bin/sphinx-build docs docs/_build")
|
||||||
|
|
||||||
|
|
||||||
|
@task(docbuild)
|
||||||
|
def docserve(c):
|
||||||
|
"""Serve docs at http://localhost:$DOCS_PORT/ (default port is 8000)"""
|
||||||
|
from livereload import Server
|
||||||
|
|
||||||
|
server = Server()
|
||||||
|
server.watch("docs/conf.py", lambda: docbuild(c))
|
||||||
|
server.watch("CONTRIBUTING.rst", lambda: docbuild(c))
|
||||||
|
server.watch("docs/*.rst", lambda: docbuild(c))
|
||||||
|
server.serve(port=DOCS_PORT, root="docs/_build")
|
||||||
|
|
||||||
|
|
||||||
@task
|
@task
|
||||||
def tests(c):
|
def tests(c):
|
||||||
"""Run the test suite"""
|
"""Run the test suite"""
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue