diff options
author | Zachary Ware <zachary.ware@gmail.com> | 2018-02-18 15:45:48 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-18 15:45:48 -0600 |
commit | 21f53e7249d838489033abf4fc267bec00c1af3e (patch) | |
tree | 09a8a971f1fbd223ed082929c56f3939880c8bd5 /.travis.yml | |
parent | fd9d1c901d16b1f16b421f9d6647025806c4d90d (diff) | |
download | cpython-git-21f53e7249d838489033abf4fc267bec00c1af3e.tar.gz |
[2.7] Clean up Travis config (GH-5727)
(cherry picked from commit 7eb3f8226ea7b79dae4e4e8b05730cfe0d9af7c1)
Diffstat (limited to '.travis.yml')
-rw-r--r-- | .travis.yml | 52 |
1 files changed, 39 insertions, 13 deletions
diff --git a/.travis.yml b/.travis.yml index 6a64ec62ab..175432dd45 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,13 +5,14 @@ group: beta # To cache doc-building dependencies and C compiler output. cache: - - pip - - ccache + - pip + - ccache branches: only: - master - /^\d\.\d$/ + - buildbot-custom matrix: fast_finish: true @@ -37,28 +38,53 @@ matrix: script: - make check suspicious html SPHINXOPTS="-q -W -j4" -# Travis provides only 2 cores, so don't overdo the parallelism and waste memory. -before_script: + +before_install: + - set -e - | - set -e - if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.rst$)|(^Doc)' + # Check short-circuit conditions + if [ "${TESTING}" != "docs" ] then - echo "Only docs were updated, stopping build process." - exit + if [ "$TRAVIS_PULL_REQUEST" = "false" ] + then + echo "Not a PR, doing full build." + else + # Pull requests are slightly complicated because $TRAVIS_COMMIT_RANGE + # may include more changes than desired if the history is convoluted. + # Instead, explicitly fetch the base branch and compare against the + # merge-base commit. + git fetch -q origin +refs/heads/$TRAVIS_BRANCH + changes=$(git diff --name-only HEAD $(git merge-base HEAD FETCH_HEAD)) + echo "Files changed:" + echo "$changes" + if ! echo "$changes" | grep -qvE '(\.rst$)|(^Doc)|(^Misc)' + then + echo "Only docs were updated, stopping build process." + exit + fi + fi fi - ./configure --with-pydebug - make -j4 - make -j4 regen-all - changes=`git status --porcelain` + + +# Travis provides only 2 cores, so don't overdo the parallelism and waste memory. +before_script: + - ./configure --with-pydebug + - make -j4 regen-all + - changes=`git status --porcelain` + - | + # Check for changes in regenerated files if ! test -z "$changes" then echo "Generated files not up to date" echo "$changes" exit 1 fi - make pythoninfo + - make -j4 + - make pythoninfo script: + # Check that all symbols exported by libpython start with "Py" or "_Py" + - make smelly # `-r -w` implicitly provided through `make buildbottest`. - make buildbottest TESTOPTS="-j4 -uall,-cpu" |