]> git.donarmstrong.com Git - qmk_firmware.git/blob - util/travis_test.sh
Travis CI - skip unit tests for documentation changes (#5267)
[qmk_firmware.git] / util / travis_test.sh
1 #!/bin/bash
2
3 TRAVIS_COMMIT_MESSAGE="${TRAVIS_COMMIT_MESSAGE:-none}"
4 TRAVIS_COMMIT_RANGE="${TRAVIS_COMMIT_RANGE:-HEAD~1..HEAD}"
5
6 # test force push
7 #TRAVIS_COMMIT_RANGE="c287f1bfc5c8...81f62atc4c1d"
8
9 NUM_IMPACTING_CHANGES=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -Ecv '^(docs/)')
10 BRANCH=$(git rev-parse --abbrev-ref HEAD)
11
12 if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip test]"* ]]; then
13     echo "Skipping due to commit message"
14     exit 0
15 fi
16
17 if [ "$BRANCH" != "master" ] && [ "$NUM_IMPACTING_CHANGES" == "0" ]; then
18     echo "Skipping due to changes not impacting tests"
19     exit 0
20 fi
21
22 make test:all