summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: 700e7fdf4be76084c87b3a2b71a5503f48ff7a8d (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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
language: rust
sudo: false
dist: trusty
services:
  - docker

rust:
  - 1.1.0  # Oldest supported version
  - 1.2.0
  - 1.3.0
  - 1.4.0
  - 1.5.0
  - 1.6.0
  - stable
  - beta
  - nightly

script:
  - bash ci/run-travis.sh

env:
  - ARCH=x86_64
  - ARCH=i686

os:
  - linux

addons:
  apt:
    packages:
      - gcc-multilib

# Failures on nightly shouldn't fail the overall build.
matrix:
  fast_finish: true
  include:
    # 32-bit and 64-bit OSX builds on oldest/stable
    - os: osx
      env: ARCH=x86_64
      rust: stable
    - os: osx
      env: ARCH=i686
      rust: stable
    - os: osx
      env: ARCH=x86_64
      rust: 1.1.0
    - os: osx
      env: ARCH=i686
      rust: 1.1.0
    # Docker builds for other targets
    - os: linux
      env: TARGET=aarch64-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:arm
      rust: 1.7.0
      sudo: true
    - os: linux
      env: TARGET=arm-unknown-linux-gnueabihf DOCKER_IMAGE=posborne/rust-cross:arm
      rust: 1.7.0
      sudo: true
    - os: linux
      env: TARGET=mips-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
      rust: 1.7.0
      sudo: true
    - os: linux
      env: TARGET=mipsel-unknwon-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
      rust: 1.7.0
      sudo: true
    - os: linux
      env: TARGET=arm-linux-androideabi DOCKER_IMAGE=posborne/rust-cross:android
      rust: 1.7.0
      sudo: true
  allow_failures:
    - rust: nightly
    - env: TARGET=mips-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
    - env: TARGET=mipsel-unknwon-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
    - env: TARGET=arm-linux-androideabi DOCKER_IMAGE=posborne/rust-cross:android

# Deploy documentation to S3 for specific branches. At some
# point, it would be nice to also support building docs for
# a specific tag
deploy:
  provider: s3
  access_key_id: AKIAIGFX36YKEFRZJAXA
  secret_access_key:
    secure: Q10KEdtBoYxaGXtt23L00J0obv9fpVWtao8YKFEroZMOmvu8Sq2+9aTNGEQRp2OojOxuu+DjZInJlUDFhq6trmV3kpZH2BF7cNRxiZQpQ2FEmlr6ZpYN38GhcIUKdxXqVwXiASJi6j+vz6QdpaOGCs5lQC3VhM5sn49MFXNUrFU=
  bucket: rustdoc
  endpoint: "rustdoc.s3-website-us-east-1.amazonaws.com"
  skip_cleanup: true
  local-dir: target/doc
  upload-dir: nix/${TRAVIS_BRANCH}/${TRAVIS_OS_NAME}
  acl: public_read
  on:
    condition: "\"$TRAVIS_RUST_VERSION/$ARCH\" == \"1.1.0/x86_64\""
    repo: carllerche/nix-rust
    branch:
      - master