#!/usr/bin/env python3
|
|
|
|
from pathlib import Path
|
|
|
|
SRCDIR = Path("octodns")
|
|
DOC_MODULE_DIR = Path("docs/modules")
|
|
|
|
DOC_MODULE_TEMPLATE = """
|
|
====================================
|
|
``{module_name}``
|
|
====================================
|
|
|
|
.. automodule:: {module_name}"""
|
|
|
|
for module in SRCDIR.rglob("*.py"):
|
|
if module.name in ["__init__.py", "__about__.py"]:
|
|
continue
|
|
|
|
module_docname = str(module).replace("/", ".").removesuffix(".py")
|
|
|
|
if module.parent.name != "octodns":
|
|
module_docpath = (
|
|
DOC_MODULE_DIR / module.parent.name / f"{module_docname}.rst"
|
|
)
|
|
else:
|
|
module_docpath = DOC_MODULE_DIR / f"{module_docname}.rst"
|
|
|
|
print(f"creating sphinx doc module for: {module_docname}")
|
|
module_docpath.parent.mkdir(exist_ok=True, parents=True)
|
|
module_docpath.write_text(
|
|
DOC_MODULE_TEMPLATE.format(module_name=module_docname).strip()
|
|
)
|