/ .travis.yml
.travis.yml
 1  language: rust
 2  cache: cargo
 3  
 4  env:
 5    global:
 6      - PROJECT_NAME=docker-source-checksum
 7  
 8  matrix:
 9    include:
10      # deployments
11      - env: DEPLOY=1 TARGET=x86_64-unknown-linux-musl OPENSSL_DIR=$HOME/openssl-musl
12        before_script: ./ci/travis-musl-openssl.sh
13        script:
14          - cargo build --locked --release --target $TARGET
15        os: linux
16        addons:
17          apt:
18            packages:
19            - musl-tools
20      - env: DEPLOY=1 TARGET=x86_64-apple-darwin OPENSSL_STATIC=yes
21        script:
22          - cargo build --locked --release --target $TARGET
23        os: osx
24      - env: DEPLOY=1 OPENSSL_STATIC=yes TARGET=x86_64-pc-windows-gnu
25        script:
26          - rustup target list
27          - cargo build --locked --release --target $TARGET
28        os: windows
29      - env: DEPLOY=1 OPENSSL_STATIC=yes TARGET=x86_64-pc-windows-msvc
30        script:
31          - rustup target add $TARGET
32          - cargo build --locked --release --target $TARGET
33        os: windows
34  
35      # rustc version compat
36      - rust: 1.41.0 # oldest supported version, keep in sync with README.md
37      - rust: beta
38      - rust: nightly
39  
40    allow_failures:
41      - rust: nightly
42  
43  script:
44    - cargo build --release --locked --verbose
45    - RUST_BACKTRACE=1 cargo test --release --locked --all --verbose
46  
47  before_deploy:
48    - "./ci/prep_deploy.sh"
49  
50  deploy:
51    - provider: releases
52      overwrite: true
53      draft: true
54      api_key:
55        secure: "zeZuoedwGfp296sdBrEMAvwwPHAp+zegbP9MLGW6KJAOU7K/1rwUmHsl4qesBidVj/eIC7QC92h76bHM2sth1UYessDubZKkJe+gzHoQebkY9zHPKhvL0+M7aOJMXy7LCfmO5XFJLTabUGo9Dk5zhIH4rhWS+oEIKlryxwhxGkrWTiv9qz9LGKxsdjrcnqqjpGdad5So1h9K/F1XXoyI1HHdluWxevn29s1b2a2LMwBdMNuTLd7jQRT9j18fN7DbbJ90OHclZO0P3BlG4nF9fCiZt9TH1DL7ZJRjYKiZiJkS4DN0H6wFg3SPw+z9TLoQ/pS1xvdibSDAns21pZgozeC3AQKpNAOcjXuWKaVknvNcbQ6LG4/OcbqzBbmnyt8sSN3WwNn4rxoXAYG4hq/K+IC9r2OVXceyIHhjA0eYKSlgci0i2/pOqp9SdW5T6pmiJHP4fRp/S+VP8GgiVco72Uqic7HxqMjhoFo1Hwfq53TmSn1ZF/wZjn6b+0/BsIXCViyYXQs3kpqnPRKDQg7xp3RaqOosdtyjWnuCNk7vdP6wqlfLXksgs7ok6W5NEXuChj3AiDoE9RQIO34vHLlNKOA9u6yeTdZXPYI+bGV9eCvvBP20dw84IDxBfRiuH9y3J4qqtHmdDPwHDBFd6jX9HKlEU65+vJGsMRwApt3SRwE="
56      file_glob: true
57      file: $PROJECT_NAME-$TRAVIS_TAG-$TARGET.*
58      on:
59        condition: $DEPLOY = 1
60        tags: true
61      skip_cleanup: true
62  
63  cache: cargo
64  before_cache:
65    # Travis can't cache files that are not readable by "others"
66    - chmod -R a+r $HOME/.cargo
67  
68  branches:
69    only:
70      # release tags
71      - /^v\d+\.\d+\.\d+.*$/
72      - master
73      - devel
74  
75  notifications:
76    email:
77      on_success: never