X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=.travis_do.sh;h=2dd1c1c8d771129f9934a24c22c02aba44fbf1e6;hb=96e609ea315b2c5fb3d14dcef090694ef7566d2a;hp=719c29ea0fef9c51dc3f4836f0487edc5c932844;hpb=45b88fc5d73f554f4becbddc73002edfdbc432cb;p=feed%2Fpackages.git diff --git a/.travis_do.sh b/.travis_do.sh index 719c29ea0f..2dd1c1c8d7 100755 --- a/.travis_do.sh +++ b/.travis_do.sh @@ -16,8 +16,10 @@ echo_blue() { printf "\033[1;34m$*\033[m\n"; } exec_status() { PATTERN="$1" shift + while :;do sleep 590;echo "still running (please don't kill me Travis)";done & ("$@" 2>&1) | tee logoutput R=${PIPESTATUS[0]} + kill $! && wait $! 2>/dev/null if [ $R -ne 0 ]; then echo_red "=> '$*' failed (return code $R)" return 1 @@ -87,9 +89,12 @@ src-link packages $PACKAGES_DIR src-git luci https://github.com/openwrt/luci.git EOF - ./scripts/feeds update -a - ./scripts/feeds install -a - make defconfig + # enable BUILD_LOG + sed -i '1s/^/config BUILD_LOG\n\tbool\n\tdefault y\n\n/' Config-build.in + + ./scripts/feeds update -a > /dev/null + ./scripts/feeds install -a > /dev/null + make defconfig > /dev/null echo_blue "=== Setting up SDK done" RET=0 @@ -111,12 +116,25 @@ EOF pkg_name=$(echo "$pkg_dir" | awk -F/ '{ print $NF }') echo_blue "=== $pkg_name: Starting compile test" - exec_status '^ERROR' make "package/$pkg_name/compile" V=s -j3 + # we can't enable verbose built else we often hit Travis limits + # on log size and the job get killed + exec_status '^ERROR' make "package/$pkg_name/compile" -j3 || RET=1 echo_blue "=== $pkg_name: compile test done" + + echo_blue "=== $pkg_name: begin compile logs" + for f in $(find logs/package/feeds/packages/$pkg_name/ -type f); do + echo_blue "Printing last 200 lines of $f" + tail -n200 "$f" + done + echo_blue "=== $pkg_name: end compile logs" + + echo_blue "=== $pkg_name: begin packages sizes" + du -ba bin/ + echo_blue "=== $pkg_name: end packages sizes" done - return 0 + return $RET } test_commits() { @@ -165,8 +183,10 @@ echo_blue "=== Travis ENV" env echo_blue "=== Travis ENV" -until [ "$(git rev-list ${TRAVIS_COMMIT_RANGE/.../..} | tail -n1)" != "a22de9b74cf9579d1ce7e6cf1845b4afa4277b00" ]; do - # if clone depth is too small, git rev-list / diff return incorrect results +while true; do + # if clone depth is too small, git rev-list / diff return incorrect or empty results + C="$(git rev-list ${TRAVIS_COMMIT_RANGE/.../..} | tail -n1)" 2>/dev/null + [ -n "$C" -a "$C" != "a22de9b74cf9579d1ce7e6cf1845b4afa4277b00" ] && break echo_blue "Fetching 50 commits more" git fetch origin --deepen=50 done