1- language :rust
2- rust :stable
3- cache :cargo
41
52matrix :
63fast_finish :true
@@ -12,23 +9,25 @@ matrix:
129script :
1310 -cargo build --verbose --all
1411 -cargo test --verbose --all
12+ env :
13+ # Prevention of cache corruption.
14+ # See: https://docs.travis-ci.com/user/caching/#caches-and-build-matrices
15+ -JOBCACHE=1
1516
1617# To test the snippets, we use Travis' Python environment (because
1718# installing rust ourselves is a lot easier than installing Python)
1819 -name :python test snippets
1920language :python
2021python :3.6
2122cache :
22- pip :true
23- # Because we're using the Python Travis environment, we can't use
24- # the built-in cargo cacher
25- directories :
26- -/home/travis/.cargo
27- -target
23+ -pip
24+ -cargo
2825env :
26+ -JOBCACHE=2
2927 -TRAVIS_RUST_VERSION=stable
3028 -CODE_COVERAGE=false
3129script :tests/.travis-runner.sh
30+
3231 -name :rustfmt
3332language :rust
3433rust :stable
@@ -42,6 +41,9 @@ matrix:
4241# creates.)
4342 -echo > parser/src/python.rs
4443 -cargo fmt --all -- --check
44+ env :
45+ -JOBCACHE=3
46+
4547 -name :publish documentation
4648language :rust
4749rust :stable
@@ -50,7 +52,17 @@ matrix:
5052 -cargo doc --no-deps --all
5153if :branch = release
5254env :
53- -DEPLOY_DOC=true
55+ -JOBCACHE=4
56+ deploy :
57+ -provider :pages
58+ repo :RustPython/website
59+ target-branch :master
60+ local-dir :target/doc
61+ skip-cleanup :true
62+ # Set in the settings page of your repository, as a secure variable
63+ github-token :$WEBSITE_GITHUB_TOKEN
64+ keep-history :true
65+
5466 -name :WASM online demo
5567language :rust
5668rust :stable
@@ -65,42 +77,38 @@ matrix:
6577 -npm run dist
6678if :branch = release
6779env :
68- -DEPLOY_DEMO=true
69- -name :cargo-clippy
70- language :rust
71- rust :stable
72- cache :cargo
73- before_script :
74- -rustup component add clippy
75- script :
76- -cargo clippy
80+ -JOBCACHE=5
81+ deploy :
82+ -provider :pages
83+ repo :RustPython/demo
84+ target-branch :master
85+ local-dir :wasm/demo/dist
86+ skip-cleanup :true
87+ # Set in the settings page of your repository, as a secure variable
88+ github-token :$WEBSITE_GITHUB_TOKEN
89+ keep-history :true
90+
7791 -name :Code Coverage
7892language :python
7993python :3.6
8094cache :
81- pip :true
82- # Because we're using the Python Travis environment, we can't use
83- # the built-in cargo cacher
84- directories :
85- -/home/travis/.cargo
86- -target
95+ -pip
96+ -cargo
8797script :
8898 -tests/.travis-runner.sh
8999# Only do code coverage on master via a cron job.
90100if :branch = master AND type = cron
91101env :
102+ -JOBCACHE=6
92103 -TRAVIS_RUST_VERSION=nightly
93104 -CODE_COVERAGE=true
105+
94106 -name :test WASM
95107language :python
96108python :3.6
97109cache :
98- pip :true
99- # Because we're using the Python Travis environment, we can't use
100- # the built-in cargo cacher
101- directories :
102- -/home/travis/.cargo
103- -target
110+ -pip
111+ -cargo
104112addons :
105113firefox :latest
106114install :
@@ -109,30 +117,5 @@ matrix:
109117script :
110118 -wasm/tests/.travis-runner.sh
111119env :
120+ -JOBCACHE=7
112121 -TRAVIS_RUST_VERSION=stable
113- allow_failures :
114- -name :cargo-clippy
115-
116- deploy :
117- -provider :pages
118- repo :RustPython/website
119- target-branch :master
120- local-dir :target/doc
121- skip-cleanup :true
122- # Set in the settings page of your repository, as a secure variable
123- github-token :$WEBSITE_GITHUB_TOKEN
124- keep-history :true
125- on :
126- branch :release
127- condition :$DEPLOY_DOC = true
128- -provider :pages
129- repo :RustPython/demo
130- target-branch :master
131- local-dir :wasm/demo/dist
132- skip-cleanup :true
133- # Set in the settings page of your repository, as a secure variable
134- github-token :$WEBSITE_GITHUB_TOKEN
135- keep-history :true
136- on :
137- branch :release
138- condition :$DEPLOY_DEMO = true