diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 0000000..4558e6a --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,74 @@ +# .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: +- master +- feature/* + +pr: +- master + +pool: + vmImage: 'windows-latest' + +variables: + solution: '**/src/*.sln' + buildPlatform: 'Any CPU' + buildConfiguration: 'Release' + +steps: +- task: DotNetCoreInstaller@2 + displayName: 'Use .NET Core sdk 3.0' + inputs: + version: '3.0.100' + +- task: NuGetToolInstaller@0 + displayName: 'Use NuGet 5.2.0' + inputs: + versionSpec: 5.2.0 + checkLatest: true + +- task: NuGetCommand@2 + displayName: NuGet restore + inputs: + restoreSolution: '$(solution)' + feedsToUse: config + +- task: VSBuild@1 + displayName: 'Build solution **\src\*.sln' + inputs: + vsVersion: 'latest' + solution: '$(solution)' + platform: '$(buildPlatform)' + configuration: '$(buildConfiguration)' + +- task: replacetokens@3 + inputs: + rootDirectory: 'templates\Dapplo.Microsoft.Extensions.Hosting.CaliburnMicro.Template\content' + targetFiles: '*.csproj' + encoding: 'auto' + writeBOM: true + actionOnMissing: 'fail' + keepToken: false + tokenPrefix: '#{' + tokenSuffix: '}#' + +- script: nuget pack templates\Dapplo.Microsoft.Extensions.Hosting.CaliburnMicro.Template\Dapplo.Microsoft.Extensions.Hosting.CaliburnMicro.Template.nuspec -Version $(Build.BuildNumber) + +- task: CopyFiles@2 + displayName: 'Copy Files to: $(build.artifactstagingdirectory)' + inputs: + SourceFolder: '$(system.defaultworkingdirectory)' + Contents: | + **\bin\$(BuildConfiguration)\*.nupkg + *Template*.nupkg + **\TestResults\**\*.coverage + TargetFolder: '$(build.artifactstagingdirectory)' + flattenFolders: true + +- task: PublishBuildArtifacts@1 + displayName: 'Publish Artifact: drop' + inputs: + PathtoPublish: '$(build.artifactstagingdirectory)'