forked from broadinstitute/gatk
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.travis.yml
More file actions
97 lines (96 loc) · 3.82 KB
/
.travis.yml
File metadata and controls
97 lines (96 loc) · 3.82 KB
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
language: java
sudo: required
dist: trusty
git:
depth: 9999999
jdk:
- oraclejdk8
env:
matrix:
- TEST_TYPE=cloud
- TEST_TYPE=integration TEST_VERBOSITY=minimal
- TEST_TYPE=unit TEST_VERBOSITY=minimal
global:
#for genomics db
- LD_LIBRARY_PATH=$TRAVIS_BUILD_DIR/dependencies/libcsv/.libs
#gradle needs this
- TERM=dumb
#limit gradle jvm memory and disable daemon
- GRADLE_OPTS="-Xmx1024m -Dorg.gradle.daemon=false"
#google cloud stuff
- CLOUDSDK_CORE_DISABLE_PROMPTS=1
- GCLOUD=$HOME/gcloud/google-cloud-sdk/bin
- CLOUDSDK_PYTHON_SITEPACKAGES=1
- GOOGLE_APPLICATION_CREDENTIALS=$TRAVIS_BUILD_DIR/servicekey.json
#Path to GenomicsDB binaries
- GATK_GENOMICSDB_BIN=src/test/resources/large/tiledb_bin
#hellbender specific variables
- HELLBENDER_TEST_INPUTS=gs://hellbender/test/resources/
- HELLBENDER_TEST_STAGING=gs://hellbender/test/staging/
- HELLBENDER_TEST_PROJECT=broad-dsde-dev
- HELLBENDER_JSON_SERVICE_ACCOUNT_KEY=servicekey.json
#google API key
- secure: "eHyDxfcfv6pSIkoqQ9PimiYu9I6vmXJOpY/OkXLkc7ZAUfNTfRVytUGG9Xf/bKKF+Wscm5pIfZJ/TMDG6E3Uyngs9nVK/29QWevcEaLDJy8OdI9OgPZb13hlbM2jbVv5AVBGYcbcNBrTvrTs0MOMOFPEJqZ99xWIj5bzZ/AsIfU="
#for uploading artifacts
- ARTIFACTORY_USERNAME=gatkci
#artifactory password
- secure: "E0LWXgX3aWSE/DWHXXDx4vrAq4uX6vKg402wToaZ5otbHQ/UP0H7/FA5jomavAXoC46oMVHZcEltZ5OVhuJ0NW8yYxUCecJ1D/YvVQmnfFABcV/qLM+k4e2rYQOKVw/pejB2gG8XdTA+XE2WyTeENbmIkputS8f1ndKWCmZxuuk="
matrix:
fast_finish: true
before_cache:
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
cache:
directories:
- $HOME/.gradle/caches/
- $HOME/.gradle/wrapper/
- $HOME/gcloud/
before_install:
#setup google stuff
- if [ $TRAVIS_SECURE_ENV_VARS == true ]; then
openssl aes-256-cbc -K $encrypted_29f3b7c4d8c3_key -iv $encrypted_29f3b7c4d8c3_iv -in resources_for_CI/servicekey.json.enc -out servicekey.json -d;
scripts/install_gcloud.sh;
printf 'y\n' | $GCLOUD/gcloud components update app;
$GCLOUD/gcloud config set project broad-dsde-dev;
$GCLOUD/gcloud auth activate-service-account --key-file servicekey.json;
fi
#install R
- sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9
- sudo add-apt-repository "deb http://cran.rstudio.com/bin/linux/ubuntu trusty/"
- sudo apt-get update
- sudo apt-get install -y --force-yes r-base
- R --version
install:
- if [[ $TRAVIS_SECURE_ENV_VARS == false && $TEST_TYPE == cloud ]]; then
echo "Can't run cloud tests without keys so don't bother building";
else
./gradlew assemble;
./gradlew installDist;
fi
script:
# run a basic sanity check to be sure that gatk-launch doesn't explode
# install git-lfs
# run tests
- if [[ $TRAVIS_SECURE_ENV_VARS == false && $TEST_TYPE == cloud ]]; then
echo "Can't run cloud tests without keys so don't run tests";
else
./gatk-launch PrintReads -I src/test/resources/NA12878.chr17_69k_70k.dictFix.bam -O output.bam;
bash scripts/install_git_lfs.sh;
travis_wait 30 ./gradlew jacocoTestReport;
fi
after_success:
- bash <(curl -s https://codecov.io/bash)
- if [[ $TRAVIS_BRANCH == master && $TEST_TYPE == integration ]]; then ./gradlew uploadArchives; fi
# if this is actually a commit to master and not a pull request build into master, then publish master-snapshot
- if [[ $TRAVIS_BRANCH == master && $TRAVIS_PULL_REQUEST == false && $TEST_TYPE == integration ]]; then
git tag master;
./gradlew uploadArchives;
fi
after_failure:
- dmesg | tail -100
after_script:
- if [ $TRAVIS_SECURE_ENV_VARS == true ]; then
$GCLOUD/gcloud components -q update gsutil;
REPORT_PATH=$TRAVIS_BRANCH_$TRAVIS_JOB_NUMBER;
$GCLOUD/gsutil -m cp -z html -z js -z xml -z css -r build/reports/tests gs://hellbender/test/build_reports/$REPORT_PATH/;
echo "See the test report at https://storage.googleapis.com/hellbender/test/build_reports/$REPORT_PATH/tests/test/index.html";
fi