85 lines
3.2 KiB
YAML
85 lines
3.2 KiB
YAML
# Travis CI configuration file
|
|
# http://about.travis-ci.org/docs/
|
|
|
|
language: python
|
|
|
|
# Available Python versions:
|
|
# http://about.travis-ci.org/docs/user/ci-environment/#Python-VM-images
|
|
python:
|
|
# "2.5" -- not supported by Travis CI anymore
|
|
- "2.6"
|
|
- "2.7"
|
|
|
|
env:
|
|
- TWISTED=11.1.0 SQLALCHEMY=latest SQLALCHEMY_MIGRATE=0.7.1
|
|
- TWISTED=12.2.0 SQLALCHEMY=latest SQLALCHEMY_MIGRATE=0.7.1
|
|
- TWISTED=13.0.0 SQLALCHEMY=latest SQLALCHEMY_MIGRATE=0.7.1
|
|
- TWISTED=latest SQLALCHEMY=latest SQLALCHEMY_MIGRATE=latest
|
|
|
|
matrix:
|
|
include:
|
|
# Test different versions of SQLAlchemy
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=0.6.0 SQLALCHEMY_MIGRATE=0.7.1
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=0.6.8 SQLALCHEMY_MIGRATE=0.7.1
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=0.7.0 SQLALCHEMY_MIGRATE=0.7.1
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=0.7.4 SQLALCHEMY_MIGRATE=0.7.1
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=0.7.8 SQLALCHEMY_MIGRATE=0.7.1
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=latest SQLALCHEMY_MIGRATE=0.6.1
|
|
|
|
# Test different versions of SQLAlchemy-migrate
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=latest SQLALCHEMY_MIGRATE=0.6.1
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=latest SQLALCHEMY_MIGRATE=0.7.1
|
|
- python: "2.7"
|
|
env: TWISTED=12.0.0 SQLALCHEMY=latest SQLALCHEMY_MIGRATE=0.7.2
|
|
|
|
# Dependencies installation commands
|
|
install:
|
|
- "echo 'travis_fold:start:tw'; [ $TWISTED = latest ] || pip install Twisted==$TWISTED; echo 'travis_fold:end:tw'"
|
|
- "echo 'travis_fold:start:sa'; [ $SQLALCHEMY = latest ] || pip install sqlalchemy==$SQLALCHEMY; echo 'travis_fold:end:sa'"
|
|
- "echo 'travis_fold:start:sa'; [ $SQLALCHEMY_MIGRATE = latest ] || pip install sqlalchemy-migrate==$SQLALCHEMY_MIGRATE; echo 'travis_fold:end:sam'"
|
|
- (cd master; python setup.py develop)
|
|
- (cd slave; python setup.py develop)
|
|
# mock is preinstalled on Travis
|
|
|
|
# Determine if current configuration is latest
|
|
- |
|
|
if [[ $TRAVIS_PYTHON_VERSION == '2.7' && $TWISTED == latest && \
|
|
$SQLALCHEMY = latest && $SQLALCHEMY_MIGRATE = latest ]]; then
|
|
export IS_LATEST=true
|
|
else
|
|
export IS_LATEST=false
|
|
fi;
|
|
|
|
# Run additional tests only in latest configuration
|
|
# txrequests support only Python 2.6 and 2.7.
|
|
- "[ $IS_LATEST = false ] || pip install txrequests"
|
|
# txgithub requires Twisted >= 12.3.0
|
|
- "[ $IS_LATEST = false ] || pip install txgithub"
|
|
# Note pylint version is pinned because newer versions can't import zope.interface - http://www.logilab.org/92792
|
|
- "[ $IS_LATEST = false ] || pip install pylint==1.1.0"
|
|
- "[ $IS_LATEST = false ] || pip install pyflakes"
|
|
- "[ $IS_LATEST = false ] || pip install sphinx"
|
|
- "[ $IS_LATEST = false ] || pip install pep8==1.5.7"
|
|
|
|
# Tests running commands
|
|
script:
|
|
- trial --reporter=text --rterrors buildbot.test
|
|
- trial --reporter=text --rterrors buildslave.test
|
|
|
|
# Run additional tests only in latest configuration
|
|
- "[ $IS_LATEST = false ] || make pylint==1.1.0"
|
|
- "[ $IS_LATEST = false ] || make pyflakes"
|
|
- "[ $IS_LATEST = false ] || make docs"
|
|
- "[ $IS_LATEST = false ] || make pep8"
|
|
|
|
notifications:
|
|
email: false
|