CI: Add workflow for CLI testing (#7357)

Create GitHub Actions cli test workflow and remove travis runs of 'qmk pytest'
This commit is contained in:
Joel Challis
2020-02-08 12:43:55 +00:00
committed by Florian Didron
parent ce9397836b
commit f7dbbf006a
3 changed files with 31 additions and 14 deletions

28
.github/workflows/cli.yml vendored Normal file
View File

@@ -0,0 +1,28 @@
name: CLI CI
on:
push:
branches:
- master
- future
pull_request:
paths:
- 'lib/python/**'
- 'bin/qmk'
- 'requirements.txt'
- '.github/workflows/cli.yml'
jobs:
test:
runs-on: ubuntu-latest
container: qmkfm/base_container
steps:
- uses: actions/checkout@v1
with:
submodules: recursive
- name: Install dependencies
run: pip3 install -r requirements.txt
- name: Run tests
run: bin/qmk pytest

View File

@@ -30,7 +30,7 @@ def test_kle2json():
def test_doctor(): def test_doctor():
result = check_subcommand('doctor') result = check_subcommand('doctor', '-n')
assert result.returncode == 0 assert result.returncode == 0
assert 'QMK Doctor is checking your environment.' in result.stderr assert 'QMK Doctor is checking your environment.' in result.stderr
assert 'QMK is ready to go' in result.stderr assert 'QMK is ready to go' in result.stderr

View File

@@ -3,11 +3,7 @@
TRAVIS_COMMIT_MESSAGE="${TRAVIS_COMMIT_MESSAGE:-none}" TRAVIS_COMMIT_MESSAGE="${TRAVIS_COMMIT_MESSAGE:-none}"
TRAVIS_COMMIT_RANGE="${TRAVIS_COMMIT_RANGE:-HEAD~1..HEAD}" TRAVIS_COMMIT_RANGE="${TRAVIS_COMMIT_RANGE:-HEAD~1..HEAD}"
# test force push NUM_CORE_CHANGES=$(echo "$QMK_CHANGES" | grep -Ecv -e '^(docs/)' -e '^(keyboards/)' -e '^(layouts/)' -e '^(util/)' -e '^(lib/python/)' -e '^(bin/qmk)' -e '^(requirements.txt)' -e '(.travis.yml)')
#TRAVIS_COMMIT_RANGE="c287f1bfc5c8...81f62atc4c1d"
NUM_IMPACTING_CHANGES=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -Ecv '^(docs/)')
BRANCH=$(git rev-parse --abbrev-ref HEAD)
if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip test]"* ]]; then if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip test]"* ]]; then
echo "Skipping due to commit message" echo "Skipping due to commit message"
@@ -19,11 +15,4 @@ if [ "$BRANCH" != "master" ] && [ "$NUM_IMPACTING_CHANGES" == "0" ]; then
exit 0 exit 0
fi fi
# if docker is installed - call make within the qmk docker image exit $exit_code
if command -v docker >/dev/null; then
function make() {
docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container make "$@"
}
fi
make test:all