diff --git a/eng/build.yml b/eng/build.yml index f50fd7b..e513673 100644 --- a/eng/build.yml +++ b/eng/build.yml @@ -17,75 +17,69 @@ variables: - name: InformationalVersion # do not rename (MSBuild property) value: $(Major).$(Minor).$(Patch)+$(Build.SourceVersion) -jobs: -- job: Build - pool: - vmImage: windows-latest - strategy: - matrix: - Debug: - BuildConfiguration: Debug - Release: - BuildConfiguration: Release - steps: - - task: DotNetCoreCLI@2 - displayName: Build - inputs: - command: build - projects: src\WinSW.sln - arguments: -c $(BuildConfiguration) -p:Version=$(BuildVersion) - - script: | - dotnet publish -c $(BuildConfiguration) -f net5.0-windows -r win-x64 src\WinSW\WinSW.csproj -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=$(BuildVersion) - dotnet publish -c $(BuildConfiguration) -f net5.0-windows -r win-x86 src\WinSW\WinSW.csproj -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=$(BuildVersion) - displayName: Build - - script: dotnet test -c $(BuildConfiguration) --collect "XPlat Code Coverage" --no-build src\WinSW.Tests\WinSW.Tests.csproj - displayName: Test - - task: NuGetToolInstaller@1 - displayName: Install Nuget - inputs: - checkLatest: true - - task: NuGetCommand@2 - displayName: Pack - inputs: - command: pack - packagesToPack: WinSW.nuspec - versioningScheme: byEnvVar - versionEnvVar: BuildVersion - - script: dotnet tool restore - displayName: Restore tools - - script: dotnet tool run codecov -- -f "src\**\TestResults\*\coverage.cobertura.xml" --required - displayName: Upload code coverage reports +pool: + vmImage: windows-latest +strategy: + matrix: + Debug: + BuildConfiguration: Debug + Release: + BuildConfiguration: Release +steps: +- task: DotNetCoreCLI@2 + displayName: Build + inputs: + command: build + projects: src\WinSW.sln + arguments: -c $(BuildConfiguration) -p:Version=$(BuildVersion) +- script: | + dotnet publish -c $(BuildConfiguration) -f net5.0-windows -r win-x64 src\WinSW\WinSW.csproj -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=$(BuildVersion) + dotnet publish -c $(BuildConfiguration) -f net5.0-windows -r win-x86 src\WinSW\WinSW.csproj -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=$(BuildVersion) + displayName: Build +- script: dotnet test -c $(BuildConfiguration) --collect "XPlat Code Coverage" --no-build src\WinSW.Tests\WinSW.Tests.csproj + displayName: Test +- task: NuGetCommand@2 + displayName: Pack + inputs: + command: pack + packagesToPack: WinSW.nuspec + versioningScheme: byEnvVar + versionEnvVar: BuildVersion +- script: dotnet tool restore + displayName: Restore tools +- script: dotnet tool run codecov -- -f "src\**\TestResults\*\coverage.cobertura.xml" --required + displayName: Upload code coverage reports - - publish: artifacts\publish\WinSW.NET2.exe - artifact: WinSW.NET2.exe_$(BuildConfiguration) - displayName: Publish .NET 2.0 +- publish: artifacts\publish\WinSW.NET2.exe + artifact: WinSW.NET2.exe_$(BuildConfiguration) + displayName: Publish .NET 2.0 - - publish: artifacts\publish\WinSW.NET4.exe - artifact: WinSW.NET4.exe_$(BuildConfiguration) - displayName: Publish .NET 4.0 +- publish: artifacts\publish\WinSW.NET4.exe + artifact: WinSW.NET4.exe_$(BuildConfiguration) + displayName: Publish .NET 4.0 - - publish: artifacts\publish\WinSW.NET461.exe - artifact: WinSW.NET461.exe_$(BuildConfiguration) - displayName: Publish .NET 4.6.1 +- publish: artifacts\publish\WinSW.NET461.exe + artifact: WinSW.NET461.exe_$(BuildConfiguration) + displayName: Publish .NET 4.6.1 - - publish: artifacts\publish\WinSW-x64.exe - artifact: WinSW-x64.exe_$(BuildConfiguration) - displayName: Publish .NET Core x64 +- publish: artifacts\publish\WinSW-x64.exe + artifact: WinSW-x64.exe_$(BuildConfiguration) + displayName: Publish .NET Core x64 - - publish: artifacts\publish\WinSW-x86.exe - artifact: WinSW-x86.exe_$(BuildConfiguration) - displayName: Publish .NET Core x86 +- publish: artifacts\publish\WinSW-x86.exe + artifact: WinSW-x86.exe_$(BuildConfiguration) + displayName: Publish .NET Core x86 - - publish: $(Build.ArtifactStagingDirectory)\WinSW.$(BuildVersion).nupkg - artifact: WinSW.nupkg_$(BuildConfiguration) - displayName: Publish Nuget +- publish: $(Build.ArtifactStagingDirectory)\WinSW.$(BuildVersion).nupkg + artifact: WinSW.nupkg_$(BuildConfiguration) + displayName: Publish Nuget - - publish: examples\sample-allOptions.xml - artifact: sample-allOptions.xml - displayName: Publish full sample - condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release')) +- publish: examples\sample-allOptions.xml + artifact: sample-allOptions.xml + displayName: Publish full sample + condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release')) - - publish: examples\sample-minimal.xml - artifact: sample-minimal.xml - displayName: Publish minimal sample - condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release')) +- publish: examples\sample-minimal.xml + artifact: sample-minimal.xml + displayName: Publish minimal sample + condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))