/
.travis.yml
53 lines (53 loc) · 2.31 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
language: python
python:
- "3.6"
before_install:
# Here, we install the stuff needed to test the q2-rankratioviz plugin.
# This will cause tests to take a while, but that's an ok price to pay.
#
# 1. Install conda (commands from
# https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/use-conda-with-travis-ci.html)
- wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
- bash miniconda.sh -b -p $HOME/miniconda
- export PATH="$HOME/miniconda/bin:$PATH"
- hash -r
- conda config --set always_yes yes --set changeps1 no
- conda update -q conda
- conda info -a
# 2. Install QIIME 2 2019.1 (commands from
# https://docs.qiime2.org/2019.1/install/native)
#
# With QIIME 2 2018.11, I get a version conflict with tensorflow (needed
# for songbird) and Q2's required numpy versions. We could probably get
# around that, but I'm ok with q2-rankratioviz only supporting QIIME 2
# 2019.1 or later.
- wget https://data.qiime2.org/distro/core/qiime2-2019.1-py36-linux-conda.yml
- conda env create -n qiime2-2019.1 --file qiime2-2019.1-py36-linux-conda.yml
- source activate qiime2-2019.1
# 3. Install songbird (needed so QIIME 2 knows how to load
# FeatureData[Differential] artifacts).
- git clone https://github.com/biocore/songbird.git
- pip install -e songbird
install:
- pip install -e .
# Install various external testing/stylechecking packages that we use on
# Travis but aren't required to just use rankratioviz
- pip install flake8
- npm install -g mocha-headless-chrome
- npm install -g jshint
- npm install -g prettier
- npm install -g nyc
script:
# Just to be safe, and to ensure that we pick up on the songbird install
- qiime dev refresh-cache
- make test
- make stylecheck
after_success:
- wget -O codecov.sh https://codecov.io/bash
# Upload coverage information (see
# https://docs.codecov.io/docs/merging-reports). Fortunately, codecov's
# bash script detects both the python and JS code coverage by default --
# so it automatically merges the reports, without us needing to run
# codecov.sh multiple times (although that should be doable also, in case
# future reports aren't automatically detected).
- bash codecov.sh -c