language: generic addons: apt: packages: - xvfb - herbstluftwm - libssl-dev - openssl - libacl1-dev - libacl1 - build-essential homebrew: update: true packages: - openssl - readline - pyenv-virtualenv casks: - xquartz cache: directories: - $HOME/.cache/pip - $HOME/.pyenv/versions - $HOME/Library/Caches/Homebrew sudo: required dist: trusty env: global: - SETUP_XVFB=true matrix: include: - os: linux dist: trusty env: - RUN_PYINSTALLER=true - os: osx env: - RUN_PYINSTALLER=true install: - | if [ $TRAVIS_OS_NAME = "linux" ]; then curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv pyenv install 3.6.7 export PATH="/home/travis/.pyenv/shims:${PATH}" export DISPLAY=:99.0 /sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1920x1200x24 -ac +extension GLX +render -noreset sleep 3 elif [ $TRAVIS_OS_NAME = "osx" ]; then brew update && brew upgrade pyenv CFLAGS="-I$(xcrun --show-sdk-path)/usr/include" pyenv install 3.6.7 export PATH="/Users/travis/.pyenv/shims:${PATH}" fi export PYENV_VERSION=3.6.7 pyenv virtualenv venv 3.6.7 source venv/bin/activate - pip install . - pip install borgbackup - pip install -r requirements-dev.txt before_script: - if [ $TRAVIS_OS_NAME = "linux" ]; then (herbstluftwm )& fi - if [ $TRAVIS_OS_NAME = "osx" ]; then (sudo Xvfb :99 -ac -screen 0 1024x768x8 )& fi - sleep 3 script: - pytest #after_script: #- | # if [ $RUN_PYINSTALLER = "true" ]; then # # Cleanup # pip uninstall -y $PIP_DEPENDENCIES # # # https://github.com/wkentaro/labelme/issues/183 # if [ $TRAVIS_OS_NAME = "osx" ]; then # pip uninstall -y Pillow # conda install -y Pillow # fi # # # Build the standalone executable # pip install pyinstaller # pyinstaller labelme.spec # dist/labelme --version # fi branches: only: - master notifications: email: false