From 4f059d9d0a9e2252935d985c65d6818b0a6371c8 Mon Sep 17 00:00:00 2001 From: "lina.wolf" Date: Sat, 9 Mar 2024 18:42:46 +0100 Subject: [PATCH] [DOCS] Switch to PHP based documentation rendering * Create guides.xml * Remove now outdated Settings.cfg * Remove outdated genindex.rst * Introduce automatic testing for documentation changes * Introduce make file for easy local rendering --- .editorconfig | 2 +- .github/workflows/test-documentation.yml | 17 +++++++ Documentation/Includes.rst.txt | 35 +------------ Documentation/Index.rst | 1 - Documentation/Settings.cfg | 62 ------------------------ Documentation/genindex.rst | 7 --- Documentation/guides.xml | 19 ++++++++ Makefile | 16 ++++++ 8 files changed, 54 insertions(+), 105 deletions(-) create mode 100644 .github/workflows/test-documentation.yml delete mode 100644 Documentation/Settings.cfg delete mode 100644 Documentation/genindex.rst create mode 100644 Documentation/guides.xml create mode 100644 Makefile diff --git a/.editorconfig b/.editorconfig index db7aa2c..67abedd 100644 --- a/.editorconfig +++ b/.editorconfig @@ -12,7 +12,7 @@ end_of_line = lf insert_final_newline = true trim_trailing_whitespace = true indent_style = space -indent_size = 3 +indent_size = 4 # MD-Files [*.md] diff --git a/.github/workflows/test-documentation.yml b/.github/workflows/test-documentation.yml new file mode 100644 index 0000000..79ac662 --- /dev/null +++ b/.github/workflows/test-documentation.yml @@ -0,0 +1,17 @@ +name: test documentation + +on: [ push, pull_request ] + +jobs: + tests: + name: documentation + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Test if the documentation will render without warnings + run: | + mkdir -p Documentation-GENERATED-temp \ + && docker run --rm --pull always -v $(pwd):/project \ + ghcr.io/typo3-documentation/render-guides:latest --config=Documentation --no-progress --fail-on-log diff --git a/Documentation/Includes.rst.txt b/Documentation/Includes.rst.txt index af7f700..2362507 100644 --- a/Documentation/Includes.rst.txt +++ b/Documentation/Includes.rst.txt @@ -1,34 +1 @@ -.. More information about this file: - https://docs.typo3.org/m/typo3/docs-how-to-document/main/en-us/GeneralConventions/FileStructure.html#includes-rst-txt - -.. ---------- -.. text roles -.. ---------- - -.. role:: aspect(emphasis) -.. role:: bash(code) -.. role:: html(code) -.. role:: js(code) -.. role:: php(code) -.. role:: rst(code) -.. role:: sep(strong) -.. role:: sql(code) - -.. role:: tsconfig(code) - :class: typoscript - -.. role:: typoscript(code) -.. role:: xml(code) - :class: html - -.. role:: yaml(code) - -.. default-role:: code - -.. --------- -.. highlight -.. --------- - -.. By default, code blocks use PHP syntax highlighting - -.. highlight:: php +.. You can put central messages to display on all pages here diff --git a/Documentation/Index.rst b/Documentation/Index.rst index bc10948..9e89e81 100644 --- a/Documentation/Index.rst +++ b/Documentation/Index.rst @@ -51,4 +51,3 @@ Please feel free to contribute by adding content through pull requests or by sub :hidden: Sitemap - genindex diff --git a/Documentation/Settings.cfg b/Documentation/Settings.cfg deleted file mode 100644 index d323b0b..0000000 --- a/Documentation/Settings.cfg +++ /dev/null @@ -1,62 +0,0 @@ -# More information about this file: -# https://docs.typo3.org/m/typo3/docs-how-to-document/main/en-us/GeneralConventions/FileStructure.html#settings-cfg - -[general] - -project = Content and Marketing Guide -version = 1.0 -release = 1.0 -copyright = TYPO3 Project Contributors - -[html_theme_options] - -# "Edit on GitHub" button -github_repository = https://github.com/TYPO3-Documentation/TYPO3CMS-Guide-ContentAndMarketing -github_branch = main - -# Footer links -project_home = https://github.com/TYPO3-Documentation/TYPO3CMS-Guide-ContentAndMarketing -project_contact = -project_repository = https://github.com/TYPO3-Documentation/TYPO3CMS-Guide-ContentAndMarketing -project_issues = https://github.com/TYPO3-Documentation/TYPO3CMS-Guide-ContentAndMarketing/issues -project_discussions = - -use_opensearch = - -[intersphinx_mapping] - -# Official TYPO3 manuals -# h2document = https://docs.typo3.org/m/typo3/docs-how-to-document/main/en-us/ -# t3cheatsheets = https://docs.typo3.org/m/typo3/docs-cheatsheets/main/en-us/ -# t3contribute = https://docs.typo3.org/m/typo3/guide-contributionworkflow/main/en-us/ -# t3coreapi = https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ -# t3docteam = https://docs.typo3.org/m/typo3/team-t3docteam/main/en-us/ -# t3editors = https://docs.typo3.org/m/typo3/tutorial-editors/main/en-us/ -# t3extbasebook = https://docs.typo3.org/m/typo3/book-extbasefluid/main/en-us/ -# t3extexample = https://docs.typo3.org/m/typo3/guide-example-extension-manual/main/en-us/ -# t3home = https://docs.typo3.org/ -# t3install = https://docs.typo3.org/m/typo3/guide-installation/main/en-us/ -# t3l10n = https://docs.typo3.org/m/typo3/guide-frontendlocalization/main/en-us/ -# t3sitepackage = https://docs.typo3.org/m/typo3/tutorial-sitepackage/main/en-us/ -# t3start = https://docs.typo3.org/m/typo3/tutorial-getting-started/main/en-us/ -# t3tca = https://docs.typo3.org/m/typo3/reference-tca/main/en-us/ -# t3templating = https://docs.typo3.org/m/typo3/tutorial-templating/main/en-us/ -# t3translate = https://docs.typo3.org/m/typo3/guide-frontendlocalization/main/en-us/ -# t3tsconfig = https://docs.typo3.org/m/typo3/reference-tsconfig/main/en-us/ -# t3tsref = https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/ -# t3ts45 = https://docs.typo3.org/m/typo3/tutorial-typoscript-in-45-minutes/main/en-us/ -# t3viewhelper = https://docs.typo3.org/other/typo3/view-helper-reference/main/en-us/ -# t3upgrade = https://docs.typo3.org/m/typo3/guide-installation/main/en-us/ - -# TYPO3 system extensions -# ext_adminpanel = https://docs.typo3.org/c/typo3/cms-adminpanel/main/en-us/ -# ext_core = https://docs.typo3.org/c/typo3/cms-core/main/en-us/ -# ext_dashboard = https://docs.typo3.org/c/typo3/cms-dashboard/main/en-us/ -# ext_felogin = https://docs.typo3.org/c/typo3/cms-felogin/main/en-us/ -# ext_form = https://docs.typo3.org/c/typo3/cms-form/main/en-us/ -# ext_fsc = https://docs.typo3.org/c/typo3/cms-fluid-styled-content/main/en-us/ -# ext_indexed_search = https://docs.typo3.org/c/typo3/cms-indexed-search/main/en-us/ -# ext_rte_ckeditor = https://docs.typo3.org/c/typo3/cms-rte-ckeditor/main/en-us/ -# ext_scheduler = https://docs.typo3.org/c/typo3/cms-scheduler/main/en-us/ -# ext_seo = https://docs.typo3.org/c/typo3/cms-seo/main/en-us/ -# ext_workspaces = https://docs.typo3.org/c/typo3/cms-workspaces/main/en-us/ diff --git a/Documentation/genindex.rst b/Documentation/genindex.rst deleted file mode 100644 index 806ec56..0000000 --- a/Documentation/genindex.rst +++ /dev/null @@ -1,7 +0,0 @@ -.. include:: /Includes.rst.txt - -===== -Index -===== - -.. Sphinx will insert here the general index automatically. diff --git a/Documentation/guides.xml b/Documentation/guides.xml new file mode 100644 index 0000000..fe54aa9 --- /dev/null +++ b/Documentation/guides.xml @@ -0,0 +1,19 @@ + + + + + diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..77dab54 --- /dev/null +++ b/Makefile @@ -0,0 +1,16 @@ +.PHONY: help +help: ## Displays this list of targets with descriptions + @echo "The following commands are available:\n" + @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[32m%-30s\033[0m %s\n", $$1, $$2}' + +.PHONY: docs +docs: ## Generate projects documentation (from "Documentation" directory) + mkdir -p Documentation-GENERATED-temp + + docker run --rm --pull always -v "$(shell pwd)":/project -t ghcr.io/typo3-documentation/render-guides:latest --config=Documentation + +.PHONY: test-docs +test-docs: ## Test the documentation rendering + mkdir -p Documentation-GENERATED-temp + + docker run --rm --pull always -v "$(shell pwd)":/project -t ghcr.io/typo3-documentation/render-guides:latest --config=Documentation --no-progress --fail-on-log