Mailspring/.appveyor.yml

60 lines
2 KiB
YAML

version: '{build}'
branches:
only:
- master
- /ci.*/
- /stable.*/
init:
- ps: $env:commit = $env:appveyor_repo_commit.SubString(0,8)
# 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 app\build\resources\certs\appveyor\win-nylas-n1.p12.enc -secret $env:DECRYPTION_PASSWORD
secure-file\tools\secure-file -decrypt app\build\resources\certs\appveyor\set_win_env.ps1.enc -secret $env:DECRYPTION_PASSWORD
. app\build\resources\certs\appveyor\set_win_env.ps1
}
build_script:
- cmd: npm install && npm run build
- cmd: node app/build/create-signed-windows-installer.js
before_deploy:
- ps: Get-ChildItem .\app\dist\*.exe | % { Push-AppveyorArtifact $_.FullName -FileName "win-ia32/$($_.Name)" -DeploymentName s3-deployment }
- ps: Get-ChildItem .\app\dist\*.nupkg | % { Push-AppveyorArtifact $_.FullName -FileName "win-ia32/$($_.Name)" -DeploymentName s3-deployment }
- ps: Get-ChildItem .\app\dist\RELEASES | % { Push-AppveyorArtifact $_.FullName -FileName "win-ia32/$($_.Name)" -DeploymentName s3-deployment }
deploy:
- provider: S3
name: s3-deployment
access_key_id: AKIAJQWOM4SPSY3TXI5Q
secret_access_key:
secure: XlLzz7sdvrtgi4g459NvxLfrH/+hOutb+0Osz29unfi4Zcw9N8H8SEaq6m3ZeWc+
region: us-east-1
bucket: merani-builds
folder: "client/$(commit)"
set_public: true
environment:
matrix:
- NODE_VERSION: 7.10
global:
SIGN_BUILD: true
CERTIFICATE_FILE: .\app\build\resources\certs\appveyor\win-nylas-n1.p12
DECRYPTION_PASSWORD:
secure: 48VSzDtdBd52Xlo3TZ1NeR1yRRrZ3AU6Px5XjD5RDp44cFU5GYVspecGqX6DGCV7i0D7nldGMyEbXNrjM1t1Kw==
cache:
- node_modules -> package.json
- app\node_modules -> app\package.json
- '%USERPROFILE%\.npm'