Parcourir la source

Merge branch 'dev'

Sniperovitch il y a 8 ans
Parent
commit
53b6e8332b
3 fichiers modifiés avec 88 ajouts et 20 suppressions
  1. 18 0
      .travis.yml
  2. 3 2
      build.sh
  3. 67 18
      cocktail

+ 18 - 0
.travis.yml

@@ -0,0 +1,18 @@
+language: c
+before_install:
+  - wget https://github.com/jgm/pandoc/releases/download/1.19.2.1/pandoc-1.19.2.1-1-amd64.deb
+  - sudo dpkg -i *.deb
+  - sudo apt-get -qq update
+  - sudo apt-get install -y texlive-latex-base
+  - sudo apt-get install -y texlive-font-utils
+  - sudo apt-get install -y texlive-latex-recommended
+  - sudo apt-get install -y texlive-fonts-recommended
+  - sudo apt-get install -y texlive-latex-extra
+  - sudo apt-get install -y python-pip
+  - sudo pip install pandoc-latex-environment
+notifications:
+  irc: "chat.freenode.net#pressecitron"
+script:
+  - ./build.sh
+  - ./test_cocktail
+

+ 3 - 2
build.sh

@@ -1,4 +1,5 @@
 #!/bin/sh
-git clone https://github.com/hugoroy/exegetesDoc.git
-cp -v cocktail.conf.smp cocktail
+cd && git clone https://github.com/hugoroy/exegetesDoc.git
+cd -
+cp -v cocktail.conf.smp cocktail.conf
 

+ 67 - 18
cocktail

@@ -7,7 +7,10 @@ end_with_code() {
     rc=1
   fi
 
-  cleanup_working_folder
+  if test "$rc" -eq 0;
+  then
+    cleanup_working_folder
+  fi
   unlock_project
   verbose "[$FUNCNAME] exiting with RC=[$rc]"
   exit $rc
@@ -87,13 +90,13 @@ mirror_pad() {
   verbose "[$FUNCNAME] url=$url filename=$filename"
   RESPONSE=$(curl --silent --show-error $url --output $filename 2>&1)
   RC=$?
-  local errstr="[$FUNCNAME] url=$url filename$filename [RC:$RC] $RESPONSE"
-  if test "$RC" -gt 0;
+  local errstr="[$FUNCNAME] RC=[$RC] $RESPONSE"
+  if test "$RC" -eq 0;
   then
+    verbose "$errstr"
+  else
     die "$errstr"
   fi
-
-  verbose "$errstr"
 }
 
 pad2json() {
@@ -106,10 +109,17 @@ pad2json() {
   local input=$1
   local output=$2
   verbose "[$FUNCNAME] input=$input output=$output"
-
-  pandoc \
+  RESPONSE=$(pandoc \
     -f markdown "$input" \
-    -o "$output" -t json --self-contained
+    -o "$output" -t json --self-contained)
+  RC=$?
+  local errstr="[$FUNCNAME] RC=[$RC] $RESPONSE"
+  if test "$RC" -eq 0;
+  then
+    verbose "$errstr"
+  else
+    die "$errstr"
+  fi
 }
 
 pad2docx() {
@@ -129,14 +139,22 @@ pad2docx() {
     die "[$FUNCNAME] refdoc=$refdoc unavailable"
   fi
 
-  pandoc \
+  RESPONSE=$(pandoc \
     -f markdown "$input" \
     -o "$output" -t docx --self-contained --smart \
     --reference-docx="$refdoc" \
     --filter pandoc-citeproc \
     --filter $PANDOC_FILTER_BASE/docx.zsh \
     --filter $PANDOC_FILTER_BASE/nettoyage.zsh \
-    --filter $PANDOC_FILTER_BASE/nettoyage-etendu.zsh
+    --filter $PANDOC_FILTER_BASE/nettoyage-etendu.zsh)
+  RC=$?
+  local errstr="[$FUNCNAME] RC=[$RC] $RESPONSE"
+  if test "$RC" -eq 0;
+  then
+    verbose "$errstr"
+  else
+    die "$errstr"
+  fi
 }
 
 pad2html() {
@@ -150,13 +168,21 @@ pad2html() {
   local output=$2
   verbose "[$FUNCNAME] input=$input output=$output"
 
-  pandoc \
+  RESPONSE=$(pandoc \
     -f markdown "$input" \
     -o "$output" -t html --self-contained --smart \
     --filter pandoc-citeproc \
     --filter $PANDOC_FILTER_BASE/html.zsh \
     --filter $PANDOC_FILTER_BASE/nettoyage.zsh \
-    --filter $PANDOC_FILTER_BASE/nettoyage-etendu.zsh
+    --filter $PANDOC_FILTER_BASE/nettoyage-etendu.zsh)
+  RC=$?
+  local errstr="[$FUNCNAME] RC=[$RC] $RESPONSE"
+  if test "$RC" -eq 0;
+  then
+    verbose "$errstr"
+  else
+    die "$errstr"
+  fi
 }
 
 pad2markdown() {
@@ -170,14 +196,22 @@ pad2markdown() {
   local output=$2
   verbose "[$FUNCNAME] input=$input output=$output"
 
-  pandoc \
+  RESPONSE=$(pandoc \
     -f markdown "$input" \
     -o "$output" -t markdown --wrap=none --self-contained --smart \
     --reference-location=block --reference-links \
     --filter pandoc-citeproc \
     --filter $PANDOC_FILTER_BASE/markdown.zsh \
     --filter $PANDOC_FILTER_BASE/nettoyage.zsh \
-    --filter $PANDOC_FILTER_BASE/nettoyage-etendu.zsh
+    --filter $PANDOC_FILTER_BASE/nettoyage-etendu.zsh)
+  RC=$?
+  local errstr="[$FUNCNAME] RC=[$RC] $RESPONSE"
+  if test "$RC" -eq 0;
+  then
+    verbose "$errstr"
+  else
+    die "$errstr"
+  fi
 }
 
 pad2tex() {
@@ -191,7 +225,7 @@ pad2tex() {
   local output=$2
   verbose "[$FUNCNAME] input=$input output=$output"
 
-  pandoc \
+  RESPONSE=$(pandoc \
     -f markdown "$input" \
     -o "$output" -t latex --self-contained \
     --template ../../exegetesDoc/pandocincludes/exegetes.latex \
@@ -199,7 +233,15 @@ pad2tex() {
     --filter $PANDOC_FILTER_BASE/latex.zsh \
     --filter $PANDOC_FILTER_BASE/nettoyage.zsh \
     --filter pandoc-latex-environment \
-    --filter $PANDOC_FILTER_BASE/paranumero.bash
+    --filter $PANDOC_FILTER_BASE/paranumero.bash)
+  RC=$?
+  local errstr="[$FUNCNAME] RC=[$RC] $RESPONSE"
+  if test "$RC" -eq 0;
+  then
+    verbose "$errstr"
+  else
+    die "$errstr"
+  fi
 }
 
 tex2pdf() {
@@ -213,8 +255,15 @@ tex2pdf() {
   local output=$2
   verbose "[$FUNCNAME] input=$input output=$output"
 
-  pdflatex -interaction=nonstopmode -output-directory="$WORKING_FOLDER" "$input" >/dev/null
-  pdflatex -interaction=nonstopmode -output-directory="$WORKING_FOLDER" "$input" >/dev/null
+  # pdflatex sort avec un code 1 mais genere le PDF on peut pas die sur RC>0 ici
+  pdflatex -interaction=nonstopmode -output-directory="$WORKING_FOLDER" "$input" > "$WORKING_FOLDER/pdflatex_passe1.log" 2>&1
+  verbose "[$FUNCNAME] Passe 1 RC=[$?]"
+  pdflatex -interaction=nonstopmode -output-directory="$WORKING_FOLDER" "$input" > "$WORKING_FOLDER/pdflatex_passe2.log" 2>&1
+  verbose "[$FUNCNAME] Passe 2 RC=[$?]"
+  if test ! -e "$output";
+  then
+    die "[$FUNCNAME] Génération du PDF '$putput' en erreur"
+  fi
 }
 
 lock_project() {