name: 'LCU.API.Internal.CoreSoapApiWrapper.$(Build.SourceBranchName).$(Date:yyyyMMdd)$(Rev:.r)' trigger: branches: include: - '*' pool: name: LCUOnPrem demands: - msbuild - visualstudio variables: BuildPlatform: 'any cpu' steps: - task: NuGetToolInstaller@0 displayName: 'Use NuGet 5.5.1' inputs: versionSpec: 5.5.1 - task: NuGetCommand@2 displayName: 'NuGet restore' inputs: restoreSolution: '**\*.sln' vstsFeed: '58ebbac4-8e98-4281-bb3f-58003852f4a7' - task: DotNetCoreCLI@2 displayName: 'dotnet restore' inputs: command: restore projects: '**/*.csproj' - task: VSBuild@1 condition: eq(variables['Build.SourceBranchName'], 'develop') displayName: 'Build solution for Debug' inputs: solution: '**\*.sln' msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\"' platform: '$(BuildPlatform)' configuration: 'Debug' - task: VSBuild@1 condition: eq(variables['Build.SourceBranchName'], 'release') displayName: 'Build solution for Release / Uat' inputs: solution: '**\*.sln' msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\"' platform: '$(BuildPlatform)' configuration: 'Uat' - task: VSBuild@1 condition: eq(variables['Build.SourceBranchName'], 'master' ) displayName: 'Build solution for Master / Production' inputs: solution: '**\*.sln' msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\"' platform: '$(BuildPlatform)' configuration: 'Release' - task: VSTest@2 displayName: 'Test Assemblies' inputs: testAssemblyVer2: | **\$(BuildConfiguration)\*test*.dll !**\obj\** platform: '$(BuildPlatform)' configuration: 'Release' diagnosticsEnabled: True - task: PublishSymbols@2 condition: and (succeeded(), or( eq(variables['Build.SourceBranchName'], 'develop'), eq(variables['Build.SourceBranchName'], 'release'), eq(variables['Build.SourceBranchName'], 'master')) ) displayName: 'Publish symbols path' inputs: SearchPattern: '**\bin\**\*.pdb' PublishSymbols: false continueOnError: true - task: PublishBuildArtifacts@1 condition: and (succeeded(), or( eq(variables['Build.SourceBranchName'], 'develop'), eq(variables['Build.SourceBranchName'], 'release'), eq(variables['Build.SourceBranchName'], 'master')) ) displayName: 'Publish Artifact' inputs: PathtoPublish: '$(build.artifactstagingdirectory)' ArtifactName: 'dist_$(Build.SourceBranchName)'