forked from chanzuckerberg/miniwdl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
48 lines (43 loc) · 2.36 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
language: python
dist: bionic
services:
- docker
env:
global:
- DOCKER_CACHE_TAG=quay.io/mlin/miniwdl_ci:latest
- secure: "nxHBaRAUj641OAFDBYGp+VZ5U7txbm8BLanBCQE0SuulFCTz1mYf8+vEHPkhkm0hcQrghnvB27NT/1EwXJQcJTwX/+HF8ealhgogvJKcgiLNLGVLIK2DF/D2hYjbOFAX9yV4hMX6EFNwEVBiH+8OfI5JxXNPzAnDFJpyEHENe8LDEP4IpmGsjgcY8569zDJjT91Rc43YOKMiQDZFWqdN75CQDwP8EOhR7AKOt8kzpuNCR5Ovh1qEfXbvmdK2qnyUAo9ODJD4QF4Zps+HTs8GfTpn9Z6l1J4Nv2ACYEeB8ZTwy/0EBvzuM9QSHvlgCe9EjKoXQWV9qPQ3M1FBYs4dSDLiB2ILatRBbGxPP1QUP+uSFpmvxiWaAuUd6SgANVL880s8aCa5M+3gQ4QoxabcX9vyvdbWd69fJFXbv4XSwtTYrqTxwjhaeQ/oFhSgQISIs09IMDVqqSwTAJ/5hKMnJRdpemQIOEuKC3bvP/CoawxK4v5scGhYoa5tlYijQumQJj71/YgqAXCm3Si8283fBxbxZwch+JRNSWq/msaco6OMqi8dfgA2M/C3ovuFKeat0kdWFUwfzhmd1yUYyE+eorotrV+lb+rXwY7tLRV4BySNvixjOcfUQqKagnbyUHFNKti/obfywAS1xHRAfiNEbKJDGjZdDRjBmTld9DYhwrc="
# Pull docker image layers from the last successful build, in hopes we might reuse the package
# installation steps when we docker build --cache-from
install:
- docker pull $DOCKER_CACHE_TAG || true
script:
- |
set -e
docker build -t miniwdl_deps --target deps --cache-from $DOCKER_CACHE_TAG .
docker build -t miniwdl --cache-from miniwdl_deps .
docker run --env TRAVIS_JOB_ID=${TRAVIS_JOB_ID} --env TRAVIS_BRANCH=${TRAVIS_BRANCH} \
--group-add $(stat -c %g /var/run/docker.sock) -v /var/run/docker.sock:/var/run/docker.sock -v /tmp:/tmp \
miniwdl make $CI_TARGET
jobs:
include:
- env: CI_TARGET=ci_housekeeping
after_success:
- |
# Push layers back to the registry for the next build(s) to use. From time to time, one
# should delete the 'latest' tag via the quay.io website to trigger a refresh.
if [ -n "$QUAY_PASSWORD" ]; then # secure variable won't be available in others' PRs
docker tag miniwdl_deps $DOCKER_CACHE_TAG
echo "$QUAY_PASSWORD" | docker login -u mlin+miniwdl_ci --password-stdin quay.io
docker push $DOCKER_CACHE_TAG
fi
- env: CI_TARGET=ci_unit_tests
- env: CI_TARGET=integration_tests
- env: CI_TARGET=skylab_bulk_rna
- env: CI_TARGET=DVGLx
- env: CI_TARGET=viral_assemble
allow_failures:
- env: CI_TARGET=skylab_bulk_rna
- env: CI_TARGET=DVGLx
- env: CI_TARGET=viral_assemble
fast_finish: true
# bash -c "while true ; do sleep 60; docker service ls; done" &