Skip to content

Commit

Permalink
Build of 32- and 64-bit Windows binaries for releases. Closes #1135
Browse files Browse the repository at this point in the history
For pull requests and pushes to master just build 32-bit binaries
and do not store artifacts.

Whenever a tag is pushed to the "release" branch - produce
full set of 32-bit and 64-bit binaries, create a GitHub
release (if does not exist already) and attach the binaries
to the release.

Issue open:

http://bit.ly/twoBuilds

 AppVeyor starts two builds in response to the "new commit"
 and "new tag" events.
  • Loading branch information
saper authored and xzyfer committed Sep 18, 2015
1 parent 9336a1d commit 30b2b14
Showing 1 changed file with 87 additions and 36 deletions.
123 changes: 87 additions & 36 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,36 +1,87 @@
version: "{build}"

build: off

cache:
- c:\Users\appveyor\.node-gyp
- '%AppData%\npm-cache'

environment:
SKIP_SASS_BINARY_DOWNLOAD_FOR_CI: true
GYP_MSVS_VERSION: 2013
matrix:
- nodejs_version: 0.10
- nodejs_version: 0.12
- nodejs_version: 1
- nodejs_version: 2
- nodejs_version: 3
- nodejs_version: 4

install:
- ps: Install-Product node $env:nodejs_version
- node --version
- npm --version
- git submodule update --init --recursive
- npm install

test_script: npm test

on_success:
# Save artifact with full qualified names of binding.node
# (which we use in node-sass-binaries repo)
- ps: Get-ChildItem .\vendor\**\*.node | % `
{
Push-AppveyorArtifact $_.FullName -FileName
(($_.FullName.Split('\\') | Select-Object -Last 2) -join '_')
}
-
branches:
only:
- release

configuration: release

platform:
- x64
- x86

version: "{build}"

build: off

cache:
- '%userprofile%\.node-gyp'
- '%AppData%\npm-cache'

environment:
SKIP_SASS_BINARY_DOWNLOAD_FOR_CI: true
matrix:
- nodejs_version: 0.10
- nodejs_version: 0.12
- nodejs_version: 1.0
- nodejs_version: 1
- nodejs_version: 2
- nodejs_version: 3
- nodejs_version: 4

install:
- ps: Install-Product node $env:nodejs_version $env:platform
- node --version
- npm --version
- git submodule update --init --recursive
- npm install --msvs_version=2013

test_script: npm test

before_deploy:
# Save artifact with full qualified names of binding.node
# (which we use in node-sass-binaries repo)
- ps: Get-ChildItem .\vendor\**\*.node | % { Push-AppveyorArtifact $_.FullName -FileName (($_.FullName.Split('\\') | Select-Object -Last 2) -join '_') }


deploy:
- provider: GitHub
description: $(APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED)
artifact: /.*binding\.node/ # upload all NuGet packages to release assets
auth_token:
secure: tt+p58W9Q49faww/o0CODJI8e++YEX5THVlpXlRIigO4xHjE8NKigi0oxr1b2PJE
on:
branch: release # release from master branch only
appveyor_repo_tag: true # deploy on tag push only

-
configuration: testing

platform:
- x86

version: "{build}"

build: off

cache:
- '%userprofile%\.node-gyp'
- '%AppData%\npm-cache'

environment:
SKIP_SASS_BINARY_DOWNLOAD_FOR_CI: true
matrix:
- nodejs_version: 0.10
- nodejs_version: 0.12
- nodejs_version: 1
- nodejs_version: 2
- nodejs_version: 3
- nodejs_version: 4

install:
- ps: Install-Product node $env:nodejs_version $env:platform
- node --version
- npm --version
- git submodule update --init --recursive
- npm install --msvs_version=2013

test_script: npm test

0 comments on commit 30b2b14

Please sign in to comment.