From ba3e0eee07d2cbea6cb58062b11eec98f12ad7b2 Mon Sep 17 00:00:00 2001 From: Maxim Uvarov Date: Tue, 16 May 2017 16:09:27 +0300 Subject: [PATCH] travis: move code style check to separate job Move this check to separate job to better see which exactly task was failed. Signed-off-by: Maxim Uvarov --- .travis.yml | 31 ++++++++++++++++--------------- scripts/ci-checkpatches.sh | 17 +++++++++++++++++ 2 files changed, 33 insertions(+), 15 deletions(-) create mode 100755 scripts/ci-checkpatches.sh diff --git a/.travis.yml b/.travis.yml index aa7ea01078..e792af06b4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -51,12 +51,28 @@ matrix: - llvm-toolchain-precise-3.8 packages: - clang-3.8 + - compiler: gcc + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - gcc + env: TEST="CHECKPATCH" before_install: - echo 1000 | sudo tee /proc/sys/vm/nr_hugepages - sudo mkdir -p /mnt/huge - sudo mount -t hugetlbfs nodev /mnt/huge + - if [ "$TEST" = "CHECKPATCH" ]; then + echo ${TRAVIS_COMMIT_RANGE}; + ODP_PATCHES=`echo ${TRAVIS_COMMIT_RANGE} | sed 's/\.//'`; + if [ -z "${ODP_PATCHES}" ]; then env; exit 1; fi; + ./scripts/ci-checkpatches.sh ${ODP_PATCHES}; + exit $?; + fi + - sudo apt-get -qq update - sudo apt-get install automake autoconf libtool libssl-dev graphviz mscgen doxygen - sudo apt-get install libpcap-dev linux-headers-`uname -r` @@ -101,21 +117,6 @@ before_install: - popd script: - - echo $TRAVIS_COMMIT_RANGE - - ODP_PACHES=`echo $TRAVIS_COMMIT_RANGE | sed 's/\.//'` -# Generate patches provided with $TRAVIS_COMMIT_RANGE. -# In case of force push and range is broken validate only the latest commit if it's not merge commit. - - git format-patch $ODP_PACHES; - if [ $? -ne 0 ]; then - git show --summary HEAD| grep -q '^Merge:'; - if [ $? -ne 0 ]; then - git format-patch HEAD^; - perl ./scripts/checkpatch.pl *.patch; - fi; - else - perl ./scripts/checkpatch.pl *.patch; - fi - - ./bootstrap - ./configure # doxygen does not trap on warnings, check for them here. diff --git a/scripts/ci-checkpatches.sh b/scripts/ci-checkpatches.sh new file mode 100755 index 0000000000..cb1c4e65db --- /dev/null +++ b/scripts/ci-checkpatches.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +PATCHES=$1 +echo "Run checkpatch for ${PATCHES}" +# Generate patches provided with $1. +# In case of force push and range is broken +# validate only the latest commit if it's not merge commit. +git format-patch ${PATCHES} +if [ $? -ne 0 ]; then + git show --summary HEAD| grep -q '^Merge:'; + if [ $? -ne 0 ]; then + git format-patch HEAD^; + perl ./scripts/checkpatch.pl *.patch; + fi; +else + perl ./scripts/checkpatch.pl *.patch; +fi