diff --git a/Jenkinsfile b/Jenkinsfile index 3192102..aadadd1 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -40,8 +40,9 @@ pipeline { } // sanitize git dir path env.GIT_PATH = params.GIT_PATH - if(!env.GIT_PATH.endsWith("/")) { - env.GIT_PATH += "/" + if(env.GIT_PATH.endsWith("/")) { + env.GIT_PATH = env.GIT_PATH.substring( + 0, (env.GIT_PATH.length() - 1)) } if(env.GIT_PATH.startsWith("/")) { env.GIT_PATH = env.GIT_PATH.substring(1) @@ -89,14 +90,14 @@ pipeline { stage('Checkout template') { steps { // remove template folder and fresh checkout - sh "rm -rf ${env.GIT_PATH}${env.TEMPLATE_NAME}" + sh "rm -rf ${env.GIT_PATH}/${env.TEMPLATE_NAME}" checkout([ $class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [[ $class: 'RelativeTargetDirectory', - relativeTargetDir: "${env.GIT_PATH}${env.TEMPLATE_NAME}" + relativeTargetDir: "${env.GIT_PATH}/${env.TEMPLATE_NAME}" ]], submoduleCfg: [], userRemoteConfigs: [[ @@ -114,7 +115,7 @@ pipeline { dir(env.GIT_PATH) { sh"""#!/bin/bash make pdf -C ${env.TEMPLATE_NAME} SOURCEDIR=`pwd` - hunspell -d de_AT,de_AT_frami,en_US -p ignore.dict -l -t *.md > diplomarbeit.pdf.spellcheck.txt + make spellcheck -C ${env.TEMPLATE_NAME} SOURCEDIR=`pwd` """ } } @@ -141,7 +142,7 @@ pipeline { stage('Create Tarball-Archive') { steps { dir(env.GIT_PATH) { - sh "tar -czvf diplomarbeit.tar.gz diplomarbeit.pdf*" + sh "tar -czvf diplomarbeit.tar.gz diplomarbeit.pdf* spellcheck-results.txt" } } } @@ -151,7 +152,8 @@ pipeline { script { env.RECIPIENTS = "" // get mail addresses - metadata = readFile(file: "${env.GIT_PATH}metadata.yaml").split('\n').each { line -> + // needs script approval in jenkins + metadata = readFile(file: "${env.GIT_PATH}/metadata.yaml").split('\n').each { line -> if(line.contains("- build-notification:")) { // remove yaml comments if(line.contains('#')) { diff --git a/Makefile b/Makefile index 9b11556..845dbd3 100644 --- a/Makefile +++ b/Makefile @@ -49,7 +49,7 @@ build-stage: compile-pdf: # Bauen der Arbeit aus dem staging verzeichnis heraus @echo "Compiling the theses into the pdf: $(OUTPUTFILE)" - + # Builden mit pandoc. Als Basisverzeichnis springen wir ins staging. # Damit sollten alle relativen Links stimmen @cd staging && pandoc "$(STAGINGDIR)"/*.md "$(STAGINGDIR)/style/"*.md *.yaml \ @@ -64,7 +64,7 @@ compile-pdf: # Ausgabe der Warnungen @cat $(LOGFILE) - + # Build erfolgreich -> Resultate zurückkopieren @rsync -az $(OUTPUTFILE) $(SOURCEDIR)/ @rsync -az $(LOGFILE) $(SOURCEDIR)/ @@ -74,7 +74,7 @@ do-spellcheck: @echo "Performing a spellcheck on all Markdown files" # Überprüft die staging Dateien auf Rechtschreibfehler - @pandoc "$(STAGINGDIR)"/*.md -t plain | hunspell -d de_AT,de_AT_frami,en_US -p ignore.dict -l -t | sort | uniq > "$(SPELLERRORFILE)" + @pandoc "$(STAGINGDIR)"/*.md -t plain | hunspell -d de_AT,de_AT_frami,en_US -p "$(STAGINGDIR)"/ignore.dict -l -t | sort | uniq > "$(SPELLERRORFILE)" # Ausgabe der Rechtschreibfehler @cat "$(SPELLERRORFILE)" | sed 's/^/ /' @@ -95,7 +95,3 @@ pdf: build-stage compile-pdf remove-stage # Special Targets .PHONY: help pdf clean - - - - diff --git a/README.md b/README.md index 939b3d0..6c81b9d 100644 --- a/README.md +++ b/README.md @@ -345,9 +345,9 @@ $ tree ~/Diplomarbeit Es muss nicht einmal die Vorlage als GIT submodule im Repository eingecheckt sein, weil hier während des Build Prozesses die aktuelle verwendet wird. **Wichtig:** Sie bekommen eine `tar.gz` Datei via E-Mail zugeschickt. Dieses Archiv lässt sich mit gängigen Tools entpacken (z.B.: [7-zip](https://www.7-zip.org/)). Darin befinet sich: -- `diplomarbeit.pdf` Ihre fertige Diplomarbeit -- `diplomarbeit.pdf.log` Der Log Output von pandoc -- `diplomarbeit.pdf.spellcheck.txt` Die vermeintlich falsch geschriebenen Begriffe +- `diplomarbeit.pdf` Ihre fertige Diplomarbeit +- `diplomarbeit.pdf.log` Der Log Output von pandoc +- `spellcheck-results.txt` Die vermeintlich falsch geschriebenen Begriffe ### Übertragen des aktuellen Standes nach GIT @@ -450,14 +450,3 @@ Abschließend noch eine kurze Liste der wichtigsten Punkte, an denen erfahrungsg * Quellenangaben:Zitate richtig referenziert, Seiten- oder Kapitelangaben bei gedruckten Medien * Literaturverzeichnis: mehrfach zitierte Quellen nur einmal angeführt, Art der Publikation muss in jedem Fall klar sein, konsistente Einträge, Online-Quellen(URLs) sauber angeführt inkl. letztem Betrachtungszeitpunkt * Sonstiges: ungültige Querverweise (??), Anhang, Papiergröße der PDF-Datei (A4=8.27×11.69Zoll), Druckgröße und -qualität. - - - - - - - - - - -