ffsend/appveyor.yml

65 lines
2.5 KiB
YAML
Raw Normal View History

# Only build version tags
skip_non_tags: true
branches:
only:
- /v\d*\.\d*\.\d*/
# Build for the x86_64 Windows target
platform: x64
2019-03-04 15:53:35 +00:00
environment:
SSL_CERT_FILE: "C:\\OpenSSL\\cacert.pem"
2019-03-04 15:53:35 +00:00
RUSTUP_USE_HYPER: 1
CARGO_HTTP_CHECK_REVOKE: false
GITHUB_TOKEN:
secure: jqZ4q5oOthKX/pBL1tRsBJsfGPIee3q+N/UBSCZNjCrlFUNfQSfibBPzzICYg1he
matrix:
- TARGET: x86_64-pc-windows-msvc
BITS: 64
OPENSSL_VERSION: 1_1_0j
OPENSSL_DIR: C:\OpenSSL
2019-03-04 15:53:35 +00:00
# Extract release binary artifacts
artifacts:
- path: .\ffsend*.exe
2019-03-04 15:53:35 +00:00
install:
# # Quit early if FFSEND_VESRION is not available
# # These builds must be started from a webhook, initiated by a release build on
# # GitLab CI
# - ps: if ([string]::IsNullOrEmpty($FFSEND_VERSION)) { Exit-AppveyorBuild }
# Install OpenSSL
- mkdir C:\OpenSSL
- ps: if (Test-Path env:OPENSSL_VERSION) { Start-FileDownload "http://slproweb.com/download/Win${env:BITS}OpenSSL-${env:OPENSSL_VERSION}.exe" }
- if defined OPENSSL_VERSION Win%BITS%OpenSSL-%OPENSSL_VERSION%.exe /SILENT /VERYSILENT /SP- /DIR="C:\OpenSSL"
- appveyor DownloadFile https://curl.haxx.se/ca/cacert.pem -FileName C:\OpenSSL\cacert.pem
# Install Rust
2019-03-04 15:53:35 +00:00
- appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
- rustup-init.exe -y --default-host x86_64-pc-windows-msvc --default-toolchain nightly
- set PATH=%PATH%;C:\Users\appveyor\.cargo\bin
- rustc -V
- cargo -V
- git submodule update --init
build_script:
# Build dynamic release binary
- cargo build --release --features no-color --verbose
- copy .\target\release\ffsend.exe .\ffsend-%TARGET%.exe
# Build static release binary
- set RUSTFLAGS=-Ctarget-feature=+crt-static
- cargo build --release --features no-color --verbose
- copy .\target\release\ffsend.exe .\ffsend-%TARGET%-static.exe
# Install github-release
- appveyor DownloadFile https://github.com/tfausak/github-release/releases/download/1.2.4/github-release-windows.zip -FileName github-release.zip
- 7z e github-release.zip
# Upload release binaries to GitHub
- .\github-release.exe upload --token %GITHUB_TOKEN% --owner timvisee --repo ffsend --tag %APPVEYOR_REPO_TAG_NAME% --file .\ffsend-%TARGET%.exe --name ffsend-%APPVEYOR_REPO_TAG_NAME%-windows-x64.exe
- .\github-release.exe upload --token %GITHUB_TOKEN% --owner timvisee --repo ffsend --tag %APPVEYOR_REPO_TAG_NAME% --file .\ffsend-%TARGET%-static.exe --name ffsend-%APPVEYOR_REPO_TAG_NAME%-windows-x64-static.exe
2019-03-04 15:53:35 +00:00
test: false