template-asciidoctor-dockerized
Génération de slides, pdf, ebook, docx à l’aide de Asciidoctor, RevealJs et Docker Compose.
Ce dépôt a été généré à partir du template : github.com/baldir-fr/template-asciidoctor-dockerized
Écrire du contenu
Modifier les fichiers présents dans 01-slides
.
Voir la section Ressources Asciidoctor complémentaires pour démarrer avec Asciidoctor et RevealJs.
Génération du contenu
Génération du Pdf
docker compose run --rm build-slides; rm -rf docs/assets;cp -r 01-slides/assets docs/
# Ou avec GNU Make
make 01-pdf
Génération docx
Prérequis : avoir pandoc installé (je n’ai pas encore réussi à le faire fonctionner avec docker)
Après avoir généré le docbook
pandoc --from docbook \
--to docx \
--toc \
--highlight-style tango \
-o docs/output.docx \
--resource-path=docs \
docs/output.docbook.xml
Déploiement
Gitlab
Si ce dépôt est sur Gitlab.
Le pipeline .gitlab-ci.yml
est préconfigurée pour
-
Copier les assets
-
Générer les slides au format HTML
-
Générer le PDF
-
Générer l’e-book au format epub
-
Générer le schéma docbook
-
Générer le docx (à partir du schéma docbook)
-
Publier l’ensemble du contenu sur la gitlab page correspondant au projet
Gitlab CI + Gitlab Pages depuis un dépôt Git externe
Il est possible de créer un projet Gitlab uniquement pour exécuter la CI et le déploiement sur des Gitlab pages.
Dans ce mode, Gitlab (premium) va créer un projet uniquement pour exécuter le pipeline déclaré dans .gitlab-ci.yml
.
Pour que le déclenchement automatique lors de changements
Exemple de contenu déployé sur une Gitlab Page : gitlab.com/marc-bouvier/template-asciidoctor-dockerized-gitlab-pages/-/pipelines
Github Pages "classique"
Dans ce mode de déploiement, le contenu devra être généré au préalable.
C’est-à-dire que le contenu du dossier docs
est généré sur le dépôt local du développeur, puis commit et push.
Cette configuration génère un site jekyll à partir d’une github action préconfigurée.
-
Dans le menu "Settings" de Github.
-
Section "Pages"
-
Build and deployment
-
Source : Deploy from branch
-
Branch :
main
,/docs
-
-
-
GitHub Pages via GitHub Actions
Dans ce mode de déploiement, une Github Action est définie dans .github/workflows/generate-docs-and-publish-with-gitlab-pages.yml
.
Elle est préconfigurée pour
-
copier les assets
-
Générer les slides au format HTML
-
Générer le PDF
-
Générer l’e-book au format epub
-
Générer le schéma docbook
-
Générer le docx (à partir du schéma docbook)
-
Publier l’ensemble du contenu sur la gitlab page correspondant au projet