This repository has been archived by the owner on Feb 16, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 59
/
Copy path.travis.yml
133 lines (124 loc) · 2.76 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
language: rust
cache:
cargo: true
timeout: 500
dist: xenial
sudo: true
# Run builds in Linux, MacOS X and Windows
os:
- linux
- osx
- windows
# Run builds for all the supported trains
rust:
- 1.31.0
- stable
- beta
- nightly
stages:
- test
- deploy
# Extra jobs to include
jobs:
include:
# Test package generation for multiple distributions
- name: "Debian packaging"
os: linux
rust: stable
stage: test
env: CACHE_NAME=DEBIAN
services: docker
script: ./travis-helper.sh dist_test debian
- name: "Ubuntu packaging"
os: linux
rust: stable
stage: test
env: CACHE_NAME=UBUNTU
services: docker
script: ./travis-helper.sh dist_test ubuntu
- name: "Fedora packaging"
os: linux
rust: stable
stage: test
env: CACHE_NAME=FEDORA
services: docker
script: ./travis-helper.sh dist_test fedora
- name: "CentOS packaging"
os: linux
rust: stable
stage: test
env: CACHE_NAME=CENTOS
services: docker
script: ./travis-helper.sh dist_test centos
# Test unstable features
- name: "Unstable features"
os: linux
rust: nightly
stage: test
env: CACHE_NAME=UNSTABLE
services: docker
script: ./travis-helper.sh test_unstable
# Upload documentation
- name: "Documentation upload"
os: linux
rust: stable
stage: deploy
env: CACHE_NAME=DOCS
script: ./travis-helper.sh documentation
deploy: &pages
provider: pages
github-token: $GH_TOKEN
local-dir: target/doc/
skip_cleanup: true
keep-history: true
on:
repo: SUPERAndroidAnalyzer/super
branch: develop
# Deploy the release
- name: "Release deployment"
os: linux
rust: stable
stage: deploy
env: CACHE_NAME=DEPLOY
script: ./travis-helper.sh deploy
deploy: &releases
provider: releases
api_key: $GH_TOKEN
file_glob: true
file: releases/*
skip_cleanup: true
prerelease: true # TODO: remove on 1.0
name: "SUPER $TRAVIS_TAG"
on:
repo: SUPERAndroidAnalyzer/super
tags: true
matrix:
allow_failures:
- os: windows
before_script:
- export PATH=$PATH:~/.cargo/bin
# TODO: change tag when bumping version number. (Maintain in sync with Cargo.toml)
- |
if [[ $TRAVIS_TAG ]]; then
export TAG=$TRAVIS_TAG;
else
export TAG="0.5.1";
fi
# Run the multiple tests.
script:
- ./travis-helper.sh fmt_check
- ./travis-helper.sh clippy_check
- ./travis-helper.sh test
- ./travis-helper.sh test_ignored
# Upload code coverage report
after_success:
- ./travis-helper.sh upload_code_coverage
notifications:
email:
recipients:
on_success: change
on_failure: always