-
Notifications
You must be signed in to change notification settings - Fork 124
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
See #49
- Loading branch information
Josh Holmer
committed
Sep 14, 2016
1 parent
03c5098
commit ce971cc
Showing
1 changed file
with
65 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
environment: | ||
global: | ||
# This will be used as part of the zipfile name | ||
PROJECT_NAME: oxipng | ||
matrix: | ||
# Stable channel | ||
- TARGET: i686-pc-windows-gnu | ||
CHANNEL: stable | ||
- TARGET: i686-pc-windows-msvc | ||
CHANNEL: stable | ||
- TARGET: x86_64-pc-windows-gnu | ||
CHANNEL: stable | ||
- TARGET: x86_64-pc-windows-msvc | ||
CHANNEL: stable | ||
|
||
# Install Rust and Cargo | ||
# (Based on from https://github.com/rust-lang/libc/blob/master/appveyor.yml) | ||
install: | ||
- curl -sSf -o rustup-init.exe https://win.rustup.rs | ||
- rustup-init.exe --default-host %TARGET% --default-toolchain %CHANNEL% -y | ||
- set PATH=%PATH%;C:\Users\appveyor\.cargo\bin | ||
- rustc -Vv | ||
- cargo -V | ||
|
||
# 'cargo test' takes care of building for us, so disable Appveyor's build stage. This prevents | ||
# the "directory does not contain a project or solution file" error. | ||
# source: https://github.com/starkat99/appveyor-rust/blob/master/appveyor.yml#L113 | ||
build: false | ||
|
||
# Equivalent to Travis' `script` phase | ||
test_script: | ||
- cargo build | ||
- cargo test | ||
|
||
before_deploy: | ||
# Generate artifacts for release | ||
- cargo build --release | ||
- mkdir staging | ||
- copy target\release\oxipng.exe staging | ||
- cd staging | ||
# release zipfile will look like 'rust-everywhere-v1.2.3-x86_64-pc-windows-msvc' | ||
- 7z a ../%PROJECT_NAME%-%APPVEYOR_REPO_TAG_NAME%-%TARGET%.zip * | ||
- appveyor PushArtifact ../%PROJECT_NAME%-%APPVEYOR_REPO_TAG_NAME%-%TARGET%.zip | ||
|
||
deploy: | ||
description: 'Windows release' | ||
# All the zipped artifacts will be deployed | ||
artifact: /.*\.zip/ | ||
# - Go to 'https://github.com/settings/tokens/new' and generate a Token with only the | ||
# `public_repo` scope enabled | ||
# - Then go to 'https://ci.appveyor.com/tools/encrypt' and enter the newly generated token. | ||
# - Enter the "encrypted value" below | ||
auth_token: | ||
secure: JT77kw2p+U5Z9yM/77QjEWRFgvyaGOO2SquE5OBgUNpqSt4VDg/Mdicy8pkSvSEu | ||
provider: GitHub | ||
# deploy when a new tag is pushed and only on the stable channel | ||
on: | ||
# channel to use to produce the release artifacts | ||
# NOTE make sure you only release *once* per target | ||
CHANNEL: stable | ||
appveyor_repo_tag: true | ||
|
||
branches: | ||
only: | ||
- master |