matrix: include: - os: osx osx_image: xcode9.2 language: node_js node_js: "9" env: - ELECTRON_CACHE=$HOME/.cache/electron - ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder - os: linux services: docker language: generic before_cache: - rm -rf $HOME/.cache/electron-builder/wine cache: directories: - node_modules - $HOME/.cache/electron - $HOME/.cache/electron-builder before_install: - | if [ "$TRAVIS_OS_NAME" == "osx" ]; then mkdir -p /tmp/git-lfs && curl -L https://github.com/github/git-lfs/releases/download/v2.3.1/git-lfs-$([ "$TRAVIS_OS_NAME" == "linux" ] && echo "linux" || echo "darwin")-amd64-2.3.1.tar.gz | tar -xz -C /tmp/git-lfs --strip-components 1 export PATH="/tmp/git-lfs:$PATH" fi before_script: - git lfs pull script: - | if [ "$TRAVIS_OS_NAME" == "linux" ]; then docker run --rm \ --env-file <(env | grep -iE 'DEBUG|NODE_|ELECTRON_|YARN_|NPM_|CI|CIRCLE|TRAVIS|APPVEYOR_|CSC_|GH_|GITHUB_|BT_|AWS_|STRIP|BUILD_') \ -v ${PWD}:/project \ -v ~/.cache/electron:/root/.cache/electron \ -v ~/.cache/electron-builder:/root/.cache/electron-builder \ electronuserland/builder:wine \ /bin/bash -c "yarn --link-duplicates --pure-lockfile && yarn build --linux --win" else yarn build fi branches: except: - "/^v\\d+\\.\\d+\\.\\d+$/" addons: artifacts: working_dir: dist paths: - $(git ls-files -o dist/{*.dmg,*.exe,*.deb} | tr "\n" ":") target_paths: - /app/build-${TRAVIS_BUILD_NUMBER}_commit-${TRAVIS_COMMIT:0:7}$([ ! -z ${TRAVIS_TAG} ] && echo _tag-${TRAVIS_TAG})