forked from broadinstitute/viral-pipelines
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
168 lines (152 loc) · 5.01 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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
dist: focal
os: linux
git:
depth: 150
services:
- docker
env:
global:
- CACHE_DIR="$HOME/misc_cache"
- MINICONDA_DIR="$HOME/miniconda"
- CONDA_DEFAULT_ENV="$HOME/misc_cache/default_env"
- PYTHONIOENCODING=UTF8
- BOTO_CONFIG=/dev/null # bogus value to override config on travis
- DOCKER_REGISTRY="quay.io"
- DOCKER_REPO_PROD="quay.io/broadinstitute/viral-pipelines"
- DOCKER_REPO_DEV="quay.io/broadinstitute/viral-pipelines-dev"
- MODULE_VERSIONS="requirements-modules.txt"
cache:
directories:
- $HOME/misc_cache
- $HOME/miniconda
timeout: 1000
stages:
- validate
- build
jobs:
fast_finish: true
include:
- language: python
stage: validate
python: "3.8"
env:
- TRAVIS_JOB=validate_wdl_miniwdl
before_install:
- sudo apt-get update
- sudo apt-get -y install shellcheck
install:
- pip3 -q install miniwdl
script:
- travis/check-wdl-runtimes.sh
- miniwdl check pipes/WDL/workflows/*.wdl
- language: java
jdk: openjdk11
stage: validate
env:
- TRAVIS_JOB=validate_wdl_womtool
install:
- travis/install-wdl.sh
script:
- travis/check-wdl-runtimes.sh
- travis/validate-wdl-womtool.sh
- language: python
stage: validate
env: TRAVIS_JOB=test_docs
install: travis/install-pip-docs.sh
script: travis/build-docs.sh
## note: this build_docs job does not actually produce the output on readthedocs
## readthedocs does its own build trigger. this travis job exists simply to alert us
## of build failures of the docs because otherwise we would never know.
- language: java
jdk: openjdk11
stage: build
env:
- TRAVIS_JOB=test_cromwell
install:
- travis/install-wdl.sh
script:
- travis/check-wdl-runtimes.sh
- travis/relative-wdl-paths.sh
- travis/tests-cromwell.sh
- language: python
stage: build
python: "3.8"
env:
- TRAVIS_JOB=test_miniwdl
before_install:
- sudo apt-get update
- sudo apt-get -y install jq
install:
- pip3 -q install miniwdl
script:
- travis/check-wdl-runtimes.sh
- travis/tests-miniwdl.sh
- language: java
jdk: openjdk11
stage: build
env:
- TRAVIS_JOB=deploy_dnanexus
# DX_API_TOKEN (for DNAnexus builds) -- token #3, expires 12/31/2024
- secure: "zAAxwXWwSDcwnLYHawc0+gbshV3UURAZWSyk8g99kXgFCRcgytacvUpRxd44mC+rlgL2RtS8+RPT11hO2zJ+4y0J0FBaC8d9R7aTzEAGKLHk11cfhMg63QMVBt/8Gz9HToeE0BJ8/JbNZr+IZ01dD8GNDRA4FcFj+8maTpp4nrQ5/leDdmUwzkV1XfMiE+0/wR3KttKvqzHy6+6gRTAKbTeSxPICvWpHKlIYkIxFcEoH+3SNxgwWU9jZqG29MRt3/ikzZMBW/T2O9g+tY/5vKRqxm9aqWChFgjrpWRZDwvZqvwdxizokoVfReLZES3Ls//YSKzfFJG2GZ6a2vhAbfjcUkbRnyPOcZPwK+sE91Pq7FgFwL4N8BV63j6GQ5VrHZxe0b6spw8gvlkEjjhBgN1178lcxnp75QANNJ8AprZBqi3MzTQOTlgRZRAsDWTLgpXODrcDib76pg3af+JK5PQb0ncRVps9Z09u2EJ8fk9MGCDB6iw7XFedPPCxlx6MyIp2ywF4v9mkQXUBafYo67KRyPaojUUDGFkJsylYxzGHvvp0PrU93cp8zvDg4NqUkrbgEdGVvPF+qmXxT9MpfLc/yZ4vfhtKfZuQUGmNw+5WfTa3RYbJDEowN6noWCdXBZ67SrusKrok3TxIJV25vxXrFVhD/u/3ermysu7xA9ss="
- DX_PROJECT=project-F8PQ6380xf5bK0Qk0YPjB17P
before_install:
- sudo apt-get -y install python2-minimal
install:
- travis/install-wdl.sh
script:
- set -e
- travis/check-wdl-runtimes.sh
- travis/relative-wdl-paths.sh
- travis/build-dx.sh
- travis/tests-dx.sh
- language: python
stage: build
python: "3.8"
env:
- TRAVIS_JOB=deploy_github_staging
install:
- pip3 -q install miniwdl
script:
- travis/github-viral-ngs-staging.sh
after_failure:
- sleep 10
- language: python
stage: build
python: "3.8"
env:
- TRAVIS_JOB=deploy_gcs
script: skip
before_deploy:
- set -e -o pipefail
- openssl aes-256-cbc -K $encrypted_6def3e87f286_key -iv $encrypted_6def3e87f286_iv -in travis/viral-ngs-wdl.json.enc -out travis/viral-ngs-wdl.json -d
- export DEST_DIR=`travis/list-docker-tags.sh | tail -1 | sed 's/:/\//'`
- pip3 -q install miniwdl
- travis/check-wdl-runtimes.sh
- travis/flatten-wdls.sh
deploy:
provider: gcs
edge: true
key_file: travis/viral-ngs-wdl.json
bucket: viral-ngs-wdl
local_dir: pipes/WDL/flattened
upload_dir: "$DEST_DIR"
acl: public-read
on:
all_branches: true
#- language: python
# stage: build
# python: "3.8"
# env:
# - TRAVIS_JOB=deploy_github
# before_deploy:
# - set -e
# - pip3 -q install miniwdl
# - travis/check-wdl-runtimes.sh
# - travis/flatten-wdls.sh
# deploy:
# provider: releases
# edge: true
# token: "$GITHUB_OAUTH_TOKEN"
# file: pipes/WDL/flattened/*.wdl
# on:
# tags: true