Local Antora Installer
Beschreibung
Der Antora Installer ist ein Teil des TechDivision Antora “build” und und bietet die Möglichkeit, nach Installation aller Requirenments, eine komplette Antora Entwickler und Test Instance local bereitzustellen.
Der Installer ist so aufgebaut, dass für jede vorhandene Dokumentation je ein Playbook (MyPlaybook.yml
)
im Build ROOT vorliegt (bzw. hinzugefügt werden kann) und dazu
entsprechend abgerufen werden kann.
Es wird beim Antora Installer alles automatisch angelegt, von den localen valet.sh
Links bis hin zu den benötigten development Ordnern.
Struktur
- build Antora Struktur
-
-
Der
build
Ordner beinhaltet alle relevanten Files für Antora inklusive des lokalen Antora Installer
📒 build (1) 📂 bin (2) 📂assets (3) 📄 gen-pdf.php 📂 modules (4) 📄 ui-bundle.zip 📂 pacemaker (4) 📄 ui-bundle.zip 📄 _functions.sh 📄 _steps.sh 📄 _dump.sh 📄 _params.sh 📄 install.sh (5) 📂 pdf-theme (6) 📄 default-theme.yml 📂 fonts 📂 images 📄 techdivision-logo.png 📄 techdivision-theme.yml 📂 src (7) 📄 prepare.php 📄 .gitignore 📄 .gitlab-ci.yml (8) 📄 composer.json 📄 composer.lock 📄 met-doc-playbook-local.yml.example (9) 📄 met-doc-playbook-pacemaker-local.yml.example (10) 📄 met-doc-playbook-pacemaker-test.yml (11) 📄 met-doc-playbook-prod.yml (12) 📄 met-doc-playbook-test.yml (13) 📄 package-lock.json 📄 package.json 📄 README.adoc 📄 TODO.md
1 Der build
Ordner beinhaltet alle relevanten Dateien, um sowohl eine lokale, als auch eine remote Installation (Gitlab/Pipeline) zu ermöglichen.2 Der bin
Ordner beinhaltet einebin/install.sh
Datei. Derbin/install.sh
wird initial aud dembuild
heraus als CLI Command aufgerufen um dann automatisch die lokaale Antora Instance zu erstellen.3 Im assets
Ordner sind die bei der Installation benötigten Files abgelegt und werden dann entsprechend plaziert.4 Antora Dokumentation Theme Bundles. Die Theme Bundles beinhalten alle relevanten CSS|JS|HTML-Templates, die zur HTML Generierung der Dokumentation notwendig sind. 5 Initial wird via bin/install.sh CLI Command die Installation der lokalen Entwicklungsumgebung eingeleitet. 6 Der pdf-theme
Ordner beinhaltet alle notwendigen Dateien zur Genererierung der Dokumentationen. Diese werden via Gitlab Pipeline gestartet.7 Der src
Ordner beinhaltet das PHP Scriptprepare.php
zur Genererierung aller benötigten PDFs. Dieses Script wird als eigener Job via Gitlab Pipeline gestartet.8 Gitlab CI File zum abarbeiten der einzelnen Stages bei den Pipelines. 9 Dieses Playbook wird bei der Installation als Template zur Erstellung des eigentlichen Playbooks zur lokalen Benutzung der Module verwendet. 10 Dieses Playbook wird bei der Installation als Template zur Erstellung des eigentlichen Playbooks zur lokalen Benutzung der Pacemaker Components verwendet. 11 Playbook der neuen Pacemaker Dokumentation. 12 Playbook der remote Modul Test Test Instance. 13 Playbook der aktuellen remote Modul Instance. -
- Build Installer Struktur
-
-
Der Build Installer beinhaltet neben dem
build
Ordner auch die zusätzlich vom Installer erstellte Ordnerstruktur um eine lokale Entwicklung zu ermöglichen.
📒 <path/to/my/workspace/build-folder> (1) 📒 build (2) 📄 gen-pdf.php (3) 📂 pdf (4) 📂 public-modules (5) 📂 public-pacemaker (6) 📂 repos-modules (7) 📂 adoc-modul-userguide 📂 home-doc 📂 test-modul 📂 repos-pacemaker (8) 📂 component-process-pipeline 📂 main-doc 📂 repos-pdf (9) 📂 ui (10) 📂 theme-docs 📂 theme 📂 build 📄 ui-bundle.zip (11) 📂 theme-pacemaker 📂 theme 📂 build 📄 ui-bundle.zip (11)
1 Main Dokumentation Development Ordner. 2 Antora build
incl. der Playbooks.3 [WIP] Falls ein PDF benötigt wird, bietet gen-pdf.php
die Möglichkeit, für ein Modul/Components local eine PDF zu generieren.4 Im Ordner PDF wird die generierte PDF abgespeichert. 5 Im Ordner public-modules
werden die generierten Modul HTML Dokumentationen abgelegt.6 Im Ordner public-pacemaker
werden die generierten Pacemaker Components HTML Dokumentationen abgelegt.7 Im Ordner repos-modules
werden die Modul Repositories abgelegt.8 Im Ordner repos-pacemaker
werden die Pacemaker Components Repositories abgelegt.9 Der Ordner repos-pdf
wird bei der PDF Generierung benötigt.10 Im ui
Ordner befinden sich die Dokumentation Themes für die Module und Pacemaker Components. Die Theme Location wird imbuild/<playbook>.yml
für die jeweilige Konfiguration angegeben.11 Das Theme Bundle beinhaltet alle relevanten CSS|JS|HTML-Templates, die zur HTML Generierung der Dokumentation notwendig sind. -
Commands
Installer
Command | Option | Beschreibung |
---|---|---|
bin/install.sh |
-option |
Initiale Installationsdatei <my/webspace/antora/folder/build/bin/install.sh> |
bin/install.sh |
-h|--help |
Hilfe und Beschreibung zu allen existierenden Command Optionen |
bin/install.sh |
-i|--install-antora-build |
Installieren von Antora |
bin/install.sh |
-cleanup|--cleanup-installation |
Setzt den Build auf den Urzustand zurück (Es werden alle erstellten Dateien/Ordner entfernt) |
bin/install.sh |
-params|--install-params |
Auflistung aller Installationsparameter |
bin/install.sh |
-steps|--install-steps |
Auflistung aller Installation Steps |
bin/install.sh |
-open|--open-docs |
Öffnen der erstellten Dokumentationen im Browser |
Antora
Command | Option | Beschreibung |
---|---|---|
antora <localPlaybookFileName.yml> |
--stacktrace --clean |
Command zum starten des Antora Setups |
antora <localPlaybookFileName.yml> |
--stacktrace |
Tracken von Fehlermeldungen beim parsen der adoc files inkl. aller empfohlenen Options |
antora <localPlaybookFileName.yml> |
--clean |
Antora Cache leeren |
Installation Steps
Installieren des build
Repositories
-
Öffnen des Bashtools ihrer Wahl (Terminal|ITerm2| …)
cd /Users/myUserName/myWebspaceFolder
mkdir myAntoraWorkFolder
cd myAntoraWorkFolder
git clone https://gitlab.met.tdintern.de/met/devdocs/antora/build.git
build
Repositories, nun in den build
Ordner navigieren , damit wir den Installer starten können.cd build
Run Antora Installer
bin/install.sh -i (1)
1 | mit -i wird der Installer gestartet.
|
Um zu ermöglichen, die local Hosts zu erstellen, muss während des Installationsprozesses mit der Eingabe ihres
lokalen Passwortes |
Initial wird beim Installer auch das Antora Playbook 1x gestartet und durchlaufen. Somit sind nun alle generierten HTML Files vorhanden und die Dokumentationen sind nun am Browser ihrer Wahl abrufbar. |
bin/install.sh -open
Aufbau des lokalen Module Playbooks (Beispiel)
# ----------------------------------------------------------
# output folder, and caching settings
# ----------------------------------------------------------
output:
clean: true (1)
dir: ../public-modules (2)
runtime:
cache_dir: ../.cache (3)
fetch: true
# ----------------------------------------------------------
# site definition
# ----------------------------------------------------------
site:
title: "" (4)
url: https://td-docs.test (5)
start_page: modules::index.adoc (6)
robots: disallow (7)
keys:
google_analytics: (8)
# ---------------------------------------------------------
# recources of moduls
# ----------------------------------------------------------
content:
sources:
# main local antora start module
- url: ../repos-modules/home-doc (9)
branches: HEAD (10)
- url: ../repos-modules/test-modul (9)
branches: HEAD (10)
- url: ../repos-modules/adoc-modul-userguide (9)
branches: HEAD (10)
# ----------------------------------------------------------
# theme: including local ui bundling process
# ----------------------------------------------------------
ui:
bundle:
url: ../ui/theme-docs/theme/build/ui-bundle.zip (11)
snapshot: true
# ----------------------------------------------------------
# general global attributes
# ----------------------------------------------------------
asciidoc:
attributes:
# adoc page attributes: global (12)
idprefix: ""
idseparator: "-"
experimental: ""
page-pagination: true
imagesdir: ./images
# docsearch for pacemaker (13)
td-pacemaker-docsearch: true
# custom TD attributes: global, for future custom page attributes add the prefix page- to new attributes (14)
td-cookie-consent: true
1 | Sowohl beim Antora run command, als auch hier kann eingestellt werden, dass bei jeder Ausführung der Antora Cache geleert wird. |
2 | Lokaler Speicherort der generierten HTML Dateien. Antora kopiert beim run command alle erstellten HTML Dateien in diesen angegebenen Speicherort. |
3 | Lokaler Speicherort der temporären Cache Dateien. |
4 | Titel der Antora Dokumentation, bleibt leer. |
5 | Die lokale Url der Dokumentation (Die Url wird bei der Installation via valet.sh erstellt). |
6 | Falls notwendig, kann hier die finale Startseite der Dokumentation angegeben werden. |
7 | Tracking Einstellung der robots.txt . |
8 | Google Analytics ID-Nummer. |
9 | Angabe des benötigten Repositories eines Dokumentation Moduls, oder aber der lokale pfad, indem sich das Repo befindet. |
10 | Unter Angabe des Branches kann gesteuert werden welche Version… verwendet wird. Lokal bitte immer [HEAD] angeben, ausgenommen,
beim lokalen Antora Start Modul. |
11 | Dokumentation Theme Location. |
12 | Global Site wide gesetzte Antora Attribute. |
13 | Eigendefinierte Antora Site Attribute zum steuern der Module DocSearch. |
14 | Eigendefinierte Antora Site Attribute zum steuern des Cookie Consents. |