mirror of
https://github.com/WeblateOrg/weblate.git
synced 2026-08-01 06:41:54 +08:00
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>
80 lines
2.7 KiB
YAML
Vendored
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
|