matrix: include: - os: osx osx_image: xcode12.5 language: node_js node_js: "16" env: - ELECTRON_CACHE=$HOME/.cache/electron - ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder - os: linux services: docker language: generic dist: focal cache: yarn: true directories: - node_modules - $HOME/.cache/electron - $HOME/.cache/electron-builder script: - | if [ "$TRAVIS_OS_NAME" == "linux" ]; then docker run --rm \ -e GH_TOKEN=$GH_TOKEN \ -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 dist --x64 --linux --win --publish always" else npm run dist --x64; npm run dist --arm64 fi before_cache: - rm -rf $HOME/.cache/electron-builder/wine branches: except: - "/^v\\d+\\.\\d+\\.\\d+$/"