Mailspring/appveyor.yml
Evan Morikawa 1f2370c2a9 [client-app] run windows build separately
Summary:
build-client, aka packaging, aka bundling is now separate from uploading.
This is both to compartmentalize our tasks a bit more and so we can add a
non-grunt windows task inbetween packaging and uploading.

No more heavily-overloaded PUBLISH_BUILD flag.
Added SIGN_BUILD flag instead.
No more TRAVIS and TRAVIS_PULL_REQUEST flag.

Test Plan: Manual

Reviewers: halla, juan, spang

Reviewed By: juan, spang

Differential Revision: https://phab.nylas.com/D4208
2017-03-13 15:48:45 -07:00

47 lines
1.5 KiB
YAML

version: '{build}'
branches:
only:
- master
- /ci.*/
- /stable.*/
# We need to only clone the main module because our submodule requires the
# encrypted ssh key to access submodules
install:
- ps: Install-Product node $env:NODE_VERSION
- ps: nuget install secure-file -ExcludeVersion
- ps: npm config set msvs_version 2013
# We need to extract the encrypted private ssh key to clone the submodule.
- ps: |
if ($env:DECRYPTION_PASSWORD) {
secure-file\tools\secure-file -decrypt packages\client-private-plugins\encrypted_certificates\appveyor\win-nylas-n1.p12.enc -secret $env:DECRYPTION_PASSWORD
secure-file\tools\secure-file -decrypt packages\client-private-plugins\encrypted_certificates\appveyor\set_win_env.ps1.enc -secret $env:DECRYPTION_PASSWORD
. packages\client-private-plugins\encrypted_certificates\appveyor\set_win_env.ps1
}
build_script:
- cmd: npm install
deploy_script:
- ps: |
npm run build-client
node packages/client-app/build/create-signed-windows-installer.js
npm run upload-client
environment:
matrix:
- NODE_VERSION: 6.9
global:
DEBUG: "electron-windows-installer:*,electron-packager:*"
SIGN_BUILD: true
CERTIFICATE_FILE: .\packages\client-private-plugins\encrypted_certificates\appveyor\win-nylas-n1.p12
DECRYPTION_PASSWORD:
secure: 48VSzDtdBd52Xlo3TZ1NeR1yRRrZ3AU6Px5XjD5RDp44cFU5GYVspecGqX6DGCV7i0D7nldGMyEbXNrjM1t1Kw==
cache:
- node_modules -> package.json
- packages\client-app\node_modules -> packages\client-app\package.json
- '%USERPROFILE%\.npm'