2016-02-23 14:57:10 +01:00
|
|
|
environment:
|
|
|
|
global:
|
|
|
|
# This will be used as part of the zipfile name
|
|
|
|
# TODO change the project name
|
|
|
|
PROJECT_NAME: crowbook
|
|
|
|
# TODO you may want to change which stable Rust version is used
|
|
|
|
RUST_VERSION: 1.6.0
|
|
|
|
# TODO feel free to delete targets you are not interested in
|
|
|
|
matrix:
|
2016-02-23 22:13:03 +01:00
|
|
|
# - TARGET: i686-pc-windows-gnu
|
|
|
|
# MSYS2_BITS: 32
|
2016-02-23 14:57:10 +01:00
|
|
|
- TARGET: i686-pc-windows-msvc
|
2016-02-23 22:13:03 +01:00
|
|
|
# - TARGET: x86_64-pc-windows-gnu
|
|
|
|
# MSYS2_BITS: 64
|
2016-02-23 14:57:10 +01:00
|
|
|
- TARGET: x86_64-pc-windows-msvc
|
|
|
|
|
|
|
|
# Install Rust and Cargo
|
|
|
|
# (Shamelessly stolen from https://github.com/rust-lang/libc/blob/master/appveyor.yml)
|
|
|
|
install:
|
|
|
|
- ps: Start-FileDownload "https://static.rust-lang.org/dist/rust-${env:RUST_VERSION}-${env:TARGET}.exe"
|
|
|
|
- rust-%RUST_VERSION%-%TARGET%.exe /VERYSILENT /NORESTART /DIR="C:\Program Files (x86)\Rust"
|
|
|
|
- SET PATH=%PATH%;C:\Program Files (x86)\Rust\bin
|
|
|
|
- if defined MSYS2_BITS set PATH=%PATH%;C:\msys64\mingw%MSYS2_BITS%\bin
|
|
|
|
- rustc -V
|
|
|
|
- cargo -V
|
|
|
|
|
|
|
|
# ???
|
|
|
|
build: false
|
|
|
|
|
|
|
|
# Equivalent to Travis' `script` phase
|
|
|
|
# TODO modify this phase as you see fit
|
|
|
|
test_script:
|
|
|
|
- cargo build --verbose
|
|
|
|
- cargo run
|
|
|
|
- cargo test
|
|
|
|
- cargo build --release
|
|
|
|
|
|
|
|
# Equivalent to `before_deploy` phase
|
|
|
|
after_test:
|
|
|
|
- mkdir staging
|
|
|
|
# TODO update this part to copy the artifacts that make sense for your project
|
2016-02-23 19:27:08 +01:00
|
|
|
- copy target\release\crowbook.exe staging
|
2016-02-23 14:57:10 +01:00
|
|
|
- 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 *
|
|
|
|
|
|
|
|
# IMPORTANT All the artifacts need to be listed here, or they won't be uploaded to GitHub
|
|
|
|
artifacts:
|
|
|
|
- path: $(PROJECT_NAME)-$(APPVEYOR_REPO_TAG_NAME)-$(TARGET).zip
|
|
|
|
name: $(PROJECT_NAME)-$(APPVEYOR_REPO_TAG_NAME)-$(TARGET).zip
|
|
|
|
type: zip
|
|
|
|
|
|
|
|
deploy:
|
|
|
|
description: 'Windows release'
|
|
|
|
# All the zipped artifacts will be deployed
|
|
|
|
artifact: /.*\.zip/
|
|
|
|
# TODO Regenerate this auth_token for your project, this one won't work for you. Here's how:
|
|
|
|
# - 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: aPjwgGIsU16/omdaviAuV3F6FiLNFF9PaX4ju8OtOnOgGQMayyoCga1VhUuNNoWo
|
|
|
|
provider: GitHub
|
|
|
|
# deploy when a new tag is pushed
|
|
|
|
on:
|
|
|
|
appveyor_repo_tag: true
|
|
|
|
|
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|