Browse Source

Add initial sphinx docs

Signed-off-by: Ivan Schaller <ivan@schaller.sh>
pull/1261/head
Ivan Schaller 6 months ago
parent
commit
ce11aa3fdb
75 changed files with 530 additions and 0 deletions
  1. +1
    -0
      .gitignore
  2. +6
    -0
      docs/build_docs.sh
  3. +90
    -0
      docs/conf.py
  4. +28
    -0
      docs/get_docs.py
  5. +74
    -0
      docs/index.md
  6. +5
    -0
      docs/infos/changelog.md
  7. +5
    -0
      docs/infos/license.md
  8. +5
    -0
      docs/modules/cmds/octodns.cmds.args.rst
  9. +5
    -0
      docs/modules/cmds/octodns.cmds.compare.rst
  10. +5
    -0
      docs/modules/cmds/octodns.cmds.dump.rst
  11. +5
    -0
      docs/modules/cmds/octodns.cmds.report.rst
  12. +5
    -0
      docs/modules/cmds/octodns.cmds.sync.rst
  13. +5
    -0
      docs/modules/cmds/octodns.cmds.validate.rst
  14. +5
    -0
      docs/modules/cmds/octodns.cmds.versions.rst
  15. +5
    -0
      docs/modules/octodns.context.rst
  16. +5
    -0
      docs/modules/octodns.deprecation.rst
  17. +5
    -0
      docs/modules/octodns.equality.rst
  18. +5
    -0
      docs/modules/octodns.idna.rst
  19. +5
    -0
      docs/modules/octodns.manager.rst
  20. +5
    -0
      docs/modules/octodns.yaml.rst
  21. +5
    -0
      docs/modules/octodns.zone.rst
  22. +5
    -0
      docs/modules/processor/octodns.processor.acme.rst
  23. +5
    -0
      docs/modules/processor/octodns.processor.arpa.rst
  24. +5
    -0
      docs/modules/processor/octodns.processor.base.rst
  25. +5
    -0
      docs/modules/processor/octodns.processor.filter.rst
  26. +5
    -0
      docs/modules/processor/octodns.processor.meta.rst
  27. +5
    -0
      docs/modules/processor/octodns.processor.ownership.rst
  28. +5
    -0
      docs/modules/processor/octodns.processor.restrict.rst
  29. +5
    -0
      docs/modules/processor/octodns.processor.spf.rst
  30. +5
    -0
      docs/modules/processor/octodns.processor.trailing_dots.rst
  31. +5
    -0
      docs/modules/provider/octodns.provider.base.rst
  32. +5
    -0
      docs/modules/provider/octodns.provider.plan.rst
  33. +5
    -0
      docs/modules/provider/octodns.provider.yaml.rst
  34. +5
    -0
      docs/modules/record/octodns.record.a.rst
  35. +5
    -0
      docs/modules/record/octodns.record.aaaa.rst
  36. +5
    -0
      docs/modules/record/octodns.record.alias.rst
  37. +5
    -0
      docs/modules/record/octodns.record.base.rst
  38. +5
    -0
      docs/modules/record/octodns.record.caa.rst
  39. +5
    -0
      docs/modules/record/octodns.record.change.rst
  40. +5
    -0
      docs/modules/record/octodns.record.chunked.rst
  41. +5
    -0
      docs/modules/record/octodns.record.cname.rst
  42. +5
    -0
      docs/modules/record/octodns.record.dname.rst
  43. +5
    -0
      docs/modules/record/octodns.record.ds.rst
  44. +5
    -0
      docs/modules/record/octodns.record.dynamic.rst
  45. +5
    -0
      docs/modules/record/octodns.record.exception.rst
  46. +5
    -0
      docs/modules/record/octodns.record.geo.rst
  47. +5
    -0
      docs/modules/record/octodns.record.geo_data.rst
  48. +5
    -0
      docs/modules/record/octodns.record.https.rst
  49. +5
    -0
      docs/modules/record/octodns.record.ip.rst
  50. +5
    -0
      docs/modules/record/octodns.record.loc.rst
  51. +5
    -0
      docs/modules/record/octodns.record.mx.rst
  52. +5
    -0
      docs/modules/record/octodns.record.naptr.rst
  53. +5
    -0
      docs/modules/record/octodns.record.ns.rst
  54. +5
    -0
      docs/modules/record/octodns.record.ptr.rst
  55. +5
    -0
      docs/modules/record/octodns.record.rr.rst
  56. +5
    -0
      docs/modules/record/octodns.record.spf.rst
  57. +5
    -0
      docs/modules/record/octodns.record.srv.rst
  58. +5
    -0
      docs/modules/record/octodns.record.sshfp.rst
  59. +5
    -0
      docs/modules/record/octodns.record.subnet.rst
  60. +5
    -0
      docs/modules/record/octodns.record.svcb.rst
  61. +5
    -0
      docs/modules/record/octodns.record.target.rst
  62. +5
    -0
      docs/modules/record/octodns.record.tlsa.rst
  63. +5
    -0
      docs/modules/record/octodns.record.txt.rst
  64. +5
    -0
      docs/modules/record/octodns.record.urlfwd.rst
  65. +5
    -0
      docs/modules/secret/octodns.secret.base.rst
  66. +5
    -0
      docs/modules/secret/octodns.secret.environ.rst
  67. +5
    -0
      docs/modules/secret/octodns.secret.exception.rst
  68. +5
    -0
      docs/modules/source/octodns.source.base.rst
  69. +5
    -0
      docs/modules/source/octodns.source.envvar.rst
  70. +5
    -0
      docs/modules/source/octodns.source.tinydns.rst
  71. +0
    -0
      docs/pages/auto_arpa.md
  72. +0
    -0
      docs/pages/dynamic_records.md
  73. +0
    -0
      docs/pages/geo_records.md
  74. +6
    -0
      docs/pages/quick-start.md
  75. +0
    -0
      docs/pages/records.md

+ 1
- 0
.gitignore View File

@ -17,3 +17,4 @@ octodns.egg-info/
output/
tests/zones/unit.tests.
tmp/
docs/_build/

+ 6
- 0
docs/build_docs.sh View File

@ -0,0 +1,6 @@
#!/usr/bin/env bash
set -xeuo pipefail
rm -rf docs/_build
sphinx-build -M html docs docs/_build "${@}"

+ 90
- 0
docs/conf.py View File

@ -0,0 +1,90 @@
import sys
from pathlib import Path
sys.path.insert(0, str(Path("..", "src").resolve()))
from octodns.__init__ import __version__
### sphinx config ###
project = "octodns"
copyright = "2017-present" # noqa
author = "Ross McFarland"
release = __version__
extensions = [
"sphinx.ext.autodoc",
"sphinx.ext.coverage",
"sphinx.ext.napoleon",
"sphinx.ext.intersphinx",
"sphinx.ext.todo",
"sphinx.ext.viewcode",
"myst_parser",
"sphinx_copybutton",
]
### autodoc ###
autodoc_default_options = {
"members": True,
"undoc-members": True,
"private-members": False,
"special-members": "__init__",
"show-inheritance": True,
"exclude-members": "__weakref__",
}
autodoc_typehints = "both"
autodoc_typehints_description_target = "all"
autodoc_member_order = "alphabetical"
### extlinks ###
extlinks = {
"github": ("https://github.com/%s", "%s"),
"pypi": ("https://pypi.org/project/%s/", "%s"),
}
extlinks_detect_hardcoded_links = True
### intersphinx ###
intersphinx_mapping = {
"python": ("https://docs.python.org/3", None),
"sphinx": ("https://www.sphinx-doc.org/en/master", None),
"dnspython": ("https://dnspython.readthedocs.io/en/stable/", None),
}
### todo ###
todo_include_todos = True
### myst ###
myst_enable_extensions = [
"colon_fence",
"deflist",
]
myst_heading_anchors = 3
### content ###
master_doc = "index"
templates_path = ["_templates"]
html_static_path = ["_static"]
exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
### theme ###
# tml_theme = "alabaster"
html_theme = "furo"
html_theme_options = {
"source_repository": "https://github.com/octodns/octodns/",
"source_branch": "main",
"source_directory": "docs/",
}

+ 28
- 0
docs/get_docs.py View File

@ -0,0 +1,28 @@
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()
)

+ 74
- 0
docs/index.md View File

@ -0,0 +1,74 @@
# octodns documentation
```{include} ../README.md
:end-before: "## Table of Contents"
```
---
## Indices and tables
- {ref}`genindex`
- {ref}`modindex`
### Project infos
- [License](infos/license.md)
- [Changelog](infos/changelog.md)
---
## User documentation
```{toctree}
:caption: Guides:
:maxdepth: 1
:glob:
```
---
## Module documentation
```{toctree}
:caption: Processors:
:maxdepth: 2
:glob:
modules/processor/*
```
```{toctree}
:caption: Providers:
:maxdepth: 2
:glob:
modules/provider/*
```
```{toctree}
:caption: Sources:
:maxdepth: 2
:glob:
modules/source/*
```
```{toctree}
:caption: Records:
:maxdepth: 2
:glob:
modules/record/*
```
```{toctree}
:caption: Other modules:
:titlesonly:
:glob:
modules/*
modules/cmds/*
modules/secret/*
```

+ 5
- 0
docs/infos/changelog.md View File

@ -0,0 +1,5 @@
# Changelog
```{include} ../../CHANGELOG.md
```

+ 5
- 0
docs/infos/license.md View File

@ -0,0 +1,5 @@
# License
```{include} ../../LICENSE
```

+ 5
- 0
docs/modules/cmds/octodns.cmds.args.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.cmds.args``
====================================
.. automodule:: octodns.cmds.args

+ 5
- 0
docs/modules/cmds/octodns.cmds.compare.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.cmds.compare``
====================================
.. automodule:: octodns.cmds.compare

+ 5
- 0
docs/modules/cmds/octodns.cmds.dump.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.cmds.dump``
====================================
.. automodule:: octodns.cmds.dump

+ 5
- 0
docs/modules/cmds/octodns.cmds.report.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.cmds.report``
====================================
.. automodule:: octodns.cmds.report

+ 5
- 0
docs/modules/cmds/octodns.cmds.sync.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.cmds.sync``
====================================
.. automodule:: octodns.cmds.sync

+ 5
- 0
docs/modules/cmds/octodns.cmds.validate.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.cmds.validate``
====================================
.. automodule:: octodns.cmds.validate

+ 5
- 0
docs/modules/cmds/octodns.cmds.versions.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.cmds.versions``
====================================
.. automodule:: octodns.cmds.versions

+ 5
- 0
docs/modules/octodns.context.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.context``
====================================
.. automodule:: octodns.context

+ 5
- 0
docs/modules/octodns.deprecation.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.deprecation``
====================================
.. automodule:: octodns.deprecation

+ 5
- 0
docs/modules/octodns.equality.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.equality``
====================================
.. automodule:: octodns.equality

+ 5
- 0
docs/modules/octodns.idna.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.idna``
====================================
.. automodule:: octodns.idna

+ 5
- 0
docs/modules/octodns.manager.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.manager``
====================================
.. automodule:: octodns.manager

+ 5
- 0
docs/modules/octodns.yaml.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.yaml``
====================================
.. automodule:: octodns.yaml

+ 5
- 0
docs/modules/octodns.zone.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.zone``
====================================
.. automodule:: octodns.zone

+ 5
- 0
docs/modules/processor/octodns.processor.acme.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.acme``
====================================
.. automodule:: octodns.processor.acme

+ 5
- 0
docs/modules/processor/octodns.processor.arpa.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.arpa``
====================================
.. automodule:: octodns.processor.arpa

+ 5
- 0
docs/modules/processor/octodns.processor.base.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.base``
====================================
.. automodule:: octodns.processor.base

+ 5
- 0
docs/modules/processor/octodns.processor.filter.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.filter``
====================================
.. automodule:: octodns.processor.filter

+ 5
- 0
docs/modules/processor/octodns.processor.meta.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.meta``
====================================
.. automodule:: octodns.processor.meta

+ 5
- 0
docs/modules/processor/octodns.processor.ownership.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.ownership``
====================================
.. automodule:: octodns.processor.ownership

+ 5
- 0
docs/modules/processor/octodns.processor.restrict.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.restrict``
====================================
.. automodule:: octodns.processor.restrict

+ 5
- 0
docs/modules/processor/octodns.processor.spf.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.spf``
====================================
.. automodule:: octodns.processor.spf

+ 5
- 0
docs/modules/processor/octodns.processor.trailing_dots.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.processor.trailing_dots``
====================================
.. automodule:: octodns.processor.trailing_dots

+ 5
- 0
docs/modules/provider/octodns.provider.base.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.provider.base``
====================================
.. automodule:: octodns.provider.base

+ 5
- 0
docs/modules/provider/octodns.provider.plan.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.provider.plan``
====================================
.. automodule:: octodns.provider.plan

+ 5
- 0
docs/modules/provider/octodns.provider.yaml.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.provider.yaml``
====================================
.. automodule:: octodns.provider.yaml

+ 5
- 0
docs/modules/record/octodns.record.a.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.a``
====================================
.. automodule:: octodns.record.a

+ 5
- 0
docs/modules/record/octodns.record.aaaa.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.aaaa``
====================================
.. automodule:: octodns.record.aaaa

+ 5
- 0
docs/modules/record/octodns.record.alias.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.alias``
====================================
.. automodule:: octodns.record.alias

+ 5
- 0
docs/modules/record/octodns.record.base.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.base``
====================================
.. automodule:: octodns.record.base

+ 5
- 0
docs/modules/record/octodns.record.caa.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.caa``
====================================
.. automodule:: octodns.record.caa

+ 5
- 0
docs/modules/record/octodns.record.change.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.change``
====================================
.. automodule:: octodns.record.change

+ 5
- 0
docs/modules/record/octodns.record.chunked.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.chunked``
====================================
.. automodule:: octodns.record.chunked

+ 5
- 0
docs/modules/record/octodns.record.cname.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.cname``
====================================
.. automodule:: octodns.record.cname

+ 5
- 0
docs/modules/record/octodns.record.dname.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.dname``
====================================
.. automodule:: octodns.record.dname

+ 5
- 0
docs/modules/record/octodns.record.ds.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.ds``
====================================
.. automodule:: octodns.record.ds

+ 5
- 0
docs/modules/record/octodns.record.dynamic.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.dynamic``
====================================
.. automodule:: octodns.record.dynamic

+ 5
- 0
docs/modules/record/octodns.record.exception.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.exception``
====================================
.. automodule:: octodns.record.exception

+ 5
- 0
docs/modules/record/octodns.record.geo.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.geo``
====================================
.. automodule:: octodns.record.geo

+ 5
- 0
docs/modules/record/octodns.record.geo_data.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.geo_data``
====================================
.. automodule:: octodns.record.geo_data

+ 5
- 0
docs/modules/record/octodns.record.https.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.https``
====================================
.. automodule:: octodns.record.https

+ 5
- 0
docs/modules/record/octodns.record.ip.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.ip``
====================================
.. automodule:: octodns.record.ip

+ 5
- 0
docs/modules/record/octodns.record.loc.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.loc``
====================================
.. automodule:: octodns.record.loc

+ 5
- 0
docs/modules/record/octodns.record.mx.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.mx``
====================================
.. automodule:: octodns.record.mx

+ 5
- 0
docs/modules/record/octodns.record.naptr.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.naptr``
====================================
.. automodule:: octodns.record.naptr

+ 5
- 0
docs/modules/record/octodns.record.ns.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.ns``
====================================
.. automodule:: octodns.record.ns

+ 5
- 0
docs/modules/record/octodns.record.ptr.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.ptr``
====================================
.. automodule:: octodns.record.ptr

+ 5
- 0
docs/modules/record/octodns.record.rr.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.rr``
====================================
.. automodule:: octodns.record.rr

+ 5
- 0
docs/modules/record/octodns.record.spf.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.spf``
====================================
.. automodule:: octodns.record.spf

+ 5
- 0
docs/modules/record/octodns.record.srv.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.srv``
====================================
.. automodule:: octodns.record.srv

+ 5
- 0
docs/modules/record/octodns.record.sshfp.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.sshfp``
====================================
.. automodule:: octodns.record.sshfp

+ 5
- 0
docs/modules/record/octodns.record.subnet.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.subnet``
====================================
.. automodule:: octodns.record.subnet

+ 5
- 0
docs/modules/record/octodns.record.svcb.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.svcb``
====================================
.. automodule:: octodns.record.svcb

+ 5
- 0
docs/modules/record/octodns.record.target.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.target``
====================================
.. automodule:: octodns.record.target

+ 5
- 0
docs/modules/record/octodns.record.tlsa.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.tlsa``
====================================
.. automodule:: octodns.record.tlsa

+ 5
- 0
docs/modules/record/octodns.record.txt.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.txt``
====================================
.. automodule:: octodns.record.txt

+ 5
- 0
docs/modules/record/octodns.record.urlfwd.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.record.urlfwd``
====================================
.. automodule:: octodns.record.urlfwd

+ 5
- 0
docs/modules/secret/octodns.secret.base.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.secret.base``
====================================
.. automodule:: octodns.secret.base

+ 5
- 0
docs/modules/secret/octodns.secret.environ.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.secret.environ``
====================================
.. automodule:: octodns.secret.environ

+ 5
- 0
docs/modules/secret/octodns.secret.exception.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.secret.exception``
====================================
.. automodule:: octodns.secret.exception

+ 5
- 0
docs/modules/source/octodns.source.base.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.source.base``
====================================
.. automodule:: octodns.source.base

+ 5
- 0
docs/modules/source/octodns.source.envvar.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.source.envvar``
====================================
.. automodule:: octodns.source.envvar

+ 5
- 0
docs/modules/source/octodns.source.tinydns.rst View File

@ -0,0 +1,5 @@
====================================
``octodns.source.tinydns``
====================================
.. automodule:: octodns.source.tinydns

docs/auto_arpa.md → docs/pages/auto_arpa.md View File


docs/dynamic_records.md → docs/pages/dynamic_records.md View File


docs/geo_records.md → docs/pages/geo_records.md View File


+ 6
- 0
docs/pages/quick-start.md View File

@ -0,0 +1,6 @@
# Quick-Start
```{include} ../../README.md
:start-after: "## Getting started"
:end-before: "## Providers"
```

docs/records.md → docs/pages/records.md View File


Loading…
Cancel
Save