libzmq/.travis.yml
Kevin Sapper b22558119d Problem: Deploying release artifacts is a manual process
Solution: Use travis to deploy these artifacts automatically.

The deployment is triggered by tagging on the zeromq/libzmq repository.
Of the many builds travis is checking only the default one with
libsodium and drafts disabled is used for deployment.

For now the results of `make distcheck` are deployed as well as their
md5 and sha1 hash sums. Further changes may upload a generated
Changelog as well.
2016-05-09 10:30:13 +02:00

68 lines
1.8 KiB
YAML

# Travis CI script
language: c
os:
- linux
- osx
dist: trusty
env:
- BUILD_TYPE=default CURVE=tweetnacl DRAFT=enabled
- BUILD_TYPE=android CURVE=tweetnacl
- BUILD_TYPE=cmake CURVE=tweetnacl
- BUILD_TYPE=default CURVE=libsodium
- BUILD_TYPE=default
- BUILD_TYPE=coverage CURVE=tweetnacl DRAFT=enabled
- BUILD_TYPE=valgrind CURVE=tweetnacl DRAFT=enabled
matrix:
exclude:
- env: BUILD_TYPE=coverage CURVE=tweetnacl DRAFT=enabled
os: osx
- env: BUILD_TYPE=valgrind CURVE=tweetnacl DRAFT=enabled
os: osx
include:
- env: BUILD_TYPE=default CURVE=tweetnacl IPv6=ON
os: linux
dist: precise
sudo: false
sudo: required
addons:
apt:
packages:
- cmake
- lcov
- valgrind
before_install:
- if [ $TRAVIS_OS_NAME == "osx" ] ; then brew update; brew install binutils ; fi
before_script:
# ZMQ stress tests need more open socket (files) than the usual default
# On OSX, it seems the way to set the max files limit is constantly changing, so
# try to use all known knobs to ensure compatibility across various versions
- if [ $TRAVIS_OS_NAME == "osx" ] ; then sudo sysctl -w kern.maxfiles=64000 ; sudo sysctl -w kern.maxfilesperproc=64000 ; sudo launchctl limit maxfiles 64000 64000 ; ulimit -n 64000; fi
# Build and check this project according to the BUILD_TYPE
script: ./ci_build.sh
# Deploy tags
before_deploy:
- . ./ci_deploy.sh
deploy:
provider: releases
api_key:
secure: vGB5E+A8wxm2J1GJZzmIgT9PrjEzvd9gE8iui8FyxSbxAsW9vFZFGZC/21sTtpVcmRarwQCHH1UEbtg+nJwN2iD9YzMRnSVks8xqP+b709YW+VXaMuhZgTzWa74IorQku7NuvLibvQk72/OSgdwPGaNJ6f5AX9pnWVWbEoW1svE=
file_glob: true
file: ${LIBZMQ_DEPLOYMENT}
skip_cleanup: true
on:
repo: zeromq/libzmq
branch: master
tags: true
condition: "$TRAVIS_OS_NAME =~ (linux) && $BUILD_TYPE =~ (default) && $CURVE =~ (libsodium) && -z $DRAFT"