vnpy/.travis.yml

147 lines
5.6 KiB
YAML
Raw Normal View History

2019-01-07 06:20:39 +00:00
language: python
2019-03-19 05:41:54 +00:00
dist: xenial # required for Python >= 3.7 (travis-ci/travis-ci#9069)
2019-01-07 06:20:39 +00:00
python:
2019-03-19 05:41:54 +00:00
- "3.7"
2019-04-15 07:17:30 +00:00
services:
- mongodb
- mysql
- postgresql
before_script:
- psql -d postgresql://postgres:${VNPY_TEST_POSTGRESQL_PASSWORD}@localhost -c "create database vnpy;"
- mysql -u root --password=${VNPY_TEST_MYSQL_PASSWORD} -e 'CREATE DATABASE vnpy;'
script:
2019-04-15 07:17:30 +00:00
- pip install psycopg2 mongoengine pymysql # we should support all database in test environment
- cd tests; source travis_env.sh;
- python test_all.py
2019-03-19 05:41:54 +00:00
matrix:
include:
2019-03-19 10:38:24 +00:00
- name: "code quality analysis: flake8"
before_install:
- pip install flake8
install:
- "" # prevent running "pip install -r requirements.txt"
script:
- flake8
2019-03-19 11:31:28 +00:00
- name: "pip install under Windows"
os: "windows"
2019-04-15 07:17:30 +00:00
services: [] # service is unavailable under windows
2019-03-29 10:13:38 +00:00
# language : cpp is necessary for windows
2019-03-19 11:31:28 +00:00
language: "cpp"
env:
2019-04-15 07:17:30 +00:00
- PATH="/c/Python37:/c/Python37/Scripts:/c/tools/mysql/current/bin:/c/Program Files/PostgreSQL/10/bin:$PATH"
2019-03-19 11:31:28 +00:00
before_install:
2019-04-15 07:17:30 +00:00
- choco install -yf mysql mongodb
# I don't know how enable a "trust" auth method in choco installed psql
- choco install -yf postgresql10 --params '/Password:1234'
- export VNPY_TEST_POSTGRESQL_PASSWORD=1234
- choco install -yf python3 --version 3.7.2
2019-03-19 11:31:28 +00:00
install:
- python -m pip install --upgrade pip wheel setuptools
2019-04-03 06:46:43 +00:00
- pip install https://pip.vnpy.com/colletion/TA_Lib-0.4.17-cp37-cp37m-win_amd64.whl
- pip install https://pip.vnpy.com/colletion/ibapi-9.75.1-001-py3-none-any.whl
2019-03-19 11:31:28 +00:00
- pip install -r requirements.txt
- pip install .
2019-03-19 10:38:24 +00:00
- name: "pip install under Ubuntu: gcc-8"
before_install:
2019-03-19 05:41:54 +00:00
# C++17
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
- sudo apt-get update -y
2019-03-19 05:41:54 +00:00
install:
# C++17
- sudo apt-get install -y gcc-8 g++-8
2019-03-19 05:41:54 +00:00
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 90
- sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++-8 90
- sudo update-alternatives --install /usr/bin/gcc cc /usr/bin/gcc-8 90
2019-04-03 06:46:43 +00:00
# update pip & setuptools
- python -m pip install --upgrade pip wheel setuptools
2019-04-03 06:46:43 +00:00
# Linux install script
- pip install https://pip.vnpy.com/colletion/ibapi-9.75.1-001-py3-none-any.whl
2019-03-19 05:41:54 +00:00
- bash ./install.sh
2019-03-19 10:38:24 +00:00
- name: "pip install under Ubuntu: gcc-7"
before_install:
2019-03-19 10:38:24 +00:00
# C++17
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
- sudo apt-get update -y
2019-03-19 05:41:54 +00:00
install:
2019-03-19 10:38:24 +00:00
# C++17
- sudo apt-get install -y gcc-7 g++-7
2019-03-19 10:38:24 +00:00
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 90
- sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++-7 90
- sudo update-alternatives --install /usr/bin/gcc cc /usr/bin/gcc-7 90
2019-04-03 06:46:43 +00:00
# update pip & setuptools
2019-03-28 05:58:50 +00:00
- python -m pip install --upgrade pip wheel setuptools
2019-04-03 06:46:43 +00:00
# Linux install script
- pip install https://pip.vnpy.com/colletion/ibapi-9.75.1-001-py3-none-any.whl
2019-03-19 10:38:24 +00:00
- bash ./install.sh
2019-04-15 07:17:30 +00:00
- name: "pip install under osx"
os: osx
language: shell # osx supports only shell
services: []
before_install: []
install:
- pip3 install https://pip.vnpy.com/colletion/ibapi-9.75.1-001-py3-none-any.whl
- bash ./install_osx.sh
before_script: []
script:
- pip3 install psycopg2 mongoengine pymysql # we should support all database in test environment
- cd tests; source travis_env.sh;
# osx is complicated for me, skip the tests
# python3 test_all.py
- name: "sdist install under Windows"
os: "windows"
2019-04-15 07:17:30 +00:00
services: [] # service is unavailable under windows
2019-03-29 10:13:38 +00:00
# language : cpp is necessary for windows
language: "cpp"
env:
2019-04-15 07:17:30 +00:00
- PATH="/c/Python37:/c/Python37/Scripts:/c/tools/mysql/current/bin:/c/Program Files/PostgreSQL/10/bin:$PATH"
before_install:
2019-04-15 07:17:30 +00:00
- choco install -yf mysql mongodb
# I don't know how enable a "trust" auth method in choco installed psql
- choco install -yf postgresql10 --params '/Password:1234'
- export VNPY_TEST_POSTGRESQL_PASSWORD=1234
- choco install -yf python3 --version 3.7.2
install:
- python -m pip install --upgrade pip wheel setuptools
- python setup.py sdist
- pip install https://pip.vnpy.com/colletion/TA_Lib-0.4.17-cp37-cp37m-win_amd64.whl
- pip install https://pip.vnpy.com/colletion/ibapi-9.75.1-001-py3-none-any.whl
- pip install dist/`ls dist`
2019-03-29 06:53:28 +00:00
- name: "sdist install under Ubuntu: gcc-8"
before_install:
# C++17
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
- sudo apt-get update -y
install:
# C++17
- sudo apt-get install -y gcc-8 g++-8
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 90
- sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++-8 90
- sudo update-alternatives --install /usr/bin/gcc cc /usr/bin/gcc-8 90
# Linux install script
- python -m pip install --upgrade pip wheel setuptools
2019-03-29 06:49:18 +00:00
- pushd /tmp
- wget http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-src.tar.gz
- tar -xf ta-lib-0.4.0-src.tar.gz
- cd ta-lib
- ./configure --prefix=/usr
- make
- sudo make install
- popd
2019-03-29 08:06:25 +00:00
- pip install numpy
2019-03-29 10:13:38 +00:00
- pip install https://pip.vnpy.com/colletion/ibapi-9.75.1-001-py3-none-any.whl
- python setup.py sdist
- pip install dist/`ls dist`
2019-04-15 07:17:30 +00:00