203 lines
4.8 KiB
YAML
203 lines
4.8 KiB
YAML
#---------------------------------#
|
|
# general configuration #
|
|
#---------------------------------#
|
|
|
|
# version format
|
|
version: 1.0.{build}-{branch}
|
|
|
|
# branches to build
|
|
# Only building master (and pull requests)
|
|
branches:
|
|
# whitelist
|
|
only:
|
|
- master
|
|
|
|
# Do not build on tags (GitHub only)
|
|
skip_tags: true
|
|
|
|
skip_commits:
|
|
files:
|
|
- docs/*
|
|
- LICENSE
|
|
- README.md
|
|
|
|
pull_requests:
|
|
do_not_increment_build_number: true
|
|
|
|
#---------------------------------#
|
|
# environment configuration #
|
|
#---------------------------------#
|
|
|
|
# Operating system (build VM template)
|
|
os: Visual Studio 2017
|
|
|
|
# scripts that are called at very beginning, before repo cloning
|
|
init:
|
|
- git config --global core.autocrlf input
|
|
|
|
# clone directory
|
|
clone_folder: c:\dev\xenia
|
|
|
|
# environment variables
|
|
environment:
|
|
my_var1: value1
|
|
my_var2: value2
|
|
|
|
# build cache to preserve files/folders between builds
|
|
#cache:
|
|
|
|
# scripts that run after cloning repository
|
|
install:
|
|
- cmd: set PATH=C:\Program Files (x86)\MSBuild\14.0\Bin;%PATH%
|
|
- cmd: xb.bat setup
|
|
|
|
|
|
#---------------------------------#
|
|
# build configuration #
|
|
#---------------------------------#
|
|
|
|
# build platform, i.e. x86, x64, Any CPU. This setting is optional.
|
|
platform: Windows
|
|
|
|
# build Configuration, i.e. Debug, Release, etc.
|
|
configuration:
|
|
- Release
|
|
- Checked
|
|
|
|
#build:
|
|
# parallel: true # enable MSBuild parallel builds
|
|
# project: build\xenia.sln # path to Visual Studio solution or project
|
|
#
|
|
# # MSBuild verbosity level
|
|
# #verbosity: quiet|minimal|normal|detailed
|
|
# verbosity: minimal
|
|
|
|
# scripts to run before build
|
|
#before_build:
|
|
#- xb.bat lint --all
|
|
|
|
# scripts to run after build
|
|
after_build:
|
|
- 7z a xenia-%appveyor_repo_branch%.zip LICENSE %APPVEYOR_BUILD_FOLDER%\build\bin\%PLATFORM%\%CONFIGURATION%\xenia.exe %APPVEYOR_BUILD_FOLDER%\build\bin\%PLATFORM%\%CONFIGURATION%\xenia.pdb
|
|
|
|
# to run your custom scripts instead of automatic MSBuild
|
|
# We also compile the tests here instead of later on.
|
|
build_script:
|
|
- cmd: xb.bat build --config=%CONFIGURATION% --target=src\xenia-app --target=tests\xenia-cpu-ppc-tests
|
|
|
|
# to disable automatic builds
|
|
#build: off
|
|
|
|
|
|
#---------------------------------#
|
|
# tests configuration #
|
|
#---------------------------------#
|
|
|
|
# scripts to run before tests
|
|
before_test:
|
|
- cmd: xb.bat gentests
|
|
|
|
# scripts to run after tests
|
|
after_test:
|
|
|
|
# to run your custom scripts instead of automatic tests
|
|
test_script:
|
|
- cmd: xb.bat test --config=%CONFIGURATION% --no_build
|
|
|
|
# to disable automatic tests
|
|
#test: off
|
|
|
|
|
|
#---------------------------------#
|
|
# artifacts configuration #
|
|
#---------------------------------#
|
|
|
|
artifacts:
|
|
# pushing a single file
|
|
#- path: test.zip
|
|
|
|
# pushing a single file with environment variable in path and "Deployment name" specified
|
|
#- path: MyProject\bin\$(configuration)
|
|
# name: myapp
|
|
|
|
# pushing entire folder as a zip archive
|
|
#- path: logs
|
|
|
|
# pushing all *.nupkg files in directory
|
|
#- path: out\*.nupkg
|
|
|
|
- path: xenia-cpu-ppc-test.log
|
|
- path: xenia-$(appveyor_repo_branch).zip
|
|
|
|
|
|
#---------------------------------#
|
|
# deployment configuration #
|
|
#---------------------------------#
|
|
|
|
# providers: Local, FTP, WebDeploy, AzureCS, AzureBlob, S3, NuGet, Environment
|
|
# provider names are case-sensitive!
|
|
deploy:
|
|
- provider: Environment
|
|
name: xenia-master
|
|
release: xenia-$(appveyor_repo_branch)-v$(appveyor_build_version)
|
|
artifact: xenia-$(appveyor_repo_branch).zip
|
|
draft: false
|
|
prerelease: true
|
|
on:
|
|
branch: master # release from master branch only
|
|
configuration: release # deploy release builds only
|
|
appveyor_repo_tag: true # deploy on tag push only
|
|
is_not_pr: true # don't deploy pull requests
|
|
|
|
# scripts to run before deployment
|
|
#before_deploy:
|
|
|
|
# scripts to run after deployment
|
|
#after_deploy:
|
|
|
|
# to run your custom scripts instead of provider deployments
|
|
#deploy_script:
|
|
|
|
# to disable deployment
|
|
# deploy: off
|
|
|
|
|
|
#---------------------------------#
|
|
# global handlers #
|
|
#---------------------------------#
|
|
|
|
# on successful build
|
|
on_success:
|
|
|
|
# on build failure
|
|
on_failure:
|
|
|
|
# after build failure or success
|
|
on_finish:
|
|
|
|
|
|
#---------------------------------#
|
|
# notifications #
|
|
#---------------------------------#
|
|
|
|
# notifications:
|
|
# # Email
|
|
# - provider: Email
|
|
# to:
|
|
# - user1@email.com
|
|
# - user2@email.com
|
|
# subject: 'Build {{status}}' # optional
|
|
# message: "{{message}}, {{commitId}}, ..." # optional
|
|
# on_build_status_changed: true
|
|
|
|
# # Webhook
|
|
# - provider: Webhook
|
|
# url: http://www.myhook2.com
|
|
# headers:
|
|
# User-Agent: myapp 1.0
|
|
# Authorization:
|
|
# secure: GhD+5xhLz/tkYY6AO3fcfQ==
|
|
# on_build_success: false
|
|
# on_build_failure: true
|
|
# on_build_status_changed: true
|