65 lines
1.8 KiB
YAML
65 lines
1.8 KiB
YAML
# Common language header
|
|
language: rust
|
|
cache: cargo
|
|
dist: xenial
|
|
|
|
# Channels and versions I want to build
|
|
rust:
|
|
- stable
|
|
- beta
|
|
- 1.40.0
|
|
- nightly
|
|
|
|
# Operating systems I want to test
|
|
os:
|
|
- linux
|
|
- osx
|
|
- windows
|
|
|
|
# Set global environment only
|
|
env:
|
|
global:
|
|
- CARGO_CI=ci
|
|
- CARGO_DEBUG=1
|
|
- CARGO_DEPLOY=1
|
|
- CARGO_FLAGS=--verbose
|
|
- CARGO_LINTER=fmt
|
|
- secure: "SwxX4DVDM7eS3AjJhdDCAIWIYi9IMfiYIAu+n4Fx4fkPf8RwCg/h1gA4RV6WNZBpus8fzD065GHnYWP6BVllyFzoF2WYG9xBTcSA+gJHFrGSSqa7xNLEZCTUkSb0KLtVv7GbgVZgH4lHgh+BTfAYwTn/ty9bBoz+qlF9k0tRJsP7q8KsL+XSZWIQdQuuCFnjnkaNYoJPg3Iz4BDV77Wyr2hIK1bsos1NNslCUJxp3d3O16lEd0L2uU19iZ6ORgOaTq5NUHZ/mTaRFmtLgZjHHNp0YYaoZCZjNqG5PDXZm0vU7e7rprx6s9p1O9Ll6jEAQcE07tNa1Om26hsYCS4HP5+zqNrhb6d5oB6n5NjobOK3E1AamgbnJglh96lxqreOICGRHEwYurgq+IyxXFE+xGfkxsi45xcdiX0HueFxYgfjbjtB5osXhE0pci2UXMDwcNhjqPs3WZ1cCPQKjYx64Rxt1bnOHLj8BqNmk075wDtHNqzbNI5k5VK9IvajNfXnVLTghFqIccSHNOswVRAmcnH+nc83bj9XCe4JMOh0UzIngg+wRVIcvrTkxWWdVAE0m/8XAJr06ZWF2bGRK2AATJqSeonyBpYxl7kK/qJoUs8oCrcw0KIVe1/Wd7HUwLoy4zxuVxH07F0H/v231Zip3XMvz8P3/1Sfm27MuMYuZlw="
|
|
|
|
install:
|
|
- git clone https://github.com/johnstonskj/rust-ci.git $CARGO_CI
|
|
- $CARGO_CI/bin/cargo-lint.sh --install
|
|
|
|
jobs:
|
|
# Performance tweak
|
|
fast_finish: true
|
|
# Ignore failures in nightly, not ideal, but necessary
|
|
allow_failures:
|
|
- rust: nightly
|
|
- os: osx
|
|
|
|
# Script supports packages and workspaces
|
|
script:
|
|
- $CARGO_CI/bin/cargo-build.sh
|
|
- $CARGO_CI/bin/cargo-lint.sh
|
|
|
|
# Deployment script, this is under test
|
|
deploy:
|
|
provider: script
|
|
on:
|
|
tags: true
|
|
all_branches: true
|
|
condition: "$TRAVIS_RUST_VERSION = stable && $TRAVIS_OS_NAME = linux && $CARGO_DEPLOY = 1"
|
|
script: $CARGO_CI/bin/cargo-publish.sh
|
|
|
|
# Only initiate build on master or tag branches
|
|
branches:
|
|
only:
|
|
- master
|
|
- /\d+\.\d+(\.\d+)?(\-[a-z]+[a-zA-Z0-9]*)?/
|
|
|
|
# Suppress at least some emails
|
|
notifications:
|
|
email:
|
|
on_success: never
|