diff --git a/.travis.yml b/.travis.yml index 69880d1..dc035c8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,187 +9,185 @@ "submodules": false }, "install": [ - ". scripts/travis-install.sh", - "make -e install-dev", - "make -e install-$BUILD" + "if [ \"$BUILD_PRS\" = \"true\" ] || [ \"$TRAVIS_PULL_REQUEST\" = \"false\" ]; then\n . scripts/travis-install.sh;\n pip install -U pip;\n pip install wheel;\n make -e install-dev;\n make -e install-$BUILD;\nfi" ], "language": "python", "matrix": { "include": [ { - "env": "BUILD=style", + "env": "BUILD=style BUILD_PRS=true", "python": "2.7" }, { - "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=devel", + "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=devel BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=release", + "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=release BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=minimal", + "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=minimal BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=devel BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=release BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=minimal BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=devel BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=release BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=minimal BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=devel BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=release BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=minimal BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=devel BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=release BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=minimal BUILD_PRS=false", "python": "2.7" }, { - "env": "BUILD=style", + "env": "BUILD=style BUILD_PRS=true", "python": "3.3" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=devel BUILD_PRS=false", "python": "3.3" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=release BUILD_PRS=false", "python": "3.3" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=minimal BUILD_PRS=false", "python": "3.3" }, { - "env": "BUILD=style", + "env": "BUILD=style BUILD_PRS=true", "python": "3.4" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=devel BUILD_PRS=false", "python": "3.4" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=release BUILD_PRS=false", "python": "3.4" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=minimal BUILD_PRS=false", "python": "3.4" }, { - "env": "BUILD=style", + "env": "BUILD=style BUILD_PRS=true", "python": "3.5" }, { - "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=devel", + "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=devel BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=release", + "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=release BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=minimal", + "env": "BUILD=test REMOTESTORAGE_SERVER=mysteryshack REQUIREMENTS=minimal BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=devel BUILD_PRS=true", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=release BUILD_PRS=true", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=radicale REQUIREMENTS=minimal BUILD_PRS=true", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=devel BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=release BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=owncloud REQUIREMENTS=minimal BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=devel BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=release BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=nextcloud REQUIREMENTS=minimal BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=devel BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=release BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=baikal REQUIREMENTS=minimal BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=devel", + "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=devel BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=release", + "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=release BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=minimal", + "env": "BUILD=test DAV_SERVER=davical REQUIREMENTS=minimal BUILD_PRS=false", "python": "3.5" }, { - "env": "BUILD=style", + "env": "BUILD=style BUILD_PRS=true", "python": "pypy" }, { @@ -199,6 +197,8 @@ } ] }, - "script": "make -e $BUILD", + "script": [ + "if [ \"$BUILD_PRS\" = \"true\" ] || [ \"$TRAVIS_PULL_REQUEST\" = \"false\" ]; then\n make -e $BUILD\nfi" + ], "sudo": true } \ No newline at end of file diff --git a/scripts/make_travisconf.py b/scripts/make_travisconf.py index 6647e5f..e088896 100644 --- a/scripts/make_travisconf.py +++ b/scripts/make_travisconf.py @@ -3,6 +3,13 @@ import json import sys +def script(x): + return """ +if [ "$BUILD_PRS" = "true" ] || [ "$TRAVIS_PULL_REQUEST" = "false" ]; then + {} +fi + """.strip().format(x.strip()) + cfg = {} cfg['sudo'] = True @@ -16,13 +23,17 @@ cfg['branches'] = { 'only': ['auto', 'master'] } -cfg['install'] = [ - ". scripts/travis-install.sh", - "make -e install-dev", - "make -e install-$BUILD" -] +cfg['install'] = [script(""" + . scripts/travis-install.sh; + pip install -U pip; + pip install wheel; + make -e install-dev; + make -e install-$BUILD; +""")] -cfg['script'] = "make -e $BUILD" +cfg['script'] = [script(""" + make -e $BUILD +""")] matrix = [] cfg['matrix'] = {'include': matrix} @@ -30,7 +41,7 @@ cfg['matrix'] = {'include': matrix} for python in ("2.7", "3.3", "3.4", "3.5", "pypy"): matrix.append({ 'python': python, - 'env': 'BUILD=style' + 'env': 'BUILD=style BUILD_PRS=true' }) if python == "3.5": @@ -54,14 +65,22 @@ for python in ("2.7", "3.3", "3.4", "3.5", "pypy"): ), ("devel", "release", "minimal") ): + build_prs = ( + python == "3.5" and + server_type == 'DAV' and + server == 'radicale' + ) + matrix.append({ 'python': python, 'env': ("BUILD=test " "{server_type}_SERVER={server} " - "REQUIREMENTS={requirements}" + "REQUIREMENTS={requirements} " + "BUILD_PRS={build_prs}" .format(server_type=server_type, server=server, - requirements=requirements)) + requirements=requirements, + build_prs='true' if build_prs else 'false')) }) matrix.append({ diff --git a/scripts/travis-install.sh b/scripts/travis-install.sh index 1e08cef..2dc277e 100644 --- a/scripts/travis-install.sh +++ b/scripts/travis-install.sh @@ -24,6 +24,3 @@ if [ "$TRAVIS_OS_NAME" = "osx" ]; then virtualenv -p python3 $HOME/osx-py3 . $HOME/osx-py3/bin/activate fi - -pip install -U pip -pip install wheel