-
Notifications
You must be signed in to change notification settings - Fork 2
/
azure-pipelines.yml
79 lines (75 loc) · 2.7 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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# .NET Desktop
# Build and run tests for .NET Desktop or Windows classic desktop solutions.
# Add steps that publish symbols, save build artifacts, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/windows/dot-net
trigger:
tags:
include:
- v*
pool:
vmImage: 'windows-2022'
variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Release'
tag: $[replace(variables['Build.SourceBranch'], 'refs/tags/', '')]
steps:
- task: DotNetCoreCLI@2
inputs:
command: 'test'
projects: 'AILZ80ASM.Test\AILZ80ASM.Test.csproj'
publishTestResults: false
- task: DotNetCoreCLI@2
inputs:
command: 'publish'
publishWebProjects: false
arguments: '-r win-x64 --self-contained -c $(buildConfiguration) /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true'
projects: 'AILZ80ASM\AILZ80ASM.csproj'
zipAfterPublish: false
modifyOutputPath: false
- task: DotNetCoreCLI@2
inputs:
command: 'publish'
publishWebProjects: false
arguments: '-r osx-x64 --self-contained -c $(buildConfiguration) /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true'
projects: 'AILZ80ASM\AILZ80ASM.csproj'
zipAfterPublish: false
modifyOutputPath: false
- task: DotNetCoreCLI@2
inputs:
command: 'publish'
publishWebProjects: false
arguments: '-r linux-x64 --self-contained -c $(buildConfiguration) /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true'
projects: 'AILZ80ASM\AILZ80ASM.csproj'
zipAfterPublish: false
modifyOutputPath: false
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: '$(Build.SourcesDirectory)/AILZ80ASM/bin/Release/net8.0/win-x64/publish/AILZ80ASM.exe'
includeRootFolder: true
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/AILZ80ASM.win-x64.$(tag).zip'
replaceExistingArchive: true
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: '$(Build.SourcesDirectory)/AILZ80ASM/bin/Release/net8.0/osx-x64/publish/AILZ80ASM'
includeRootFolder: true
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/AILZ80ASM.osx-x64.$(tag).zip'
replaceExistingArchive: true
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: '$(Build.SourcesDirectory)/AILZ80ASM/bin/Release/net8.0/linux-x64/publish/AILZ80ASM'
includeRootFolder: true
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/AILZ80ASM.linux-x64.$(tag).zip'
replaceExistingArchive: true
- task: GitHubRelease@1
inputs:
gitHubConnection: 'github.com_AILight'
repositoryName: 'AILight/AILZ80ASM'
action: 'edit'
target: '$(Build.SourceVersion)'
tag: '$(tag)'
assets:
$(Build.ArtifactStagingDirectory)/*.zip