mirror of https://github.com/dapr/dotnet-sdk.git
101 lines
3.5 KiB
YAML
101 lines
3.5 KiB
YAML
# dapr/dotnet-sdk pipeline
|
|
|
|
trigger:
|
|
branches:
|
|
include:
|
|
- master
|
|
tags:
|
|
include:
|
|
- v*
|
|
|
|
stages:
|
|
- stage: Build
|
|
jobs:
|
|
- job: 'build_projects'
|
|
pool:
|
|
vmImage: 'windows-2019'
|
|
strategy:
|
|
maxParallel: 2
|
|
matrix:
|
|
debug:
|
|
configuration: debug
|
|
release:
|
|
configuration: release
|
|
steps:
|
|
- uses: actions/setup-dotnet@v1
|
|
with:
|
|
dotnet-version: '3.1.x' # SDK Version to use; x will use the latest version of the 3.1 channel
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Build solution - $(Configuration)'
|
|
inputs:
|
|
command: 'build'
|
|
arguments: '--configuration $(Configuration)'
|
|
projects: 'all.sln'
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Test - $(Configuration)'
|
|
inputs:
|
|
command: 'test'
|
|
arguments: '--configuration $(Configuration)'
|
|
projects: 'test/test.sln'
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Package Dapr.Actors nuget - $(Configuration)'
|
|
inputs:
|
|
command: 'pack'
|
|
arguments: '--configuration $(Configuration)'
|
|
packagesToPack: 'src/Dapr.Actors/Dapr.Actors.csproj'
|
|
nobuild: true
|
|
versioningScheme: 'off'
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Package Dapr.Actors.AspNetCore nuget - $(Configuration)'
|
|
inputs:
|
|
command: 'pack'
|
|
arguments: '--configuration $(Configuration)'
|
|
packagesToPack: 'src/Dapr.Actors.AspNetCore/Dapr.Actors.AspNetCore.csproj'
|
|
nobuild: true
|
|
versioningScheme: 'off'
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Package Dapr.Client nuget - $(Configuration)'
|
|
inputs:
|
|
command: 'pack'
|
|
arguments: '--configuration $(Configuration)'
|
|
packagesToPack: 'src/Dapr.Client/Dapr.Client.csproj'
|
|
nobuild: true
|
|
versioningScheme: 'off'
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Package Dapr.AspNetCore nuget - $(Configuration)'
|
|
inputs:
|
|
command: 'pack'
|
|
arguments: '--configuration $(Configuration)'
|
|
packagesToPack: 'src/Dapr.AspNetCore/Dapr.AspNetCore.csproj'
|
|
nobuild: true
|
|
versioningScheme: 'off'
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Package Dapr.Client.Grpc nuget - $(Configuration)'
|
|
- task: CopyFiles@2
|
|
condition: ne(variables['Build.Reason'], 'PullRequest')
|
|
inputs:
|
|
SourceFolder: 'bin/$(Configuration)'
|
|
Contents: '**'
|
|
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
|
- task: NuGetCommand@2
|
|
displayName: 'Publish nuget package to feed'
|
|
condition: false
|
|
inputs:
|
|
command: 'push'
|
|
packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg'
|
|
nuGetFeedType: 'internal'
|
|
publishVstsFeed: 'b3bbc81a-4160-49ac-9a5f-5a27eda7ce5b'
|
|
allowPackageConflicts: true
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: 'Publish binaries to artifact'
|
|
inputs:
|
|
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
|
|
ArtifactName: '$(Configuration)_drop'
|
|
publishLocation: 'Container'
|
|
- task: CmdLine@2
|
|
displayName: 'Add release tag for release branch'
|
|
condition: and(eq(variables['Configuration'], 'release'), startsWith(variables['Build.SourceBranch'], 'refs/tags/v'))
|
|
inputs:
|
|
script: 'echo "##vso[build.addbuildtag]release'
|
|
workingDirectory: '$(Build.ArtifactStagingDirectory)'
|