feat(web-app-docs): configure the Sphinx project, copyright and author

conf.py hardcoded all three. They now come from services.docs.sphinx, so an operator changes them where every other role value lives instead of in a python file inside files/.

The author needed a constant. INVENTOR joins ORGANIZATION in group_vars/all/00_general.yml; the name had been written out once in 14_about.yml, which now reads the constant so it stays in one place.

project drops the descriptive suffix and is SOFTWARE_NAME. copyright carries no copyright sign: sphinxawesome_theme/footer.html:14 renders '© {{ copyright }}', so a sign in the value would print twice.

conf.py reads the three with os.environ[...] rather than .get(), because they are required: a missing value must stop the build instead of silently restoring an old literal. DOCS_DESIGN_TITLE keeps its guarded .get() because it is optional.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
kevinveenbirkenbachandClaude Opus 5 committed 2026-10-15 22:55:43 +02:00
1 parent b3e610858b
commit 9dc7f0cbc2
6 files changed
+15 -4

No files matched your search

+1
View File
@@ -8,6 +8,7 @@ SOFTWARE_URL: "https://{{ SOFTWARE_DOMAIN }}" # Url of the software provicer
SOFTWARE_REPOSITORY: "https://github.com/infinito-nexus/core.git"
ORGANIZATION: "{{ SOFTWARE_NAME }}"
INVENTOR: "Kevin Veen-Birkenbach" # Author of the software
ENVIRONMENT: "production" # Possible values: production, development
RUNTIME: "host" # Where does this instance run in? Valid: act, github, dev, host
+1 -1
View File
@@ -3,7 +3,7 @@
defaults_service_provider:
type: "legal" # Accepted Values: natural, legal
company:
titel: "{{ SOFTWARE_NAME }} by Kevin Veen-Birkenbach"
titel: "{{ SOFTWARE_NAME }} by {{ INVENTOR }}"
slogan: "{{ SOFTWARE_NAME }} — Empowering a Sovereign Digital Future."
address:
street: "Binary Avenue 01"
@@ -20,9 +20,9 @@ CONF_DIR = Path(__file__).resolve().parent
templates_path = [str(CONF_DIR / "templates")]
html_static_path = [str(CONF_DIR / "assets")]
project = "Infinito.Nexus - Cyber Master Infrastructure Solution"
copyright = "2025, Kevin Veen-Birkenbach" # noqa: A001
author = "Kevin Veen-Birkenbach"
project = os.environ["DOCS_SPHINX_PROJECT"]
copyright = os.environ["DOCS_SPHINX_COPYRIGHT"] # noqa: A001
author = os.environ["DOCS_SPHINX_AUTHOR"]
_design_title = os.environ.get("DOCS_DESIGN_TITLE", "").strip()
if _design_title:
+4
View File
@@ -40,6 +40,10 @@ docs:
build:
sphinx_process_mb: 3072
sphinx_overhead_mb: 2048
sphinx:
project: "{{ SOFTWARE_NAME }}"
copyright: "2025, {{ INVENTOR }}"
author: "{{ INVENTOR }}"
i18n:
preload_languages:
- "{{ HOST_LL }}"
+3
View File
@@ -9,4 +9,7 @@ DOCS_FETCH_INTERVAL={{ DOCS_FETCH_INTERVAL }}
DOCS_I18N_PRELOAD_LANGUAGES={{ DOCS_I18N_PRELOAD_LANGUAGES | join(',') }}
DOCS_PORT={{ DOCS_PORT }}
DOCS_SNAPSHOT_DIR={{ DOCS_SNAPSHOT_DIR }}
DOCS_SPHINX_AUTHOR={{ DOCS_SPHINX_AUTHOR | dotenv_quote }}
DOCS_SPHINX_COPYRIGHT={{ DOCS_SPHINX_COPYRIGHT | dotenv_quote }}
DOCS_SPHINX_PROJECT={{ DOCS_SPHINX_PROJECT | dotenv_quote }}
INFINITO_IMAGE={{ lookup('env', 'INFINITO_IMAGE') | dotenv_quote }}
+3
View File
@@ -11,6 +11,9 @@ DOCS_SOURCE_REPO: "{{ lookup('config', application_id, 'services.docs.source_rep
DOCS_MERMAID_VERSION: "{{ lookup('config', application_id, 'services.docs.mermaid_version') }}"
DOCS_MERMAID_SHA256: "{{ lookup('config', application_id, 'services.docs.mermaid_sha256') }}"
DOCS_FETCH_INTERVAL: "{{ lookup('config', application_id, 'services.docs.fetch_interval') }}"
DOCS_SPHINX_PROJECT: "{{ lookup('config', application_id, 'services.docs.sphinx.project') }}"
DOCS_SPHINX_COPYRIGHT: "{{ lookup('config', application_id, 'services.docs.sphinx.copyright') }}"
DOCS_SPHINX_AUTHOR: "{{ lookup('config', application_id, 'services.docs.sphinx.author') }}"
DOCS_SPHINX_PROCESS_MB: "{{ lookup('config', application_id, 'services.docs.build.sphinx_process_mb') | int }}"
DOCS_SPHINX_OVERHEAD_MB: "{{ lookup('config', application_id, 'services.docs.build.sphinx_overhead_mb') | int }}"
DOCS_BUILD_MEM_MB: "{{ lookup('service_memory_mb', application_id, 'docs', 1.0) | int }}"