summaryrefslogtreecommitdiffstats
path: root/src/tools/rustfmt/.travis.yml
blob: d699bd842eeccb031b041de681252282f7a229cd (plain)
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
sudo: false
language: rust
rust: nightly
os: linux
cache:
 directories:
  - $HOME/.cargo

addons:
  apt:
    packages:
    - libcurl4-openssl-dev
    - libelf-dev
    - libdw-dev

matrix:
  include:
    - env: DEPLOY=LINUX
    - env: CFG_RELEASE_CHANNEL=beta
    - os: osx
    - env: INTEGRATION=bitflags
    - env: INTEGRATION=chalk
    - env: INTEGRATION=crater
    - env: INTEGRATION=error-chain
    - env: INTEGRATION=glob
    - env: INTEGRATION=log
    - env: INTEGRATION=mdbook
    - env: INTEGRATION=packed_simd
    - env: INTEGRATION=rust-semverver
    - env: INTEGRATION=stdsimd TARGET=x86_64-unknown-linux-gnu
    - env: INTEGRATION=tempdir
    - env: INTEGRATION=futures-rs
  allow_failures:
    # Using old configuration option
    - env: INTEGRATION=rand
    # Doesn't build - keep this in allow_failures as it's fragile to breaking changes of rustc.
    - env: INTEGRATION=rust-clippy
    # Doesn't build - seems to be because of an option
    - env: INTEGRATION=packed_simd
    # Doesn't build - a temporal build failure due to breaking changes in the nightly compilre
    - env: INTEGRATION=rust-semverver
    # can be moved back to include section after https://github.com/rust-lang-nursery/failure/pull/298 is merged
    - env: INTEGRATION=failure
    # `cargo test` doesn't finish - disabling for now.
    # - env: INTEGRATION=cargo

script:
  - |
    if [ -z ${INTEGRATION} ]; then
      export CFG_RELEASE_CHANNEL=nightly
      export CFG_RELEASE=nightly
      cargo build
      cargo test
      cargo test -- --ignored
    else
      ./ci/integration.sh
    fi

after_success:
- if [ -z ${INTEGRATION} ]; then travis-cargo coveralls --no-sudo; fi

before_deploy:
  # TODO: cross build
 - cargo build --release --target=x86_64-unknown-linux-gnu
 - tar czf rustfmt-x86_64-unknown-linux-gnu.tar.gz Contributing.md Design.md README.md -C target/x86_64-unknown-linux-gnu/release/rustfmt rustfmt

deploy:
  provider: releases
  api_key:
    secure: "your own encrypted key"
  file:
  - rustfmt-x86_64-unknown-linux-gnu.tar.gz
  on:
    repo: nrc/rustfmt
    tags: true
    condition: "$DEPLOY = LINUX"
  skip_cleanup: true