sudo: false language: generic env: global: # This will be part of the release tarball - PROJECT_NAME=ilc matrix: fast_finish: true include: # Stable channel - os: linux env: TARGET=arm-unknown-linux-gnueabihf CHANNEL=stable # Extra packages only for this job addons: apt: packages: &arm_unknown_linux_gnueabihf # Cross compiler and cross compiled C libraries - gcc-arm-linux-gnueabihf - libc6-armhf-cross - libc6-dev-armhf-cross # Emulator - qemu-user - os: osx env: TARGET=i686-apple-darwin CHANNEL=stable - os: linux env: TARGET=i686-unknown-linux-gnu CHANNEL=stable addons: apt: packages: &i686_unknown_linux_gnu # Cross compiler and cross compiled C libraries - gcc-multilib - os: osx env: TARGET=x86_64-apple-darwin CHANNEL=stable - os: linux env: TARGET=x86_64-unknown-linux-gnu CHANNEL=stable - os: linux env: TARGET=x86_64-unknown-linux-musl CHANNEL=stable # Beta channel - os: linux env: TARGET=arm-unknown-linux-gnueabihf CHANNEL=beta addons: apt: # Use the same packages the stable version uses packages: *arm_unknown_linux_gnueabihf - os: osx env: TARGET=i686-apple-darwin CHANNEL=beta - os: linux env: TARGET=i686-unknown-linux-gnu CHANNEL=beta addons: apt: packages: *i686_unknown_linux_gnu - os: osx env: TARGET=x86_64-apple-darwin CHANNEL=beta - os: linux env: TARGET=x86_64-unknown-linux-gnu CHANNEL=beta - os: linux env: TARGET=x86_64-unknown-linux-musl CHANNEL=beta # Nightly channel - os: linux env: TARGET=arm-unknown-linux-gnueabihf CHANNEL=nightly addons: apt: # Use the same packages the stable version uses packages: *arm_unknown_linux_gnueabihf - os: osx env: TARGET=i686-apple-darwin CHANNEL=nightly - os: linux env: TARGET=i686-unknown-linux-gnu CHANNEL=nightly addons: apt: packages: *i686_unknown_linux_gnu - os: osx env: TARGET=x86_64-apple-darwin CHANNEL=nightly - os: linux env: TARGET=x86_64-unknown-linux-gnu CHANNEL=nightly - os: linux env: TARGET=x86_64-unknown-linux-musl CHANNEL=nightly allow_failures: # NOTE This target appears to be broken on Rust 1.7.0 # TODO You may want to remove this entry by the time Rust 1.8.0 is out - os: linux env: TARGET=arm-unknown-linux-gnueabihf CHANNEL=stable - os: linux env: TARGET=x86_64-unknown-linux-musl CHANNEL=stable - os: linux env: TARGET=x86_64-unknown-linux-musl CHANNEL=beta - os: linux env: TARGET=x86_64-unknown-linux-musl CHANNEL=nightly install: - export PATH="$PATH:~/multirust/bin" - bash ci/install.sh script: - bash ci/script.sh before_deploy: - bash ci/before_deploy.sh deploy: provider: releases # - Go to 'https://github.com/settings/tokens/new' and generate a Token with only the # `public_repo` scope enabled # - Call `travis encrypt $github_token` where $github_token is the token you got in the previous # step and `travis` is the official Travis CI gem (see https://rubygems.org/gems/travis/) # - Enter the "encrypted value" below api_key: secure: BnQxKEtnxUL6K8T8WHsmC09KgTZho22z5MBlVEcX+glHMLkzehCs+LaiXQ0lsvs8Z7ngxEs+FG4qfCXtMeFJh3n4tzTYAe9xvNFhieRZKUKkkycNTTraRL1Pzpj7i+dT3/OG+vSMhgwa+I6gZwuPVHkcY1EU8fdzI95R7SLJJREM/yAE5/seYZNxA0TX4BiZIZksg+bzwSr1WJEsX0N9rv3ANqkemjMvHkeYQb6dogo8iIIBG03L/OKvuHELsdVdiyiIdq2YU62x3wPQc2w/StDkrk+dq5eMW9H7Gh0MqDGF4ZKkWlQzrxPxJnJBbWRPcKczRgGMXeIXKfBU52Pn4L92dRC7RpJmKOVZwDgyeqNLXvHYiMpL0NH3DU3V2LFpVNHJtK3f6hsVPBS0w00kpg7iQhN5EejHe7GlD6SF41J2W53XsN1+5qmNew+El+Ugnk7Jp4GFDPpYAR5u9FW7GAChGTyFjBkAOYGlnl9ZrtMC53+pPuDtGwywszf7+MXpB2HmSWy/eC1tnEE9tZt9rAVO0BTM1gCPkvDNA0czvA76gwNphEG7QCADI89WiGiVDruOGrMpF7Yi6NavmfQUwflMI2vZ+rqeBhVocK9pYLd/lg3yXyue//EejW+BE42R+IbB3OfFGgpK1+oHnbWr8UobwD3sa3iKJo232wPKozU= file: ${PROJECT_NAME}-${TARGET}.tar.gz # don't delete the artifacts from previous phases skip_cleanup: true # deploy when a new tag is pushed on: condition: $CHANNEL = stable tags: true branches: only: # Pushes and PR to the master branch - master # IMPORTANT Ruby regex to match tags. Required, or travis won't trigger deploys when a new tag # is pushed. This regex matches semantic versions like v1.2.3-rc4+2016.02.22 - /^v\d+\.\d+\.\d+.*$/ notifications: email: on_success: never