0f6951249e
On CI, we remove this project's artifacts from ./target before caching it. This way, cache never changes, because it only caches deps. We do this approximatelly, and, together with our own tools crate, we also remove itertools, which are used by some other deps. Given that tools change rarely, let's just cache them?
54 lines
1.4 KiB
YAML
54 lines
1.4 KiB
YAML
cache: cargo
|
|
before_cache:
|
|
- find ./target/debug -maxdepth 1 -type f -delete
|
|
- rm -fr ./target/debug/{deps,.fingerprint}/{*ra_*,*test*,*gen_lsp*,*thread_worker*}
|
|
- rm -f ./target/.rustc_info.json
|
|
|
|
matrix:
|
|
include:
|
|
- os: linux
|
|
dist: xenial
|
|
language: rust
|
|
rust: stable
|
|
script:
|
|
- rustup component add rustfmt
|
|
- rustup component add rust-src
|
|
- cargo test --no-run # let's measure compile time separately
|
|
- cargo test
|
|
env:
|
|
- RUSTFLAGS="-D warnings", CARGO_INCREMENTAL=0
|
|
|
|
- os: linux
|
|
if: branch = master AND type = push
|
|
before_script:
|
|
- DEPLOY_DOCS=1
|
|
language: rust
|
|
rust: stable
|
|
script:
|
|
- cargo doc --all --no-deps
|
|
env:
|
|
- RUSTFLAGS="-D warnings", CARGO_INCREMENTAL=0
|
|
|
|
- language: node_js
|
|
node_js: node
|
|
before_script: false
|
|
script:
|
|
- cd editors/code && npm ci && npm run travis
|
|
|
|
branches:
|
|
only:
|
|
- staging
|
|
- master
|
|
- trying
|
|
|
|
deploy:
|
|
provider: pages
|
|
skip-cleanup: true
|
|
github-token: $DOCS_TOKEN # Set in the settings page of your repository, as a secure variable
|
|
keep-history: true
|
|
local-dir: target/doc
|
|
branch: gh-pages
|
|
on:
|
|
branch: master
|
|
condition: $DEPLOY_DOCS = 1
|