forked from QW-Group/ezquake-source
/
azure-pipelines.yml
62 lines (56 loc) · 1.97 KB
/
azure-pipelines.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# C/C++ with GCC
# Build your C/C++ project with GCC using make.
# Add steps that publish test results, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/c-cpp/gcc
# at pipeline level, set 'ezquake.githubconnection' & 'ezquake.githubreponame' variables
strategy:
matrix:
linux:
imageName: 'ubuntu-16.04'
mac:
imageName: 'macos-10.13'
#windows:
# imageName: 'vs2017-win2016'
trigger:
- master
pool:
vmImage: $(imageName)
steps:
- script: |
sudo apt-get -y update
sudo apt install git build-essential mingw-w64 libsdl2-2.0-0 libsdl2-dev libjansson-dev libexpat1-dev libcurl4-openssl-dev libpng-dev libjpeg-dev libspeex-dev libspeexdsp-dev
make && make strip
tar -cvzf ezquake-latest-linux64.zip ezquake-*-* LICENSE
make clean
EZ_CONFIG_FILE=.config_windows make
EZ_CONFIG_FILE=.config_windows make strip
zip ezquake-latest-win32.zip ezquake.exe LICENSE
displayName: 'make (linux/win32)'
condition: eq( variables['Agent.OS'], 'Linux' )
- script: |
brew update
brew install pkgconfig pcre sdl2 sdl2_net sdl2_image sdl2_gfx sdl2_mixer jansson speex speexdsp
make && make strip
sh ./misc/install/create_osx_bundle.sh
mv ezquake.zip ezquake-latest-osx.zip
displayName: 'make (osx)'
condition: eq( variables['Agent.OS'], 'Darwin' )
- task: CopyFiles@2
inputs:
contents: ezquake-latest-*.zip
targetFolder: $(Build.ArtifactStagingDirectory)/distributableBinaries/
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: '$(Build.ArtifactStagingDirectory)/distributableBinaries/'
artifactName: 'latest-build'
- task: GitHubRelease@0
displayName: 'Edit GitHub Release'
inputs:
gitHubConnection: '$(ezquake.githubconnection)'
repositoryName: '$(ezquake.githubreponame)'
action: edit
tag: latest
assets: $(Build.ArtifactStagingDirectory)/distributableBinaries/*
isPreRelease: true
assetUploadMode: replace
addChangeLog: false,