mirror of https://github.com/winsw/winsw
45 lines
1.7 KiB
YAML
45 lines
1.7 KiB
YAML
# https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core
|
|
|
|
parameters:
|
|
- name: strategy
|
|
type: object
|
|
default: ''
|
|
- name: artifacts
|
|
type: object
|
|
default: []
|
|
|
|
jobs:
|
|
- job: Build
|
|
pool:
|
|
vmImage: windows-latest
|
|
${{ if ne(parameters.strategy, '') }}:
|
|
strategy: ${{ parameters.strategy }}
|
|
steps:
|
|
- script: '"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\sn.exe" -k winsw_key.snk'
|
|
displayName: Generate key
|
|
- script: |
|
|
dotnet build -c $(BuildConfiguration) src\winsw.sln -p:Version=$(AssemblyVersion)
|
|
dotnet publish -c $(BuildConfiguration) -f netcoreapp3.1 src\Core\ServiceWrapper\winsw.csproj -p:Version=$(AssemblyVersion)
|
|
dotnet publish -c $(BuildConfiguration) -f netcoreapp3.1 -r win-x64 src\Core\ServiceWrapper\winsw.csproj -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=$(AssemblyVersion)
|
|
dotnet publish -c $(BuildConfiguration) -f netcoreapp3.1 -r win-x86 src\Core\ServiceWrapper\winsw.csproj -p:PublishSingleFile=true -p:PublishTrimmed=true -p:Version=$(AssemblyVersion)
|
|
displayName: Build
|
|
- task: NuGetToolInstaller@1
|
|
displayName: Install Nuget
|
|
inputs:
|
|
checkLatest: true
|
|
- task: NuGetCommand@2
|
|
displayName: Pack
|
|
inputs:
|
|
command: pack
|
|
packagesToPack: WinSW.nuspec
|
|
versioningScheme: byEnvVar
|
|
versionEnvVar: PackageVersion
|
|
- script: dotnet test -c $(BuildConfiguration) --no-build src\Test\winswTests\winswTests.csproj
|
|
displayName: Test
|
|
- ${{ each artifact in parameters.artifacts }}:
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: ${{ artifact.displayName }}
|
|
inputs:
|
|
PathtoPublish: ${{ artifact.inputs.Path }}
|
|
ArtifactName: ${{ artifact.inputs.Name }}
|