forked from dogged/dogged
-
Notifications
You must be signed in to change notification settings - Fork 0
/
azure-pipelines-build.yml
43 lines (41 loc) · 1.72 KB
/
azure-pipelines-build.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
steps:
- task: DotNetCoreInstaller@0
displayName: 'Install .NET Core 3'
inputs:
version: '3.0.100-preview3-010431'
- script: choco install gitversion.portable
displayName: 'Install Dependencies (Windows)'
condition: eq(variables['Agent.OS'], 'Windows_NT')
- script: brew install gitversion --ignore-dependencies
displayName: 'Install Dependencies (macOS)'
condition: eq(variables['Agent.OS'], 'Darwin')
- powershell: |
$version = gitversion /UpdateAssemblyInfo | ConvertFrom-Json
Write-Output ("##vso[build.updatebuildnumber]" + $version.LegacySemVer)
displayName: 'Calculate Version Number'
- script: dotnet restore
displayName: 'Restore'
- script: dotnet build --no-restore --configuration Release
displayName: 'Build'
- bash: |
dotnet test Dogged.Tests/Dogged.Tests.csproj --no-build --configuration Release --logger "trx;LogFileName=Dogged.Tests.trx"
ret=$(($ret + $?))
dotnet test Dogged.Native.Tests/Dogged.Native.Tests.csproj --no-build --configuration Release --logger "trx;LogFileName=Dogged.Native.Tests.trx"
ret=$(($ret + $?))
exit $ret
displayName: 'Test'
- task: PublishTestResults@2
displayName: 'Publish Test Results'
condition: succeededOrFailed()
inputs:
testResultsFormat: VSTest
testResultsFiles: '**/*.trx'
- script: dotnet pack --no-build -c Release --output "$(Build.ArtifactStagingDirectory)" -p:Version=$(Build.BuildNumber) -p:PackageVersion=$(Build.BuildNumber)
displayName: 'Generate NuGet Package'
condition: eq(variables['Agent.OS'], 'Windows_NT')
- task: PublishBuildArtifacts@1
displayName: 'Publish NuGet Package'
condition: eq(variables['Agent.OS'], 'Windows_NT')
inputs:
pathToPublish: '$(Build.ArtifactStagingDirectory)'
artifactName: 'nuget'