mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-09-10 20:37:15 +02:00
Implemented more auto docs
This commit is contained in:
@@ -5,10 +5,10 @@
|
||||
SPHINXOPTS ?= -c .
|
||||
SPHINXBUILD ?= sphinx-build
|
||||
SPHINX_SOURCE_DIR ?= ../
|
||||
SPHINX_BUILD_DIR ?= ./generated
|
||||
SPHINX_APIDOC_BUILD_DIR = $(SPHINX_SOURCE_DIR)modules
|
||||
SPHINX_BUILD_DIR ?= ./build
|
||||
SPHINX_GENERATED_DIR = ./generated
|
||||
|
||||
.PHONY: help install copy-images apidoc remove-apidoc html Makefile
|
||||
.PHONY: help install copy-images apidoc remove-generated html Makefile
|
||||
|
||||
# Copy images before running any Sphinx command (except for help)
|
||||
copy-images:
|
||||
@@ -16,23 +16,31 @@ copy-images:
|
||||
cp -vr ../assets/img/* ./assets/img/
|
||||
|
||||
# Generate reStructuredText files from Python modules using sphinx-apidoc
|
||||
apidoc:
|
||||
generate-apidoc:
|
||||
@echo "Running sphinx-apidoc..."
|
||||
sphinx-apidoc -f -o $(SPHINX_APIDOC_BUILD_DIR) $(SPHINX_SOURCE_DIR)
|
||||
sphinx-apidoc -f -o $(SPHINX_GENERATED_DIR)/modules $(SPHINX_SOURCE_DIR)
|
||||
|
||||
remove-apidoc:
|
||||
@echo "Removing sphinx-apidoc files..."
|
||||
- rm -rv $(SPHINX_APIDOC_BUILD_DIR)
|
||||
remove-generated:
|
||||
@echo "Removing generated files..."
|
||||
- find $(SPHINX_GENERATED_DIR)/ -type f ! -name '.gitkeep' -delete
|
||||
|
||||
generate-yaml-index:
|
||||
@echo "Generating YAML index..."
|
||||
python generators/yaml_index.py --source-dir $(SPHINX_SOURCE_DIR) --output-file $(SPHINX_GENERATED_DIR)/yaml_index.rst
|
||||
|
||||
generate-ansible-roles:
|
||||
@echo "Generating Ansible roles documentation..."
|
||||
python generators/ansible_roles.py --roles-dir $(SPHINX_SOURCE_DIR)/roles --output-dir $(SPHINX_GENERATED_DIR)/roles
|
||||
|
||||
# "help" target does not copy images
|
||||
help:
|
||||
@$(SPHINXBUILD) -M help "$(SPHINX_SOURCE_DIR)" "$(SPHINX_BUILD_DIR)" $(SPHINXOPTS) $(O)
|
||||
|
||||
# HTML target depends on apidoc so that sphinx-apidoc runs first
|
||||
html: copy-images
|
||||
@$(SPHINXBUILD) -M html "$(SPHINX_SOURCE_DIR)" "$(SPHINX_BUILD_DIR)" $(SPHINXOPTS) $(O)
|
||||
html: copy-images generate-apidoc generate-yaml-index generate-ansible-roles
|
||||
@$(SPHINXBUILD) -M html "$(SPHINX_SOURCE_DIR)" "$(SPHINX_BUILD_DIR)" $(SPHINXOPTS)
|
||||
|
||||
clean: remove-apidoc
|
||||
|
||||
clean: remove-generated
|
||||
@$(SPHINXBUILD) -M html "$(SPHINX_SOURCE_DIR)" "$(SPHINX_BUILD_DIR)" $(SPHINXOPTS) $(O)
|
||||
|
||||
# Catch-all target: route all unknown targets to Sphinx using the new
|
||||
|
Reference in New Issue
Block a user