diff --git a/.travis.yml b/.travis.yml index b74e2f4e7e1d..ae36331de133 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,15 +1,13 @@ language: python -# command to install dependencies + install: - - pip install tox - - pip install coveralls -# run tests + - scripts/custom_pip_install.sh tox + script: - tox -e py26 - tox -e py27 - tox -e lint - tox -e regression -after_success: - - tox -e cover - - coveralls - scripts/update_docs.sh +after_success: + - tox -e coveralls diff --git a/scripts/custom_pip_install.sh b/scripts/custom_pip_install.sh new file mode 100755 index 000000000000..078bf3f5131c --- /dev/null +++ b/scripts/custom_pip_install.sh @@ -0,0 +1,4 @@ +#!/bin/bash +# Temporarily perform default pip install before initial +# wheelhouse is built. +pip install "$@" diff --git a/scripts/update_docs.sh b/scripts/update_docs.sh index 67c0bc276ec8..6deb9e3dd69c 100755 --- a/scripts/update_docs.sh +++ b/scripts/update_docs.sh @@ -1,17 +1,37 @@ #!/bin/bash +# Copyright 2014 Google Inc. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + set -ev -# If merging to master and not a pull request, update docs. -if [ "${TRAVIS_BRANCH}" == "master" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then - # Generate new set of json files in docs/json/master. +if [[ "${TRAVIS_BRANCH}" == "master" ]] && \ + [[ "${TRAVIS_PULL_REQUEST}" == "false" ]]; then + # Build new docset in docs/_build from master. tox -e docs - git submodule add -b gh-pages https://${GH_OAUTH_TOKEN}@github.com/${GH_OWNER}/${GH_PROJECT_NAME} ghpages + git submodule add -b gh-pages \ + "https://${GH_OAUTH_TOKEN}@github.com/${GH_OWNER}/${GH_PROJECT_NAME}" \ + ghpages cp -R docs/_build/html/* ghpages/ cd ghpages git add . # Commit to gh-pages branch to apply changes. git config user.name "selfiebot" git commit -m "Update docs after merge to master." - git push https://${GH_OAUTH_TOKEN}@github.com/${GH_OWNER}/${GH_PROJECT_NAME} HEAD:gh-pages + git push \ + "https://${GH_OAUTH_TOKEN}@github.com/${GH_OWNER}/${GH_PROJECT_NAME}" \ + HEAD:gh-pages +else + echo "Not in master on a non-pull request. Doing nothing." fi diff --git a/tox.ini b/tox.ini index c5e8ef11562b..1064cf54f956 100644 --- a/tox.ini +++ b/tox.ini @@ -11,6 +11,8 @@ deps = protobuf==2.6.0 [testenv] +install_command = + {toxinidir}/scripts/custom_pip_install.sh {opts} {packages} commands = nosetests deps = @@ -21,14 +23,22 @@ deps = basepython = python2.7 commands = - nosetests --with-xunit --with-xcoverage --cover-package=gcloud \ - --nocapture --cover-erase --cover-tests --cover-branches + nosetests --with-xunit --with-xcoverage --cover-package=gcloud --nocapture --cover-erase --cover-tests --cover-branches deps = nose unittest2 coverage nosexcover +[testenv:coveralls] +basepython = {[testenv:cover]basepython} +commands = + {[testenv:cover]commands} + coveralls +deps = + {[testenv:cover]deps} + coveralls + [testenv:docs] basepython = python2.7