From d71a9e77bc1d86d0ff8b74988b0d28ae768ac1d7 Mon Sep 17 00:00:00 2001 From: Ilya Kreymer Date: Wed, 10 Jun 2020 12:19:21 -0700 Subject: [PATCH] electron build: - build both 32 and 64-bit for windows - download both 32 and 64-bit flash plugins for windows, use correct one based on platform.arch - sign and publish only on master --- .travis.yml | 21 +++++++++++++-------- package.json | 2 +- src/electron-main.js | 2 +- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index c8d3eff..d31544e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,37 +20,42 @@ cache: script: - | + if [ "$TRAVIS_BRANCH" == "master" ]; then + export YARN_BUILD_CMD="release" + else + export YARN_BUILD_CMD="dist" + fi + if [ "$TRAVIS_OS_NAME" == "linux" ]; then mkdir -p plugins-linux; pushd plugins-linux; - FLASH_PLUGIN="https://s3.amazonaws.com/webrecorder-builds/flashplugin/libpepflashplayer.so"; - wget $FLASH_PLUGIN; + wget "https://s3.amazonaws.com/webrecorder-builds/flashplugin/libpepflashplayer.so"; popd; mkdir -p plugins-win; pushd plugins-win; - FLASH_PLUGIN="https://s3.amazonaws.com/webrecorder-builds/flashplugin/pepflashplayer-x86_64.dll"; - wget $FLASH_PLUGIN; + wget "https://s3.amazonaws.com/webrecorder-builds/flashplugin/pepflashplayer-x86_64.dll"; + wget "https://s3.amazonaws.com/webrecorder-builds/flashplugin/pepflashplayer-x86.dll"; popd; docker run --rm \ -e GH_TOKEN=${GH_TOKEN} \ -e WIN_CSC_LINK=${WIN_CSC_LINK} \ -e WIN_CSC_KEY_PASSWORD=${WIN_CSC_KEY_PASSWORD} \ + -e YARN_BUILD_CMD=${YARN_BUILD_CMD} \ -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 run release --linux --win" + /bin/bash -c "yarn --link-duplicates --pure-lockfile && yarn run $YARN_BUILD_CMD --linux --win --x64 --ia32" else mkdir -p plugins-mac; pushd plugins-mac; - FLASH_PLUGIN="https://s3.amazonaws.com/webrecorder-builds/flashplugin/PepperFlashPlayer.plugin.zip"; - wget $FLASH_PLUGIN; + wget "https://s3.amazonaws.com/webrecorder-builds/flashplugin/PepperFlashPlayer.plugin.zip"; unzip PepperFlashPlayer.plugin.zip; rm PepperFlashPlayer.plugin.zip; popd; - yarn run release + yarn run $YARN_BUILD_CMD fi before_cache: - rm -rf $HOME/.cache/electron-builder/wine diff --git a/package.json b/package.json index 7e6eff7..f236e3a 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,7 @@ "start-electron": "NODE_ENV=development electron ./dist/electron.js", "build-electron": "yarn run build && yarn run docs && yarn run pack", "docs": "bundle install; bundle exec jekyll build", - "dist": "yarn run build && electron-builder", + "dist": "yarn run build && yarn run pack", "release": "yarn run build && electron-builder" }, "build": { diff --git a/src/electron-main.js b/src/electron-main.js index bdcf7c6..fdf5f2e 100644 --- a/src/electron-main.js +++ b/src/electron-main.js @@ -35,7 +35,7 @@ let pluginPath = ""; switch (process.platform) { case 'win32': - pluginPath = path.join(projPath, "plugins-win", "pepflashplayer-x86_64.dll"); + pluginPath = path.join(projPath, "plugins-win", `pepflashplayer-x86${process.arch === 'x64' ? '_64' : ''}.dll`); break; case 'darwin':