diff --git a/.travis.yml b/.travis.yml index 5c152d9..1cd61c3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,30 +1,39 @@ -# Use OSX as env to build in - language: objective-c - cache: - directories: - - node_modules - env: - # Node in order to install it by running the command individually, here to specify the version - #- NODE_VERSION="4.6" - before_install: - # Install brew -> wine and makensis - - brew update - - brew install libusb - - brew install wine - - wine --version - - brew install makensis - # Install the nvm. Nvm is not included by default in OS X environment of Travis - - git clone https://github.com/creationix/nvm.git /tmp/.nvm - - source /tmp/.nvm/nvm.sh - - nvm install 4.6 - - nvm use --delete-prefix 4.6 - - node --version - - npm -v - - npm install -g electron-packager - - npm install -g appdmg - install: - - npm install - script: - - npm run build - #deploy: - # skip_cleanup: true +matrix: + include: + - os: osx + osx_image: xcode10.2 + language: node_js + node_js: "12" + env: + - ELECTRON_CACHE=$HOME/.cache/electron + - ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder + + - os: linux + services: docker + language: generic + +cache: + directories: + - node_modules + - $HOME/.cache/electron + - $HOME/.cache/electron-builder + +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_|_TOKEN|_KEY|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 release --linux --win" + else + yarn release + fi +before_cache: + - rm -rf $HOME/.cache/electron-builder/wine + +branches: + except: + - "/^v\\d+\\.\\d+\\.\\d+$/" \ No newline at end of file