forked from wurmlab/sequenceserver
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
74 lines (68 loc) · 3.25 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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
language: ruby
rvm:
- 2.3
# - 2.5
branches:
only:
- 1.0.x # stable
- master
cache:
directories:
- opt
bundler: true
before_install:
# We will download geckodriver, codeclimate test reporter, and NCBI BLAST+ to
# opt/. opt/ is cached to speed up subsequent runs. codeclimate test reporter
# and geckodriver contain a single executable and are thus placed in opt/bin,
# instead of in their own directory like NCBI BLAST+
- mkdir -p opt/bin && cd opt
# Download geckodriver and extract to bin
- wget -c "https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v0.24.0-linux64.tar.gz" && tar xvf geckodriver-*.tar.gz -C bin
# Download codeclimate test reporter to bin and make it executable
- wget -c "https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64" -O bin/cc-test-reporter && chmod +x bin/cc-test-reporter
# Download and extract NCBI BLAST+ 2.10.0
- wget -c "ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.10.0/ncbi-blast-2.10.0+-x64-linux.tar.gz" && tar xvf ncbi-blast-*.tar.gz
# Conclude installation by adding opt/bin/ containing codeclimate test reporter
# and geckodriver, and opt/ncbi-blast-2.10.0+/bin containing BLAST+ binaries to
# PATH.
- export PATH="$PWD/bin:$PWD/ncbi-blast-2.10.0+/bin:$PATH"
# Reset working directory or subsequent steps may fail.
- cd ..
# Update bundler. Travis was using bundler 1.16.2 at the time of this writing
# and the builds were failing because Gemfile.lock requires bundler > 2.0
- gem install bundler -v 2.1.4
env:
global:
- CC_TEST_REPORTER_ID=ec48bb03c72db6b43ce71fd488110b4707abfde4386c144d886d711378d8db64
before_script:
# Create configuration file for SequenceServer. FIXME: this should not
# really be required for running test suite, but it is at the moment
- bundle exec bin/sequenceserver -s -d spec/database/v5/sample
# Run codeclimate test reporter's before-build hook.
- if [ "${TRAVIS_BUILD_STAGE_NAME}" = "Test" ]; then
cc-test-reporter before-build;
fi
script:
# Run main specs and import spec for BLAST 2.9.0+
- bundle exec rspec spec/*_spec.rb spec/blast_versions/blast_2.9.0/*
after_script:
- if [ "${TRAVIS_BUILD_STAGE_NAME}" = "Test" ]; then
cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT;
fi
# jobs:
# include:
# # Each script listed below is automatically run by Travis in parallel, and only
# # against Ruby 2.3 (because it is listed first in the rvm key), and after the
# # main test stage. We use a glob pattern here instead of specifying just the
# # directory name because capybara spec files in subfolders don't end with
# # _spec.rb.
# - stage: compatibility
# script: bundle exec rspec spec/blast_versions/diamond_0.9.24/*
# - script: bundle exec rspec spec/blast_versions/blast_2.2.30/*
# - script: bundle exec rspec spec/blast_versions/blast_2.2.31/*
# - script: bundle exec rspec spec/blast_versions/blast_2.3.0/*
# - script: bundle exec rspec spec/blast_versions/blast_2.4.0/*
# - script: bundle exec rspec spec/blast_versions/blast_2.5.0/*
# - script: bundle exec rspec spec/blast_versions/blast_2.6.0/*
# - script: bundle exec rspec spec/blast_versions/blast_2.7.1/*
# - script: bundle exec rspec spec/blast_versions/blast_2.8.1/*