try building only keyboards needed
[jackhill/qmk/firmware.git] / util / travis_build.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 if [[ "$TRAVIS_COMMIT_MESSAGE" != *"[skip build]"* ]] ; then
7 NEFM=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -Ev '^(keyboards/)' | wc -l)
8 if [[ $NEFM -gt 0 ]] ; then
9 echo "Making all keymaps for all keyboards"
10 make all-keyboards AUTOGEN=true
11 else
12 MKB=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -oP '(?<=keyboards\/)([a-zA-Z_]+)' | sort -u)
13 for KB in $MKB ; do
14 echo "Making all keymaps for $KB"
15 make "$KB" AUTOGEN=true
16 done
17 fi
18 fi