diff --git a/.github/workflows/test-documentation.yml b/.github/workflows/test-documentation.yml new file mode 100644 index 00000000..3076117d --- /dev/null +++ b/.github/workflows/test-documentation.yml @@ -0,0 +1,17 @@ +name: Test documentation + +on: [ push, pull_request ] + +jobs: + tests: + name: Render 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/Index.rst b/Documentation/Index.rst index 90441eb9..ded0e177 100644 --- a/Documentation/Index.rst +++ b/Documentation/Index.rst @@ -152,4 +152,3 @@ mode. :hidden: Sitemap - genindex diff --git a/Documentation/Major/Index.rst b/Documentation/Major/Index.rst index a80cc77b..40259624 100644 --- a/Documentation/Major/Index.rst +++ b/Documentation/Major/Index.rst @@ -48,6 +48,6 @@ Major upgrade :hidden: :titlesonly: - PreupgradeTasks/Index - UpgradeCore.rst - PostupgradeTasks/Index + PreupgradeTasks/Index + UpgradeCore + PostupgradeTasks/Index diff --git a/Documentation/Major/PreupgradeTasks/Backup.rst.txt b/Documentation/Major/PreupgradeTasks/Backup.rst.txt index b1c79d05..6738365c 100644 --- a/Documentation/Major/PreupgradeTasks/Backup.rst.txt +++ b/Documentation/Major/PreupgradeTasks/Backup.rst.txt @@ -1,7 +1,5 @@ .. include:: /Includes.rst.txt -.. _backup: - Make a backup first! If things go wrong, you can at least go back to the old version. You need a backup of diff --git a/Documentation/Major/PreupgradeTasks/ConvertGlobalExtensions.rst.txt b/Documentation/Major/PreupgradeTasks/ConvertGlobalExtensions.rst.txt index 4b7b2911..727c5410 100644 --- a/Documentation/Major/PreupgradeTasks/ConvertGlobalExtensions.rst.txt +++ b/Documentation/Major/PreupgradeTasks/ConvertGlobalExtensions.rst.txt @@ -1,8 +1,5 @@ .. include:: /Includes.rst.txt - -.. _convert_global_extensions: - If you use global extensions, convert them to local ones. Global extensions used to be saved in folders inside @@ -15,7 +12,7 @@ To convert a global extension to a local one, do the following: * Go to the :guilabel:`Admin Tools > Extensions` backend module. * Uninstall the global extension. * On a filesystem-level of the installation (for example, via SSH shell - or S/FTP), delete the directory including files and subdirectories of the + or S/FTP), delete the directory including files and subdirectories of the corresponding extension directory in :file:`typo3/ext/`. * Reinstall the extension from the TYPO3 Extension Repository, which will put it into :file:`typo3conf/ext/`. diff --git a/Documentation/Major/PreupgradeTasks/Index.rst b/Documentation/Major/PreupgradeTasks/Index.rst index a035024c..a4a42215 100644 --- a/Documentation/Major/PreupgradeTasks/Index.rst +++ b/Documentation/Major/PreupgradeTasks/Index.rst @@ -29,7 +29,7 @@ Check that all system requirements for upgrading are met: * See :ref:`t3start:system-requirements` -.. _make_a_backup: +.. _preupgradetasks_make_a_backup: Make A Backup ============= diff --git a/Documentation/MigrateContent/Index.rst b/Documentation/MigrateContent/Index.rst index 8e54af5b..7a8ac630 100644 --- a/Documentation/MigrateContent/Index.rst +++ b/Documentation/MigrateContent/Index.rst @@ -36,7 +36,7 @@ Via CLI command ---------------- Exporting a TYPO3 page tree without php time limit is possible via -:ref:`Symfony Console Commands (cli) `. +:ref:`Symfony Console Commands (cli) `. .. code-block:: bash :caption: Composer based installation @@ -127,7 +127,7 @@ Via CLI command ---------------- Importing a TYPO3 page tree without php time limit is possible via -:ref:`Symfony Console Commands (cli) `. +:ref:`Symfony Console Commands (cli) `. .. code-block:: bash :caption: Composer based installation diff --git a/Documentation/Settings.cfg b/Documentation/Settings.cfg deleted file mode 100644 index 5009f6c3..00000000 --- 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 = TYPO3 Upgrade Guide -version = 11.5 -release = 11.5 -copyright = since 2012 by the TYPO3 contributors - -[html_theme_options] - -# "Edit on GitHub" button -github_repository = TYPO3-Documentation/TYPO3CMS-Guide-Installation -github_branch = 11.5 - -# Footer links -project_home = https://docs.typo3.org/m/typo3/guide-installation/11.5/en-us/ -project_contact = https://typo3.slack.com/archives/C028JEPJL -project_repository = https://github.com/TYPO3-Documentation/TYPO3CMS-Guide-Installation -project_issues = https://github.com/TYPO3-Documentation/TYPO3CMS-Guide-Installation/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/11.5/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/11.5/en-us/ -# t3tca = https://docs.typo3.org/m/typo3/reference-tca/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/11.5/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_lowlevel = https://docs.typo3.org/c/typo3/cms-lowlevel/11.5/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 806ec56a..00000000 --- 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 00000000..43b85015 --- /dev/null +++ b/Documentation/guides.xml @@ -0,0 +1,21 @@ + + + + + + diff --git a/Documentation/screenshots.json b/Documentation/screenshots.json deleted file mode 100644 index 2322f760..00000000 --- a/Documentation/screenshots.json +++ /dev/null @@ -1,335 +0,0 @@ -{ - "suites": { - "Core": { - "screenshots": { - "AdminTool": [ - { - "action": "setScreenshotsImagePath", - "path": "Images/AutomaticScreenshots/AdminTools" - }, - { - "action": "setScreenshotsRstPath", - "path": "Images/AutomaticScreenshots/AdminTools" - }, - { - "action": "resizeWindow", - "width": 1232, - "height": 768 - }, - {"action": "switchToMainFrame"}, - {"action": "waitForElement", "element": "button#web"}, - {"action": "click", "link": "button#web"}, - {"action": "waitForElement", "element": "button#site"}, - {"action": "click", "link": "button#site"}, - {"action": "waitForElement", "element": "button#file"}, - {"action": "click", "link": "button#file"}, - {"action": "waitForElement", "element": "button#system"}, - {"action": "click", "link": "button#system"}, - {"action": "see", "text": "Maintenance"}, - {"action": "click", "link": "Maintenance"}, - {"action": "switchToContentFrame"}, - {"action": "fillField", "field": "input#confirmationPassword", "value": "password"}, - {"action": "click", "link": "Confirm"}, - {"comment": "********************************************************"}, - {"comment": "Maintenance Section of Admin Tool"}, - {"comment": "********************************************************"}, - {"action": "waitForText", "text": "Maintenance", "timeout": 5}, - { - "action": "resizeWindow", - "width": 1024, - "height": 512 - }, - {"action": "drawArrow", "selector": "button[data-require='TYPO3/CMS/Install/Module/Maintenance/Cache']", "position": "right-middle"}, - { - "action": "makeScreenshotOfElement", - "fileName": "ClearAllCache", - "altText": "Flush Caches", - "captionText": "The option \"Flush\" in the Admin Tool." - }, - {"action": "clearDrawings"}, - { - "action": "click", - "link": "Scan temporary files" - }, - { - "action": "waitForModalDialogInMainFrame" - }, - { - "action": "makeScreenshotOfElement", - "fileName": "RemoveTemporaryAssets", - "altText": "Remove temporary assets", - "captionText": "The option \"Remove temporary assets\" in the Install Tool." - }, - { - "action": "click", - "link": "button.t3js-modal-close" - }, - {"action": "switchToContentFrame"}, - { - "action": "wait", - "timeout": "1" - }, - {"action": "drawArrow", "selector": "button[data-require='TYPO3/CMS/Install/Module/Maintenance/DatabaseAnalyzer']", "position": "right-middle"}, - { - "action": "makeScreenshotOfElement", - "fileName": "DatabaseAnalyzer", - "altText": "The Database Analyzer before analyzing the database" - }, - {"action": "clearDrawings"}, - { - "action": "click", - "link": "Analyze database" - }, - { - "action": "waitForModalDialogInMainFrame" - }, - { - "action": "makeScreenshotOfElement", - "fileName": "DatabaseAnalyzerDatabaseAnalyzed", - "altText": "Database analyzer", - "captionText": "The Database Analyzer with no updates to do" - }, - { - "action": "click", - "link": "button.t3js-modal-close" - }, - {"action": "switchToContentFrame"}, - - { - "action": "wait", - "timeout": "1" - }, - {"action": "scrollModuleBodyTo", "toSelector": "button[data-require='TYPO3/CMS/Install/Module/Maintenance/LanguagePacks']"}, - {"action": "drawArrow", "selector": "button[data-require='TYPO3/CMS/Install/Module/Maintenance/LanguagePacks']", "position": "right-middle"}, - { - "action": "makeScreenshotOfElement", - "fileName": "InstallLanguagePacks", - "altText": "Manage language packs", - "captionText": "The option \"Manage language packs\" in the Install Tool" - }, - {"action": "clearDrawings"}, - {"action": "scrollModuleBodyTo", "toSelector": "button[data-require='TYPO3/CMS/Install/Module/Maintenance/ResetBackendUserUc']"}, - {"action": "drawArrow", "selector": "button[data-require='TYPO3/CMS/Install/Module/Maintenance/ResetBackendUserUc']", "position": "right-middle"}, - { - "action": "makeScreenshotOfElement", - "fileName": "ResetUserPreferences", - "altText": "Reset User Preferences", - "captionText": "The option \"Reset Backend User Preferences\" in the Install Tool" - }, - {"action": "clearDrawings"}, - { - "action": "resizeWindow", - "width": 1232, - "height": 768 - }, - - {"comment": "********************************************************"}, - {"comment": "Upgrade Section of Admin Tool"}, - {"comment": "********************************************************"}, - { - "action": "setScreenshotsImagePath", - "path": "Images/AutomaticScreenshots/Upgrade" - }, - { - "action": "setScreenshotsRstPath", - "path": "Images/AutomaticScreenshots/Upgrade" - }, - {"action": "switchToMainFrame"}, - {"action": "see", "text": "Upgrade"}, - {"action": "click", "link": "Upgrade"}, - { - "action": "makeScreenshotOfFullPage", - "fileName": "AdminToolsUpgradeOverview", - "captionText": "The \"Upgrade\" section of the Admin Tool." - }, - - { - "action": "resizeWindow", - "width": 1024, - "height": 512 - }, - {"action": "switchToContentFrame"}, - { - "action": "see", - "text": "View Upgrade Documentation" - }, - { - "action": "click", - "link": "View Upgrade Documentation" - }, - { - "action": "waitForModalDialogInMainFrame" - }, - { - "action": "click", - "link": "a[aria-controls='#version-0']" - }, - { - "action": "wait", - "timeout": "1" - }, - { - "action": "makeScreenshotOfElement", - "fileName": "UpgradeAnalysis", - "altText": "Upgrade Analysis", - "captionText": "The \"Upgrade Analysis\" in the Install Tool" - }, - { - "action": "click", - "link": "button.t3js-modal-close" - }, - {"action": "switchToContentFrame"}, - { - "action": "wait", - "timeout": "1" - }, - { - "action": "see", - "text": "Run Upgrade Wizard" - }, - { - "action": "click", - "link": "Run Upgrade Wizard" - }, - { - "action": "waitForModalDialogInMainFrame" - }, - { - "action": "makeScreenshotOfElement", - "fileName": "UpgradeWizard", - "altText": "Upgrade wizard", - "captionText": "The \"Upgrade Wizard\" in the Install Tool." - }, - { - "action": "click", - "link": "button.t3js-modal-close" - }, - {"action": "switchToMainFrame"} - ] - } - }, - "Introduction": { - "screenshots": { - "importexportcontext": [ - { - "action": "setScreenshotsImagePath", - "path": "Images/AutomaticScreenshots/ImportExport" - }, - { - "action": "setScreenshotsRstPath", - "path": "Images/AutomaticScreenshots/ImportExport" - }, - { - "action": "amOnPage", - "page": "/typo3/" - }, - {"action": "resizeWindow", "width": 1024,"height": 768}, - {"action": "see", "text": "List"}, - {"action": "click", "link": "List"}, - {"action": "openPageTreePath", "path": ["Congratulations", "Frontend User"]}, - {"action": "clickWithRightButton", "cssOrXPath": "//*[@id='typo3-pagetree-treeContainer']//*[text()='Frontend User']/.."}, - {"action": "waitForElement", "element": "#contentMenu0", "timeout": 1}, - {"action": "drawBox", "selector": "//*[@id='contentMenu0']//*[contains(text(), 'More options...')]"}, - { - "action": "makeScreenshotOfWindow", - "fileName": "ContextMenuMore", - "altText": "Select \"More options...\" from the context menu of the page tree", - "captionText": "Select \"More options...\" from the context menu of the page tree" - }, - {"action": "clearDrawings"}, - {"action": "click", "link": "//*[@id='contentMenu0']//*[contains(text(), 'More options...')]"}, - {"action": "waitForElement", "element": "#contentMenu1", "timeout": 1}, - { - "action": "makeScreenshotOfWindow", - "fileName": "ContextMenuExport", - "altText": "Select Then select \"Export\"", - "captionText": "Select Then select \"Export\"" - }, - {"action": "click", "link": "//*[@id='contentMenu1']//*[contains(text(), 'Export')]"} - ], - "importexport": [ - { - "action": "setScreenshotsImagePath", - "path": "Images/AutomaticScreenshots/ImportExport" - }, - { - "action": "setScreenshotsRstPath", - "path": "Images/AutomaticScreenshots/ImportExport" - }, - {"action": "resizeWindow", "width": 1024,"height": 768}, - { - "action": "amOnPage", - "page": "/typo3/record/importexport/export?token=x&id=0&tx_impexp[pagetree][id]=7&tx_impexp[pagetree][levels]=0&tx_impexp[pagetree][tables][]=_ALL" - }, - { - "action": "makeScreenshotOfWindow", - "fileName": "ExportDialog", - "altText": "Select the tables to be exported", - "captionText": "Select the tables to be exported" - }, - {"action": "selectOption", "select": "select[name='tx_impexp[pagetree][levels]']", "option": "999"}, - {"action": "click", "link": "Update"}, - { - "action": "makeScreenshotOfWindow", - "fileName": "ExportDialogInfiniteLevels", - "altText": "Select the page levels to be exported", - "captionText": "Select the page levels to be exported" - }, - { - "action": "amOnPage", - "page": "/typo3/record/importexport/export?token=x&id=0&tx_impexp[pagetree][id]=1&tx_impexp[pagetree][levels]=0&tx_impexp[pagetree][tables][]=_ALL" - }, - {"action": "scrollModuleBodyToTop"}, - { - "action": "makeScreenshotOfElement", - "selector": ".t3js-impexp-preview", - "fileName": "CheckExport", - "altText": "Check the exported data", - "captionText": "Check the exported data" - }, - {"action": "scrollModuleBodyToTop"}, - { - "action": "see", - "text": "File & Preset" - }, - { - "action": "click", - "link": "File & Preset" - }, - {"action": "fillField", "field": "input#impexp-filename", "value": "MyExport"}, - {"action": "drawBox", "selector": "input[name='tx_impexp[download_export]']"}, - {"action": "resizeWindow", "width": 1024,"height": 1024}, - {"action": "scrollModuleBodyToTop"}, - { - "action": "makeScreenshotOfElement", - "fileName": "DownloadExport", - "selector": ".t3js-module-body", - "altText": "Download the export data", - "captionText": "Download the export data" - } - ], - "import": [ - { - "action": "amOnPage", - "page": "/typo3/record/importexport/import?token=x" - }, - { - "action": "see", - "text": "Upload" - }, - { - "action": "click", - "link": "Upload" - }, - { - "action": "makeScreenshotOfElement", - "fileName": "UploadImport", - "selector": ".module-body", - "altText": "Upload the export data", - "captionText": "Upload the export data" - } - ] - } - } - } -} diff --git a/Makefile b/Makefile new file mode 100644 index 00000000..35ecee14 --- /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 docs (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