trigger: branches: include: - Development paths: include: - "Server/*" - "Shared/*" - "Tests/*" exclude: - "**/*.yaml" - "**/*.yml" - "Archive/*" - "Client/*" - "ClientHub/*" pool: name: Mesa-IIS demands: OI-Metrology-Server-Development variables: # solution: '**/*.sln' # buildPlatform: 'Any CPU' buildConfiguration: "Debug" ASPNETCORE_ENVIRONMENT: "Development" steps: - script: | set coreVersion=net7.0 echo %coreVersion% echo ##vso[task.setvariable variable=CoreVersion;]%coreVersion% echo $(CoreVersion) displayName: CoreVersion - script: | set configuration=Debug echo %configuration% echo ##vso[task.setvariable variable=Configuration;]%configuration% echo ($Configuration) displayName: Configuration - script: | set nugetSource=https://messa017.infineon.com/v3/index.json echo %nugetSource% echo ##vso[task.setvariable variable=NugetSource;]%nugetSource% echo $(NugetSource) displayName: NugetSource - script: | set gitCommit=$(Build.SourceVersion) set gitCommitSeven=%gitCommit:~0,7% echo %gitCommitSeven% echo ##vso[task.setvariable variable=GitCommitSeven;]%gitCommitSeven% echo $(GitCommitSeven) displayName: GitCommitSeven - script: | echo $(Build.BuildId) echo $(Build.Reason) echo $(Build.Repository.Id) echo $(Build.Repository.Name) echo $(Build.SourceVersion) echo $(CoreVersion) echo $(Configuration) echo $(NugetSource) echo $(GitCommitSeven) REM echo $(pipelinePassword) displayName: "Echo Check" - script: '"C:\program files\dotnet\dotnet.exe" nuget locals all --clear' displayName: "Nuget Clear" enabled: false - script: | "C:\program files\dotnet\dotnet.exe" user-secrets init "C:\program files\dotnet\dotnet.exe" user-secrets set "BuildNumber" "$(Build.BuildId)" "C:\program files\dotnet\dotnet.exe" user-secrets set "GitCommitSeven" "$(GitCommitSeven)" "C:\program files\dotnet\dotnet.exe" user-secrets list workingDirectory: Server displayName: "Safe storage of app secrets - Server" - script: '"C:\program files\dotnet\dotnet.exe" build --configuration $(Configuration) --source $(NugetSource)' workingDirectory: Tests displayName: "Core Build - Tests" - script: '"C:\program files\dotnet\dotnet.exe" build --configuration $(Configuration) --source $(NugetSource)' workingDirectory: Server displayName: "Core Build - Server" - powershell: Get-ChildItem .\ -include TestResults -Recurse | foreach ($_) { remove-item $_.fullname -Force -Recurse } workingDirectory: "$(System.DefaultWorkingDirectory)/.vscode" displayName: "PowerShell Script" - script: "dotnet test --configuration $(Configuration)" workingDirectory: Tests displayName: "Core Test" # enabled: false - script: '"C:\program files\dotnet\dotnet.exe" tool restore' workingDirectory: Server displayName: "Tool Restore" enabled: false - script: '"C:\program files\dotnet\dotnet.exe" ReportGenerator -reports:.vscode/TestResults/*/coverage.cobertura.xml -targetDir:$(Build.ArtifactStagingDirectory)\Coverage -reportTypes:Html_Dark' workingDirectory: Server displayName: "Report Generator" enabled: false - task: PublishTestResults@2 displayName: "Publish Test Results **/*.trx" inputs: testResultsFormat: VSTest testResultsFiles: "**/*.trx" testRunTitle: "$(GitCommitSeven)-$(Build.BuildId)-$(CoreVersion)-$(Configuration)-$(Build.Repository.Name)" searchFolder: "$(System.DefaultWorkingDirectory)/.vscode" - task: PublishTestResults@2 displayName: "Publish Test Results **/coverage.cobertura.xml" inputs: testResultsFormat: VSTest testResultsFiles: "**/coverage.cobertura.xml" testRunTitle: "$(GitCommitSeven)-$(Build.BuildId)-$(CoreVersion)-$(Configuration)-$(Build.Repository.Name)" searchFolder: "$(System.DefaultWorkingDirectory)/.vscode" - task: mspremier.CreateWorkItem.CreateWorkItem-task.CreateWorkItem@1 displayName: "Create work item" inputs: teamProject: "Mesa_FI" workItemType: Bug title: $(GitCommitSeven)-$(Build.BuildId)-$(Build.Repository.Name)-$(Configuration) assignedTo: "$(Build.RequestedForId)" enabled: false - script: '"C:\program files\dotnet\dotnet.exe" publish --configuration $(Configuration) --runtime win-x64 --self-contained -o "D:\$(CoreVersion)\$(Build.Repository.Name)\$(GitCommitSeven)-$(Build.BuildId)-$(Build.Repository.Name)-$(Configuration)\Server" --source $(NugetSource)' workingDirectory: Server displayName: "Core Publish" - task: PublishBuildArtifacts@1 displayName: "Publish Artifact: drop" enabled: false - script: '"C:\program files\dotnet\dotnet.exe" clean --configuration $(Configuration)' workingDirectory: Tests displayName: "Core Clean - Tests" - script: '"C:\program files\dotnet\dotnet.exe" clean --configuration $(Configuration)' workingDirectory: Server displayName: "Core Clean - Server"