Add .collect_logs and use it on CI bots, fixes #786 (#789)
authorEbrahim Byagowi <ebrahim@gnu.org>
Wed, 14 Feb 2018 21:13:46 +0000 (00:43 +0330)
committerGitHub <noreply@github.com>
Wed, 14 Feb 2018 21:13:46 +0000 (00:43 +0330)
.circleci/config.yml
.collect_logs [new file with mode: 0755]
.travis.yml
appveyor.yml

index c90ef4c4c0335615efdad17cc59f5f3b84a5595b..4788f0b0be2953d65516357ec8d96e6859191f00 100644 (file)
@@ -9,7 +9,7 @@ jobs:
       - checkout
       - run: apt update && apt install -y ninja-build binutils libtool autoconf automake make cmake gcc g++ pkg-config ragel gtk-doc-tools libfreetype6-dev libglib2.0-dev libcairo2-dev libicu-dev libgraphite2-dev python python-pip
       - run: pip install fonttools
-      - run: ./autogen.sh && make distcheck && rm -rf harfbuzz-*
+      - run: ./autogen.sh && (make distcheck || (cd harfbuzz-* && ../.collect_logs && false)) && rm -rf harfbuzz-*
       - run: make distdir && cd harfbuzz-* && cmake -DHB_CHECK=ON -Bbuild -H. -GNinja && ninja -Cbuild && CTEST_OUTPUT_ON_FAILURE=1 ninja -Cbuild test && ninja -Cbuild install
 
   alpine:
@@ -19,7 +19,7 @@ jobs:
       - checkout
       - run: apk update && apk add ragel make pkgconfig libtool autoconf automake gettext gcc g++ glib-dev freetype-dev cairo-dev
       - run: ./autogen.sh
-      - run: make && (make check || (cat `find -name '*.log'` && false))
+      - run: make && (make check || (./.collect_logs && false))
 
   archlinux:
     docker:
@@ -28,7 +28,7 @@ jobs:
       - checkout
       - run: pacman --noconfirm -Syu freetype2 cairo icu gettext gobject-introspection gcc gcc-libs glib2 graphite pkg-config ragel python
       - run: ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2
-      - run: make && (make check || (cat `find -name '*.log'` && false))
+      - run: make && (make check || (./.collect_logs && false))
 
   fedora-outoftreebuild:
     docker:
@@ -37,7 +37,7 @@ jobs:
       - checkout
       - run: dnf install -y pkg-config ragel gcc gcc-c++ automake autoconf libtool make which glib2-devel freetype-devel cairo-devel libicu-devel gobject-introspection-devel graphite2-devel redhat-rpm-config python || true
       - run: NOCONFIGURE=1 ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2
-      - run: mkdir build && cd build && ../configure && make && (make check || (cat `find -name '*.log'` && false))
+      - run: mkdir build && cd build && ../configure && make && (make check || (./.collect_logs && false))
 
   cmake-gcc:
     docker:
diff --git a/.collect_logs b/.collect_logs
new file mode 100755 (executable)
index 0000000..a3d46a4
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+for f in $(find . -name '*.log' -not -name 'config.log'); do
+    echo '====' $f '===='
+    cat $f
+done
index fa9e5bc60ad7aeb0eda1567118c45d56ae21e87c..4751c170025bb6a35835e8ef041cbb499eebc60b 100644 (file)
@@ -27,7 +27,7 @@ matrix:
         - ./autogen.sh
         - ./configure $CONFIGURE_OPTS --enable-gtk-doc
         - make
-        - make check || (cat `find -name '*.log'` && false)
+        - make check || (./.collect_logs && false)
       after_success:
         - bash .ci/run-coveralls.sh # for coveralls.io code coverage tracking
         - bash .ci/deploy-docs.sh
@@ -43,7 +43,7 @@ matrix:
         - ./autogen.sh
         - ./configure $CONFIGURE_OPTS
         - make
-        - make check || (cat `find -name '*.log'` && false)
+        - make check || (./.collect_logs && false)
 
     - os: osx
       compiler: clang
@@ -59,7 +59,7 @@ matrix:
         - ./autogen.sh
         - ./configure $CONFIGURE_OPTS --with-coretext
         - make
-        - make check || (cat `find . -name '*.log'` && false)
+        - make check || (./.collect_logs && false)
 
 notifications:
   irc: "irc.freenode.org#harfbuzz"
index 7350b13572264cd71a59ed567f446d9ddde26dde..cb4e3b1a908bc32a1859fb73a71deb74e5bf891b 100644 (file)
@@ -44,7 +44,7 @@ build_script:
   - 'if "%compiler%"=="msvc" if not "%platform%"=="ARM" ctest --output-on-failure -C %configuration%'
 
   - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "pacman --noconfirm -S mingw-w64-$MSYS2_ARCH-{freetype,cairo,icu,gettext,gobject-introspection,gcc,gcc-libs,glib2,graphite2,pkg-config,python2}"'
-  - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh --with-uniscribe --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 --build=%MINGW_CHOST% --host=%MINGW_CHOST% --prefix=%MINGW_PREFIX%; make; make check || (cat */test-suite.log test/*/test-suite.log && false)"'
+  - 'if "%compiler%"=="msys2" C:\msys64\usr\bin\bash -lc "cd $APPVEYOR_BUILD_FOLDER; PATH=$PATH:/mingw64/bin:/mingw32/bin; ./autogen.sh --with-uniscribe --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 --build=%MINGW_CHOST% --host=%MINGW_CHOST% --prefix=%MINGW_PREFIX%; make; make check || (./.collect_logs && false)"'
 
 cache:
   - c:\tools\vcpkg\installed\