weblate/.travis.yml
Michal Čihař a77d868a5a Revert Travis CI to use Precise
Even though the Trusty should be default in few days, there still seem
to be some problems with the MySQL server.

Let's just postpone Trusty usage until that is resolved.

Signed-off-by: Michal Čihař <michal@cihar.com>
2017-07-14 17:08:57 +02:00

80 lines
2.7 KiB
YAML
Vendored

#
# Weblate testsuite for Travis-CI
#
# - Test against all supported Django versions with postgresql
# - Test against all supported databases with current Django
# - Run Selenium tests on current Django
# - Test setup.py
#
dist: precise
language: python
python:
- "2.7"
# build matrix configuration
env:
matrix:
- CI_DEPS="Django>=1.10,<1.11" CI_DATABASE=postgresql
- CI_DEPS="Django>=1.11,<1.12" CI_DATABASE=sqlite
- CI_DEPS="Django>=1.11,<1.12" CI_DATABASE=mysql
- CI_DEPS="Django>=1.11,<1.12" CI_DATABASE=postgresql
- CI_DEPS="Django>=1.11,<1.12" CI_DATABASE=postgresql CI_MODE=selenium
- CI_DEPS="Django>=1.11,<1.12" CI_DATABASE=postgresql CI_MODE=setup
- CI_DEPS="sphinxcontrib-httpdomain" CI_MODE=docs
global:
- DJANGO_SETTINGS_MODULE=weblate.settings_test
- CI_MODE=test
# commands to install dependencies
install:
- export TESSERACT_INSTALL=`pwd`/.tesseract
- export TESSERACT_PKG=$TESSERACT_INSTALL/lib/pkgconfig
- export LD_LIBRARY_PATH=$TESSERACT_INSTALL/lib:$LD_LIBRARY_PATH
- export PKG_CONFIG_PATH=$TESSERACT_PKG:$PKG_CONFIG_PATH
- export TESSDATA_PREFIX=/usr/share/tesseract-ocr/tessdata/
- wget --no-check-certificate -O - https://dl.cihar.com/ci/tesseract.tar.xz | tar xJ
- if [ ! -f $TESSERACT_PKG/tesseract.pc -o ! -f $TESSERACT_PKG/lept.pc ] ; then ./ci/install-tesseract ; fi
# Get newer pip and whell for binary caching support
- pip install --upgrade pip wheel
# Install PyPI packages
- pip install $CI_DEPS Cython
- pip install -r requirements-optional.txt -r ci/requirements-travis.txt
- if [ -n "$CI_DATABASE" -a -f ci/requirements-${CI_DATABASE}.txt ] ; then pip install -r ci/requirements-${CI_DATABASE}.txt ; fi
- if [ "$CI_MODE" = selenium -a -n "$SAUCE_USERNAME" -a -n "$SAUCE_ACCESS_KEY" ] ; then ./ci/install-sauce ; fi
# create databases
before_script:
- mysql -e 'DROP DATABASE IF EXISTS weblate;' -uroot
- mysql -e 'CREATE DATABASE weblate CHARACTER SET utf8 COLLATE utf8_general_ci;' -uroot
- psql -c 'DROP DATABASE IF EXISTS weblate;' -U postgres
- psql -c 'CREATE DATABASE weblate;' -U postgres
- ./manage.py list_versions
# commands to run tests
script:
- ./ci/run-$CI_MODE
# upload coverage
after_script:
# Kill Sauce Connect Proxy if running
- if [ -f ~/.sauce-pid ] ; then kill `cat ~/.sauce-pid` ; fi
# Combine partial reports
- coverage combine
- coverage xml
# CodeCov
- codecov
# Codacy
- python-codacy-coverage -r coverage.xml
# use docker based faster build
sudo: false
matrix:
include:
- python: "3.6"
env: CI_DEPS="Django>=1.11,<1.12" CI_DATABASE=postgresql
addons:
apt:
packages:
- git-svn
- graphviz
- tesseract-ocr
- g++
services:
- postgresql
- mysql
cache:
pip: true