xenia-canary/.azure-pipelines.yml

80 lines
2.1 KiB
YAML

trigger:
branches:
include:
- '*'
exclude:
- gh-pages
- master
paths:
exclude:
- docs/*
- docs/*/*
- .github/*
- .github/*/*
- LICENSE
- README.md
- .appveyor.yml
- .travis.yml
pr:
branches:
include:
- '*'
exclude:
- gh-pages
- master
paths:
exclude:
- docs/*
- docs/*/*
- .github/*
- .github/*/*
- LICENSE
- README.md
- .appveyor.yml
- .travis.yml
jobs:
- job:
pool:
vmImage: windows-latest
strategy:
matrix:
AVX:
cpu_arch: AVX
AVX2:
cpu_arch: AVX2
AVX512:
cpu_arch: AVX512
steps:
- script: wmic cpu get caption, deviceid, name, numberofcores, maxclockspeed, status
displayName: 'CPU info'
- script: xb setup
displayName: 'Setup'
- script: xb build --cpu_arch=$(cpu_arch) --target=src\xenia-app --target=src\xenia-vfs-dump
displayName: 'Build'
- script: |-
robocopy build\bin\Windows\Release $(Build.ArtifactStagingDirectory)\xenia-canary xenia-canary.exe /r:0 /w:0
robocopy build\bin\Windows\Release $(Build.ArtifactStagingDirectory)\xenia-vfs-dump xenia-vfs-dump.exe /r:0 /w:0
robocopy build\bin\Windows\Release $(Build.ArtifactStagingDirectory) SDL2.dll /r:0 /w:0
robocopy . $(Build.ArtifactStagingDirectory)\xenia-canary LICENSE /r:0 /w:0
robocopy . $(Build.ArtifactStagingDirectory)\xenia-canary-vfs-dump LICENSE /r:0 /w:0
IF %ERRORLEVEL% LEQ 7 (exit /b 0) ELSE (exit /b 1)
displayName: 'Prepare artifacts'
- publish: $(Build.ArtifactStagingDirectory)\xenia-canary
artifact: xenia-canary-$(cpu_arch)
displayName: 'Publish xenia-canary artifacts'
- publish: $(Build.ArtifactStagingDirectory)\xenia-vfs-dump
condition: and(succeeded(), eq(variables['Agent.JobName'], 'AVX'))
artifact: xenia-vfs-dump
displayName: 'Publish xenia-vfs-dump artifacts'
- publish: $(Build.ArtifactStagingDirectory)\SDL2.dll
condition: and(succeeded(), eq(variables['Agent.JobName'], 'AVX'))
artifact: SDL2
displayName: 'Publish SDL2 artifact(s)'