Merge branch 'tox-travis'
commit
8fc9ae8869
|
|
@ -16,5 +16,6 @@ target/
|
||||||
.classpath
|
.classpath
|
||||||
.project
|
.project
|
||||||
.tox
|
.tox
|
||||||
|
.coverage
|
||||||
*.iml
|
*.iml
|
||||||
.idea/
|
.idea/
|
||||||
|
|
|
||||||
29
.travis.yml
29
.travis.yml
|
|
@ -17,36 +17,19 @@ python:
|
||||||
- '2.6'
|
- '2.6'
|
||||||
- '2.7'
|
- '2.7'
|
||||||
- '3.4'
|
- '3.4'
|
||||||
|
- '3.6'
|
||||||
|
|
||||||
env:
|
env:
|
||||||
matrix:
|
|
||||||
- TESTNAME=test_mock JDBC_DRIVER=org.jaydebeapi:mockdriver:1.0-SNAPSHOT
|
|
||||||
- TESTNAME="test_integration.HsqldbTest test_integration.PropertiesDriverArgsPassingTest" JDBC_DRIVER=org.hsqldb:hsqldb:1.8.0.10
|
|
||||||
- TESTNAME=test_integration.SqliteXerialTest JDBC_DRIVER=org.xerial:sqlite-jdbc:3.7.2
|
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- python: 2.7
|
- python: 3.6
|
||||||
env: TESTNAME=test_integration.SqlitePyTest
|
env: JYTHON=org.python:jython-installer:2.7.0 TOXENV="jython-driver-{hsqldb,mock}"
|
||||||
- python: 2.7
|
|
||||||
env: JYTHON=org.python:jython-installer:2.7.0 TESTNAME="test_integration.HsqldbTest test_integration.PropertiesDriverArgsPassingTest" JDBC_DRIVER=org.hsqldb:hsqldb:1.8.0.10
|
|
||||||
- python: 2.7
|
|
||||||
env: JYTHON=org.python:jython-installer:2.7.0 TESTNAME=test_mock JDBC_DRIVER=org.jaydebeapi:mockdriver:1.0-SNAPSHOT
|
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
- ci/before_install.sh
|
- ci/before_install.sh
|
||||||
|
- export PATH="$HOME/bin:$PATH"
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- if [ "$JDBC_DRIVER" == "org.jaydebeapi:mockdriver:1.0-SNAPSHOT" ]; then (cd mockdriver && mvn -Dmaven.repo.local=$VIRTUAL_ENV/.m2/repository install) ;fi
|
- pip install tox-travis
|
||||||
- if [ -n "$JDBC_DRIVER" ]; then python ci/jipconf_subst.py $VIRTUAL_ENV $VIRTUAL_ENV && pip install jip==0.9.9 && jip install $JDBC_DRIVER && export CLASSPATH=$VIRTUAL_ENV/javalib/* ;fi # TODO: Fix jip to search for local maven repo without twaking .jip
|
|
||||||
- source $HOME/myvirtualenv/bin/activate
|
|
||||||
- pip install -e .
|
|
||||||
- if [ -z "$JYTHON" ]; then pip install coveralls ;fi
|
|
||||||
|
|
||||||
script:
|
script: tox
|
||||||
- if [ -z "$JYTHON" ]; then PY="coverage run --source jaydebeapi"; else PY="python" ;fi
|
|
||||||
- $PY test/testsuite.py $TESTNAME
|
|
||||||
- if [ "$JDBC_DRIVER" == "org.hsqldb:hsqldb:1.8.0.10" ] ; then $PY test/doctests.py ;fi
|
|
||||||
|
|
||||||
after_success:
|
|
||||||
- if [ -z "$JYTHON" ]; then coveralls ;fi
|
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,4 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
[ -n "$JYTHON" ] && "${TRAVIS_BUILD_DIR}/ci/before_install_jython.sh" || "${TRAVIS_BUILD_DIR}/ci/before_install_nonjython.sh"
|
[ -n "$JYTHON" ] && "${TRAVIS_BUILD_DIR}/ci/before_install_jython.sh" || true
|
||||||
|
|
||||||
[ -n "$JYTHON" ] && cp requirements-jython.txt requirements.txt || cp requirements-python-${TRAVIS_PYTHON_VERSION}.txt requirements.txt
|
|
||||||
|
|
||||||
if [ -f requirements.txt ]
|
|
||||||
then
|
|
||||||
pip install -r requirements.txt
|
|
||||||
fi
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
JYTHON_JAR=$(${TRAVIS_BUILD_DIR}/ci/mvnget.sh $JYTHON)
|
JYTHON_JAR=$(${TRAVIS_BUILD_DIR}/ci/mvnget.sh "$JYTHON")
|
||||||
java -jar ${JYTHON_JAR} -s -d $HOME/jython
|
java -jar ${JYTHON_JAR} -s -d $HOME/jython
|
||||||
|
mkdir -p $HOME/bin
|
||||||
$HOME/jython/bin/pip install virtualenv
|
ln -s $HOME/jython/bin/jython $HOME/bin/
|
||||||
$HOME/jython/bin/virtualenv $HOME/myvirtualenv
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
set -e
|
|
||||||
|
|
||||||
ln -s $VIRTUAL_ENV $HOME/myvirtualenv
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
ARTIFACT_SPEC=$1
|
ARTIFACT_SPEC="$1"
|
||||||
GROUP_ID=${ARTIFACT_SPEC%%:*}
|
GROUP_ID=${ARTIFACT_SPEC%%:*}
|
||||||
NON_GROUP_ID=${ARTIFACT_SPEC#*:}
|
NON_GROUP_ID=${ARTIFACT_SPEC#*:}
|
||||||
ARTIFACT_NAME=`python -c "import re;print(re.search(r':(.*):', '$ARTIFACT_SPEC').group(1))"`
|
ARTIFACT_NAME=`python -c "import re;print(re.search(r':(.*):', '$ARTIFACT_SPEC').group(1))"`
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
#!/bin/env/python
|
||||||
|
|
||||||
|
"""Runs coveralls if in Travis CI build environment. Taken from
|
||||||
|
http://stackoverflow.com/a/33012308/1960601
|
||||||
|
"""
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from subprocess import call
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
if sys.platform.lower().startswith('java'):
|
||||||
|
print("Export to coveralls skipped for Jython")
|
||||||
|
sys.exit(0)
|
||||||
|
if 'TRAVIS' in os.environ:
|
||||||
|
rc = call('coveralls')
|
||||||
|
raise SystemExit(rc)
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
unittest2==0.5.1
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
JPype1==0.6.0
|
|
||||||
unittest2==0.5.1
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
JPype1==0.6.0
|
|
||||||
unittest2==0.5.1
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
JPype1==0.6.0
|
|
||||||
31
tox.ini
31
tox.ini
|
|
@ -1,23 +1,38 @@
|
||||||
[tox]
|
[tox]
|
||||||
envlist = py{26,27,3}-driver-{hsqldb,mock,sqliteXerial},py27-driver-sqlitePy,jython-driver-{hsqldb,mock}
|
envlist = py{26,27,3}-driver-{hsqldb,mock,sqliteXerial},py27-driver-sqlitePy,jython-driver-{hsqldb,mock}
|
||||||
|
|
||||||
|
[travis]
|
||||||
|
python =
|
||||||
|
2.6: py26-driver-{hsqldb,mock,sqliteXerial}
|
||||||
|
2.7: py27-driver-{hsqldb,mock,sqliteXerial,sqlitePy}
|
||||||
|
3.4: py34-driver-{hsqldb,mock,sqliteXerial}
|
||||||
|
3.6: py36-driver-{hsqldb,mock,sqliteXerial}
|
||||||
|
|
||||||
[testenv]
|
[testenv]
|
||||||
|
# usedevelop required to enable coveralls source code view.
|
||||||
|
usedevelop=True
|
||||||
whitelist_externals = mvn
|
whitelist_externals = mvn
|
||||||
setenv = CLASSPATH = {envdir}/javalib/*
|
passenv = TRAVIS TRAVIS_JOB_ID TRAVIS_BRANCH
|
||||||
|
setenv =
|
||||||
|
CLASSPATH = {envdir}/javalib/*
|
||||||
driver-mock: TESTNAME=test_mock
|
driver-mock: TESTNAME=test_mock
|
||||||
driver-hsqldb: TESTNAME=test_integration.HsqldbTest
|
driver-hsqldb: TESTNAME=test_integration.HsqldbTest
|
||||||
driver-sqliteXerial: TESTNAME=test_integration.SqliteXerialTest
|
driver-sqliteXerial: TESTNAME=test_integration.SqliteXerialTest
|
||||||
driver-sqlitePy: TESTNAME=test_integration.SqlitePyTest
|
driver-sqlitePy: TESTNAME=test_integration.SqlitePyTest
|
||||||
deps =
|
deps =
|
||||||
py26: -rrequirements-python-2.6.txt
|
py26: unittest2==0.5.1
|
||||||
py27: -rrequirements-python-2.7.txt
|
# urllib3 required by coveralls. See https://github.com/eddyxu/cpp-coveralls/issues/108
|
||||||
py3: -rrequirements-python-3.4.txt
|
py26: urllib3[secure]
|
||||||
# not required for jython >= 2.7 anymore jython: -rrequirements-jython.txt
|
py: JPype1==0.6.2
|
||||||
jip==0.9.9
|
jip==0.9.10
|
||||||
|
coveralls
|
||||||
commands =
|
commands =
|
||||||
|
python --version
|
||||||
python ci/jipconf_subst.py {envdir} {toxworkdir}/shared
|
python ci/jipconf_subst.py {envdir} {toxworkdir}/shared
|
||||||
driver-hsqldb: jip install org.hsqldb:hsqldb:1.8.0.10
|
driver-hsqldb: jip install org.hsqldb:hsqldb:1.8.0.10
|
||||||
driver-sqliteXerial: jip install org.xerial:sqlite-jdbc:3.7.2
|
driver-sqliteXerial: jip install org.xerial:sqlite-jdbc:3.7.2
|
||||||
driver-mock: mvn -Dmaven.repo.local={toxworkdir}/shared/.m2/repository -f mockdriver/pom.xml install
|
driver-mock: mvn -Dmaven.repo.local={toxworkdir}/shared/.m2/repository -f mockdriver/pom.xml install
|
||||||
driver-mock: jip install org.jaydebeapi:mockdriver:1.0-SNAPSHOT
|
driver-mock: jip install org.jaydebeapi:mockdriver:1.0-SNAPSHOT
|
||||||
{envbindir}/python test/testsuite.py {env:TESTNAME}
|
coverage run -a --source jaydebeapi test/testsuite.py {env:TESTNAME}
|
||||||
driver-hsqldb: {envbindir}/python test/doctests.py
|
driver-hsqldb: coverage run -a --source jaydebeapi test/doctests.py
|
||||||
|
python ci/run_coveralls.py
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue