1521982891
Just uses github.com/japaric/trust to for continuous integration and release building. trust uses github.com/rust-embedded/cross, which no longer supports FreeBSD. (See github.com/rust-embedded/cross/issues/274 for details.) Sadly, it's probably too much work to dive in and fix the FreeBSD image for cross, so this commit disables the FreeBSD builds and releases on Travis. I don't think we've ever seen a build failure on BSD only, so losing the test coverage isn't a big deal. It is unfortunate that we'll lose FreeBSD release builds though. I don't think Just is in the FreeBSd ports tree, so it would be nice if someone wanted to package it and get it in there.
117 lines
3.7 KiB
YAML
117 lines
3.7 KiB
YAML
# Based on the "trust" template v0.1.1
|
|
# https://github.com/japaric/trust/tree/v0.1.1
|
|
|
|
dist: trusty
|
|
language: rust
|
|
services: docker
|
|
sudo: required
|
|
|
|
# DONE Rust builds on stable by default, this can be
|
|
# overridden on a case by case basis down below.
|
|
|
|
env:
|
|
global:
|
|
# DONE Update this to match the name of your project.
|
|
- CRATE_NAME=just
|
|
|
|
matrix:
|
|
# DONE These are all the build jobs. Adjust as necessary. Comment out what you
|
|
# don't need
|
|
include:
|
|
# Linux
|
|
#- env: TARGET=i686-unknown-linux-gnu
|
|
#- env: TARGET=i686-unknown-linux-musl
|
|
#- env: TARGET=x86_64-unknown-linux-gnu
|
|
- env: TARGET=x86_64-unknown-linux-musl
|
|
|
|
# OSX
|
|
#- env: TARGET=i686-apple-darwin
|
|
# os: osx
|
|
# before_install:
|
|
# - set -e
|
|
# - brew install dash
|
|
- env: TARGET=x86_64-apple-darwin
|
|
os: osx
|
|
before_install:
|
|
- set -e
|
|
- brew update
|
|
- brew install dash
|
|
|
|
# *BSD
|
|
#- env: TARGET=i686-unknown-freebsd DISABLE_TESTS=1
|
|
#- env: TARGET=x86_64-unknown-freebsd DISABLE_TESTS=1
|
|
#- env: TARGET=x86_64-unknown-netbsd DISABLE_TESTS=1
|
|
|
|
# Other architectures
|
|
#- env: TARGET=aarch64-unknown-linux-gnu
|
|
#- env: TARGET=armv7-unknown-linux-gnueabihf
|
|
#- env: TARGET=mips-unknown-linux-gnu
|
|
#- env: TARGET=mips64-unknown-linux-gnuabi64
|
|
#- env: TARGET=mips64el-unknown-linux-gnuabi64
|
|
#- env: TARGET=mipsel-unknown-linux-gnu
|
|
#- env: TARGET=powerpc64-unknown-linux-gnu
|
|
#- env: TARGET=powerpc64le-unknown-linux-gnu
|
|
#- env: TARGET=s390x-unknown-linux-gnu DISABLE_TESTS=1
|
|
|
|
# powerpc-unknown-linux-gnu is currently failing some
|
|
# tests with 'Unsupported syscall: 384'
|
|
#- env: TARGET=powerpc-unknown-linux-gnu DISABLE_TESTS=1
|
|
|
|
# Testing other channels
|
|
#- env: TARGET=x86_64-unknown-linux-gnu
|
|
# rust: nightly
|
|
#- env: TARGET=x86_64-apple-darwin
|
|
# os: osx
|
|
# rust: nightly
|
|
# before_install:
|
|
# - set -e
|
|
# - brew install dash
|
|
|
|
before_install: set -e
|
|
|
|
install:
|
|
- sh ci/install.sh
|
|
- source ~/.cargo/env || true
|
|
|
|
script:
|
|
- bash ci/script.sh
|
|
|
|
after_script: set +e
|
|
|
|
before_deploy:
|
|
- sh ci/before_deploy.sh
|
|
|
|
deploy:
|
|
# DONE update `api_key.secure`
|
|
# - Create a `public_repo` GitHub token. Go to: https://github.com/settings/tokens/new
|
|
# - Encrypt it: `travis encrypt 0123456789012345678901234567890123456789
|
|
# - Paste the output down here
|
|
api_key:
|
|
secure: "YaOabSTnNtl0h6DwxtiKG+W6eE8swQSMXlE20oZvTBDpCPWa6daHSVNWBwthudlrcZLWvRuQmy+we62OELzc1f5AwNyyTZ0fgtiqcs7+MY3edSyBQHUIPbzZGeCsbvb1efQzJDZaU5u6TaeNvwqEcIEU2BTSl/3F7RrG+1CgwtnsIp4zrAeaJBHhY0RZCvpdfOica9+m5Dz37q0acl2xdVX9SGv9d+F1WZ2QsB35UCfFVJQ21/KE6QWYZIyEvjudZ7XbeafTnOZ9Xcmn0Mpo9OfhiG3/OP+wN8hOH26CjQR1ru5ftnmdXigE/YOAkUgeRfcFv1rptq6+Datrfu0sHvAM/zSAiqbakHnwn1zVLWe8WJHGjnvh428jAhMK85y1cStsnVsxnciqmWlnpr3bBL2Nopi9OuAOMJ1SG5jNmLCctQwCJubxzrFLaJRKeUefDye+L9u4/EyiQmx0p7b1IsBlEjYe1ammzgBdEA26fUmzM6gJKcOLKmH9CLpcBYiaGuAaiHIBW5Cbq05kB2fVay+947YQOFEnmMJm2sZMkITv1ZnofWqDoyj9BVttczrKUDho3oMBNu9jsrAO0ncqUnsao3aqiuKIVjmPgc2uV8c+UlEpqHu40PNAfF70KkWkefYeqqGMGKzuB1SnMr+4XmQg0GPnK2MuEHzQOmvASuo="
|
|
file_glob: true
|
|
file: $CRATE_NAME-$TRAVIS_TAG-$TARGET.*
|
|
on:
|
|
# DONE Here you can pick which targets will generate binary releases
|
|
# In this example, there are some targets that are tested using the stable
|
|
# and nightly channels. This condition makes sure there is only one release
|
|
# for such targets and that's generated using the stable channel
|
|
condition: $TRAVIS_RUST_VERSION = stable
|
|
tags: true
|
|
provider: releases
|
|
skip_cleanup: true
|
|
|
|
cache: cargo
|
|
before_cache:
|
|
# Travis can't cache files that are not readable by "others"
|
|
- chmod -R a+r $HOME/.cargo
|
|
|
|
branches:
|
|
only:
|
|
# release tags
|
|
- /^v\d+\.\d+\.\d+.*$/
|
|
- master
|
|
|
|
notifications:
|
|
email:
|
|
on_success: never
|