diff options
| author | Joel Challis <git@zvecr.com> | 2019-10-14 17:57:53 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-10-14 17:57:53 +0100 |
| commit | e1de0d74a6f6c4bdc762b32fb78e449aed0fcecb (patch) | |
| tree | 677c27ec4e19b5a2c398ce66fa7885765377f957 | |
| parent | 6560dffc05131c05655f8e0d74cc65c5918894fa (diff) | |
| download | qmk_firmware-e1de0d74a6f6c4bdc762b32fb78e449aed0fcecb.tar.gz qmk_firmware-e1de0d74a6f6c4bdc762b32fb78e449aed0fcecb.zip | |
Move running pytest to travis_test (#7005)
| -rwxr-xr-x | util/travis_build.sh | 10 | ||||
| -rw-r--r-- | util/travis_test.sh | 36 |
2 files changed, 27 insertions, 19 deletions
diff --git a/util/travis_build.sh b/util/travis_build.sh index 2bc1ccd62..225c8548f 100755 --- a/util/travis_build.sh +++ b/util/travis_build.sh | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | #!/bin/bash | 1 | #!/bin/bash |
| 2 | 2 | ||
| 3 | # if docker is installed - call make within the qmk docker image | 3 | # if docker is installed - patch calls to within the qmk docker image |
| 4 | if command -v docker >/dev/null; then | 4 | if command -v docker >/dev/null; then |
| 5 | function make() { | 5 | function make() { |
| 6 | docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container make "$@" | 6 | docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container make "$@" |
| @@ -52,14 +52,6 @@ if [[ "$TRAVIS_COMMIT_MESSAGE" != *"[skip build]"* ]] ; then | |||
| 52 | fi | 52 | fi |
| 53 | done | 53 | done |
| 54 | fi | 54 | fi |
| 55 | # Check and run python tests if necessary | ||
| 56 | PFM=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -E -e '^(lib/python/)' -e '^(bin/qmk)' | wc -l) | ||
| 57 | if [ $PFM -gt 0 -o "$BRANCH" = "master" ]; then | ||
| 58 | echo | ||
| 59 | echo "Running python tests." | ||
| 60 | docker run --rm -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container 'bin/qmk pytest' | ||
| 61 | : $((exit_code = $exit_code + $?)) | ||
| 62 | fi | ||
| 63 | fi | 55 | fi |
| 64 | exit $exit_code | 56 | exit $exit_code |
| 65 | fi | 57 | fi |
diff --git a/util/travis_test.sh b/util/travis_test.sh index e6a50ac16..9b7402c28 100644 --- a/util/travis_test.sh +++ b/util/travis_test.sh | |||
| @@ -1,29 +1,45 @@ | |||
| 1 | #!/bin/bash | 1 | #!/bin/bash |
| 2 | 2 | ||
| 3 | # if docker is installed - patch calls to within the qmk docker image | ||
| 4 | if command -v docker >/dev/null; then | ||
| 5 | function make() { | ||
| 6 | docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container make "$@" | ||
| 7 | } | ||
| 8 | function qmk() { | ||
| 9 | docker run --rm -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container bin/qmk "$@" | ||
| 10 | } | ||
| 11 | fi | ||
| 12 | |||
| 3 | TRAVIS_COMMIT_MESSAGE="${TRAVIS_COMMIT_MESSAGE:-none}" | 13 | TRAVIS_COMMIT_MESSAGE="${TRAVIS_COMMIT_MESSAGE:-none}" |
| 4 | TRAVIS_COMMIT_RANGE="${TRAVIS_COMMIT_RANGE:-HEAD~1..HEAD}" | 14 | TRAVIS_COMMIT_RANGE="${TRAVIS_COMMIT_RANGE:-HEAD~1..HEAD}" |
| 5 | 15 | ||
| 6 | # test force push | 16 | # test force push |
| 7 | #TRAVIS_COMMIT_RANGE="c287f1bfc5c8...81f62atc4c1d" | 17 | #TRAVIS_COMMIT_RANGE="c287f1bfc5c8...81f62atc4c1d" |
| 8 | 18 | ||
| 9 | NUM_IMPACTING_CHANGES=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -Ecv '^(docs/)') | ||
| 10 | BRANCH=$(git rev-parse --abbrev-ref HEAD) | 19 | BRANCH=$(git rev-parse --abbrev-ref HEAD) |
| 20 | CHANGES=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE}) | ||
| 21 | |||
| 22 | NUM_CORE_CHANGES=$(echo "$CHANGES" | grep -Ecv -e '^(docs/)' -e '^(keyboards/)' -e '^(layouts/)') | ||
| 23 | NUM_PY_CHANGES=$(echo "$CHANGES" | grep -Ec -e '^(lib/python/)' -e '^(bin/qmk)') | ||
| 11 | 24 | ||
| 12 | if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip test]"* ]]; then | 25 | if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip test]"* ]]; then |
| 13 | echo "Skipping due to commit message" | 26 | echo "Skipping due to commit message" |
| 14 | exit 0 | 27 | exit 0 |
| 15 | fi | 28 | fi |
| 16 | 29 | ||
| 17 | if [ "$BRANCH" != "master" ] && [ "$NUM_IMPACTING_CHANGES" == "0" ]; then | 30 | exit_code=0 |
| 18 | echo "Skipping due to changes not impacting tests" | 31 | |
| 19 | exit 0 | 32 | if [ "$BRANCH" == "master" ] || [ "$NUM_CORE_CHANGES" != "0" ]; then |
| 33 | echo "Running tests." | ||
| 34 | make test:all | ||
| 35 | : $((exit_code = $exit_code + $?)) | ||
| 36 | |||
| 20 | fi | 37 | fi |
| 21 | 38 | ||
| 22 | # if docker is installed - call make within the qmk docker image | 39 | if [ "$BRANCH" == "master" ] || [ "$NUM_PY_CHANGES" != "0" ]; then |
| 23 | if command -v docker >/dev/null; then | 40 | echo "Running python tests." |
| 24 | function make() { | 41 | qmk pytest |
| 25 | docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container make "$@" | 42 | : $((exit_code = $exit_code + $?)) |
| 26 | } | ||
| 27 | fi | 43 | fi |
| 28 | 44 | ||
| 29 | make test:all | 45 | exit $exit_code |
