Pour tout problème contactez-nous par mail : support@froggit.fr | La FAQ :grey_question: | Rejoignez-nous sur le Chat :speech_balloon:

Skip to content
Snippets Groups Projects

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

Pré-requis pour construire les exemples

  • Docker Engine 19.03.0+

  • Docker compose

Optionnel

  • GNU Make

Génération des slides

docker compose run build-slides
# Ou avec GNU Make
make 01-slides

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 de l’E-book

docker compose run build-epub
# Ou avec GNU Make
make 01-epub

Génération du docbook

docker compose run build-docbook
# Ou avec GNU Make
make 01-docbook

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

gitlab ci pages from github

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

Capture d’écran du menu "Settings" de Github. Section "Pages" est sélectionnée. Build and deployment : Source : Deploy from branch. Branch : <code>main</code>

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

Configuration de Github Pages depuis une Action

  • Dans le menu "Settings" de Github.

    • Section "Pages"

      • Build and deployment

        • Source : GitHub Actions

Capture d’écran du menu "Settings" de Github. Section "Pages" est sélectionnée. Build and deployment : Source : Github Actions.