32 lines
1.1 KiB
Bash
32 lines
1.1 KiB
Bash
#!/bin/bash
|
|||
|
|
|
||
|
|
# Name des lokalen Docker-Images
|
||
|
|
IMAGE_NAME="lore-builder"
|
||
|
|
|
||
|
|
# 1. Prüfen, ob das Image existiert, ansonsten on-the-fly bauen
|
||
|
|
if [[ "$(docker images -q $IMAGE_NAME 2> /dev/null)" == "" ]]; then
|
||
|
|
echo "Baue flüchtiges Docker-Image '$IMAGE_NAME' (Alpine, Asciidoctor, Pandoc)..."
|
||
|
|
docker build -t $IMAGE_NAME - <<EOF
|
||
|
|
FROM alpine:latest
|
||
|
|
RUN apk add --no-cache asciidoctor pandoc bash
|
||
|
|
WORKDIR /workspace
|
||
|
|
EOF
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo "Starte Build-Container und mounte Arbeitsverzeichnis..."
|
||
|
|
|
||
|
|
# 2. Container starten, Volume einhängen und Befehle ausführen
|
||
|
|
# --rm sorgt dafür, dass der Container nach getaner Arbeit spurlos verschwindet
|
||
|
|
docker run --rm -v "$(pwd):/workspace" $IMAGE_NAME bash -c "
|
||
|
|
echo 'Konvertiere AsciiDoc zu DocBook-XML...' && \
|
||
|
|
asciidoctor -b docbook master.adoc -o temp_master.xml && \
|
||
|
|
|
||
|
|
echo 'Konvertiere DocBook-XML zu Markdown...' && \
|
||
|
|
pandoc -f docbook -t markdown_strict temp_master.xml -o final_worldbuilding.md && \
|
||
|
|
|
||
|
|
echo 'Räume temporäre Dateien auf...' && \
|
||
|
|
rm temp_master.xml
|
||
|
|
"
|
||
|
|
|
||
|
|
echo "Erfolgreich! final_worldbuilding.md liegt bereit."
|