From: Berker Peksag Date: Tue, 14 Feb 2017 09:57:26 +0000 (+0300) Subject: Only run CI checks when appropriate files have changed (#74) X-Git-Tag: v3.7.0a1~1346 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=157c0b86b805a6a27b44efd4bf168a66e60ecf18;p=python Only run CI checks when appropriate files have changed (#74) Closes python/core-workflow#14 --- diff --git a/.travis.yml b/.travis.yml index 90d19d3dea..8721922118 100644 --- a/.travis.yml +++ b/.travis.yml @@ -30,8 +30,14 @@ matrix: env: - TESTING=docs before_script: - - cd Doc - - make venv PYTHON=python3 + - | + if git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '^Doc/' + then + echo "Docs weren't updated, stopping build process." + exit + fi + cd Doc + make venv PYTHON=python3 script: - make html SPHINXBUILD="./venv/bin/python3 -m sphinx" SPHINXOPTS="-q" - python3 tools/rstlint.py -i tools -i venv @@ -41,11 +47,17 @@ matrix: env: - TESTING=coverage before_script: - - ./configure - - make -s -j4 - # Need a venv that can parse covered code. - - ./python -m venv venv - - ./venv/bin/python -m pip install -U coverage + - | + if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)/' + then + echo "Only docs were updated, stopping build process." + exit + fi + ./configure + make -s -j4 + # Need a venv that can parse covered code. + ./python -m venv venv + ./venv/bin/python -m pip install -U coverage script: # Skip tests that re-run the entire test suite. - ./venv/bin/python -m coverage run --pylib -m test -uall -x test_multiprocessing_fork -x test_multiprocessing_forkserver -x test_multiprocessing_spawn @@ -65,8 +77,14 @@ matrix: # Travis provides only 2 cores, so don't overdue the parallelism and waste memory. before_script: - - ./configure --with-pydebug - - make -j4 + - | + if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)/' + then + echo "Only docs were updated, stopping build process." + exit + fi + ./configure --with-pydebug + make -j4 script: # `-r -w` implicitly provided through `make buildbottest`.