From 63f2e371b6df79ca085d73744f49892961c1d624 Mon Sep 17 00:00:00 2001 From: TheAssassin Date: Mon, 29 May 2017 22:53:27 +0200 Subject: [PATCH 1/3] Disable notifications --- .travis.yml | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/.travis.yml b/.travis.yml index 2c1b97a..c687c72 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,21 +25,3 @@ branches: except: - # Do not build tags that we create when we upload to GitHub Releases - /^(?i:continuous)$/ - -notifications: - irc: - channels: - - "chat.freenode.net#AppImage" - on_success: always # options: [always|never|change] default: always - on_failure: always # options: [always|never|change] default: always - on_start: always # options: [always|never|change] default: always - template: - - "%{repository} build %{build_number}: %{result} %{build_url}" - use_notice: true - # skip_join: true - webhooks: - urls: - - https://webhooks.gitter.im/e/4bf20518805a55998cc2 - on_success: always # options: [always|never|change] default: always - on_failure: always # options: [always|never|change] default: always - on_start: always # options: [always|never|change] default: always From df417bd38a56c0e8812345b8f4393b25b1571896 Mon Sep 17 00:00:00 2001 From: TheAssassin Date: Mon, 29 May 2017 23:01:17 +0200 Subject: [PATCH 2/3] Upload files for debugging if linuxdeployqt segfaults --- tests/tests-ci.sh | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/tests/tests-ci.sh b/tests/tests-ci.sh index 9bd5fa3..cf30e52 100755 --- a/tests/tests-ci.sh +++ b/tests/tests-ci.sh @@ -3,8 +3,8 @@ set -x source /opt/qt*/bin/qt*-env.sh -/opt/qt*/bin/qmake linuxdeployqt.pro -make -j2 +/opt/qt*/bin/qmake CONFIG+=debug linuxdeployqt.pro +make -j mkdir -p linuxdeployqt.AppDir/usr/bin/ cp /usr/local/bin/{appimagetool,mksquashfs,patchelf,zsyncmake} linuxdeployqt.AppDir/usr/bin/ @@ -24,4 +24,19 @@ do sleep 1; done -bash -e tests/tests.sh +# enable core dumps +echo "/tmp/coredump" | sudo tee /proc/sys/kernel/core_pattern + +ulimit -c unlimited +ulimit -a -S +ulimit -a -H + +bash -e tests/tests.sh || RESULT=$? + +if [ $RESULT -ne 0 ]; then + echo "FAILURE: linuxdeployqt CRASHED -- uploading files for debugging to transfer.sh" + set -v + [ -e /tmp/coredump ] && curl --upload-file /tmp/coredump https://transfer.sh/coredump + curl --upload-file linuxdeployqt-*-x86_64.AppImage https://transfer.sh/linuxdeployqt-x86_64.AppImage + exit $RESULT +fi From 1088dfa999ed21951591ed92e6b9dd8cd288d9df Mon Sep 17 00:00:00 2001 From: TheAssassin Date: Mon, 29 May 2017 23:35:13 +0200 Subject: [PATCH 3/3] Fix linuxdeployqt crashes on Travis (closes #108) By using a stable patchelf binary instead of compiling the latest master from NixOS/patchelf, the crash could be solved. An issue has been created in NixOS/patchelf attempting to fix this upstream. We should think about relying on stable versions (e.g. their tags) in the future instead of building the master branch, especially since linuxdeployqt is a development tool that many developers rely on. --- tests/tests-ci.sh | 9 +++++---- tests/tests-environment.sh | 10 ++-------- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/tests/tests-ci.sh b/tests/tests-ci.sh index cf30e52..901ac43 100755 --- a/tests/tests-ci.sh +++ b/tests/tests-ci.sh @@ -3,11 +3,11 @@ set -x source /opt/qt*/bin/qt*-env.sh -/opt/qt*/bin/qmake CONFIG+=debug linuxdeployqt.pro +/opt/qt*/bin/qmake CONFIG+=release CONFIG+=force_debug_info linuxdeployqt.pro make -j mkdir -p linuxdeployqt.AppDir/usr/bin/ -cp /usr/local/bin/{appimagetool,mksquashfs,patchelf,zsyncmake} linuxdeployqt.AppDir/usr/bin/ +cp /usr/bin/patchelf /usr/local/bin/{appimagetool,mksquashfs,zsyncmake} linuxdeployqt.AppDir/usr/bin/ find linuxdeployqt.AppDir/ export VERSION=continuous cp ./linuxdeployqt/linuxdeployqt linuxdeployqt.AppDir/usr/bin/ @@ -31,12 +31,13 @@ ulimit -c unlimited ulimit -a -S ulimit -a -H -bash -e tests/tests.sh || RESULT=$? +bash -e tests/tests.sh -if [ $RESULT -ne 0 ]; then +if [ $? -ne 0 ]; then echo "FAILURE: linuxdeployqt CRASHED -- uploading files for debugging to transfer.sh" set -v [ -e /tmp/coredump ] && curl --upload-file /tmp/coredump https://transfer.sh/coredump curl --upload-file linuxdeployqt-*-x86_64.AppImage https://transfer.sh/linuxdeployqt-x86_64.AppImage + find -type f -iname 'libQt5Core.so*' -exec curl --upload {} https://transfer.sh/libQt5Core.so \; || true exit $RESULT fi diff --git a/tests/tests-environment.sh b/tests/tests-environment.sh index 68022dd..a75fee5 100755 --- a/tests/tests-environment.sh +++ b/tests/tests-environment.sh @@ -5,14 +5,8 @@ set -e sudo add-apt-repository --yes ppa:beineri/opt-qt58-trusty sudo apt-get update -qq -git clone -o 44b7f95 https://github.com/NixOS/patchelf.git -cd patchelf -bash ./bootstrap.sh -./configure -make -j2 -sudo make install - -cd - +wget http://ftp.de.debian.org/debian/pool/main/p/patchelf/patchelf_0.8-2_amd64.deb +sudo dpkg -i patchelf_0.8-2_amd64.deb cd /tmp/ wget -c "https://github.com/probonopd/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage"