msbuild
91 строка · 7.8 Кб
1# Please remember to update the documentation if you make changes to these parameters!
2parameters:
3HelixSource: 'pr/default' # required -- sources must start with pr/, official/, prodcon/, or agent/
4HelixType: 'tests/default/' # required -- Helix telemetry which identifies what type of data this is; should include "test" for clarity and must end in '/'
5HelixBuild: $(Build.BuildNumber) # required -- the build number Helix will use to identify this -- automatically set to the AzDO build number
6HelixTargetQueues: '' # required -- semicolon-delimited list of Helix queues to test on; see https://helix.dot.net/ for a list of queues
7HelixAccessToken: '' # required -- access token to make Helix API requests; should be provided by the appropriate variable group
8HelixConfiguration: '' # optional -- additional property attached to a job
9HelixPreCommands: '' # optional -- commands to run before Helix work item execution
10HelixPostCommands: '' # optional -- commands to run after Helix work item execution
11WorkItemDirectory: '' # optional -- a payload directory to zip up and send to Helix; requires WorkItemCommand; incompatible with XUnitProjects
12WorkItemCommand: '' # optional -- a command to execute on the payload; requires WorkItemDirectory; incompatible with XUnitProjects
13WorkItemTimeout: '' # optional -- a timeout in TimeSpan.Parse-ready value (e.g. 00:02:00) for the work item command; requires WorkItemDirectory; incompatible with XUnitProjects
14CorrelationPayloadDirectory: '' # optional -- a directory to zip up and send to Helix as a correlation payload
15XUnitProjects: '' # optional -- semicolon-delimited list of XUnitProjects to parse and send to Helix; requires XUnitRuntimeTargetFramework, XUnitPublishTargetFramework, XUnitRunnerVersion, and IncludeDotNetCli=true
16XUnitWorkItemTimeout: '' # optional -- the workitem timeout in seconds for all workitems created from the xUnit projects specified by XUnitProjects
17XUnitPublishTargetFramework: '' # optional -- framework to use to publish your xUnit projects
18XUnitRuntimeTargetFramework: '' # optional -- framework to use for the xUnit console runner
19XUnitRunnerVersion: '' # optional -- version of the xUnit nuget package you wish to use on Helix; required for XUnitProjects
20IncludeDotNetCli: false # optional -- true will download a version of the .NET CLI onto the Helix machine as a correlation payload; requires DotNetCliPackageType and DotNetCliVersion
21DotNetCliPackageType: '' # optional -- either 'sdk', 'runtime' or 'aspnetcore-runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/main/release-notes/releases-index.json
22DotNetCliVersion: '' # optional -- version of the CLI to send to Helix; based on this: https://raw.githubusercontent.com/dotnet/core/main/release-notes/releases-index.json
23WaitForWorkItemCompletion: true # optional -- true will make the task wait until work items have been completed and fail the build if work items fail. False is "fire and forget."
24IsExternal: false # [DEPRECATED] -- doesn't do anything, jobs are external if HelixAccessToken is empty and Creator is set
25HelixBaseUri: 'https://helix.dot.net/' # optional -- sets the Helix API base URI (allows targeting https://helix.int-dot.net )
26Creator: '' # optional -- if the build is external, use this to specify who is sending the job
27DisplayNamePrefix: 'Run Tests' # optional -- rename the beginning of the displayName of the steps in AzDO
28condition: succeeded() # optional -- condition for step to execute; defaults to succeeded()
29continueOnError: false # optional -- determines whether to continue the build if the step errors; defaults to false
30
31steps:
32- powershell: 'powershell "$env:BUILD_SOURCESDIRECTORY\eng\common\msbuild.ps1 $env:BUILD_SOURCESDIRECTORY\eng\common\helixpublish.proj /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$env:BUILD_SOURCESDIRECTORY\artifacts\log\$env:BuildConfig\SendToHelix.binlog"'
33displayName: ${{ parameters.DisplayNamePrefix }} (Windows)
34env:
35BuildConfig: $(_BuildConfig)
36HelixSource: ${{ parameters.HelixSource }}
37HelixType: ${{ parameters.HelixType }}
38HelixBuild: ${{ parameters.HelixBuild }}
39HelixConfiguration: ${{ parameters.HelixConfiguration }}
40HelixTargetQueues: ${{ parameters.HelixTargetQueues }}
41HelixAccessToken: ${{ parameters.HelixAccessToken }}
42HelixPreCommands: ${{ parameters.HelixPreCommands }}
43HelixPostCommands: ${{ parameters.HelixPostCommands }}
44WorkItemDirectory: ${{ parameters.WorkItemDirectory }}
45WorkItemCommand: ${{ parameters.WorkItemCommand }}
46WorkItemTimeout: ${{ parameters.WorkItemTimeout }}
47CorrelationPayloadDirectory: ${{ parameters.CorrelationPayloadDirectory }}
48XUnitProjects: ${{ parameters.XUnitProjects }}
49XUnitWorkItemTimeout: ${{ parameters.XUnitWorkItemTimeout }}
50XUnitPublishTargetFramework: ${{ parameters.XUnitPublishTargetFramework }}
51XUnitRuntimeTargetFramework: ${{ parameters.XUnitRuntimeTargetFramework }}
52XUnitRunnerVersion: ${{ parameters.XUnitRunnerVersion }}
53IncludeDotNetCli: ${{ parameters.IncludeDotNetCli }}
54DotNetCliPackageType: ${{ parameters.DotNetCliPackageType }}
55DotNetCliVersion: ${{ parameters.DotNetCliVersion }}
56WaitForWorkItemCompletion: ${{ parameters.WaitForWorkItemCompletion }}
57HelixBaseUri: ${{ parameters.HelixBaseUri }}
58Creator: ${{ parameters.Creator }}
59SYSTEM_ACCESSTOKEN: $(System.AccessToken)
60condition: and(${{ parameters.condition }}, eq(variables['Agent.Os'], 'Windows_NT'))
61continueOnError: ${{ parameters.continueOnError }}
62- script: $BUILD_SOURCESDIRECTORY/eng/common/msbuild.sh $BUILD_SOURCESDIRECTORY/eng/common/helixpublish.proj /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$BUILD_SOURCESDIRECTORY/artifacts/log/$BuildConfig/SendToHelix.binlog
63displayName: ${{ parameters.DisplayNamePrefix }} (Unix)
64env:
65BuildConfig: $(_BuildConfig)
66HelixSource: ${{ parameters.HelixSource }}
67HelixType: ${{ parameters.HelixType }}
68HelixBuild: ${{ parameters.HelixBuild }}
69HelixConfiguration: ${{ parameters.HelixConfiguration }}
70HelixTargetQueues: ${{ parameters.HelixTargetQueues }}
71HelixAccessToken: ${{ parameters.HelixAccessToken }}
72HelixPreCommands: ${{ parameters.HelixPreCommands }}
73HelixPostCommands: ${{ parameters.HelixPostCommands }}
74WorkItemDirectory: ${{ parameters.WorkItemDirectory }}
75WorkItemCommand: ${{ parameters.WorkItemCommand }}
76WorkItemTimeout: ${{ parameters.WorkItemTimeout }}
77CorrelationPayloadDirectory: ${{ parameters.CorrelationPayloadDirectory }}
78XUnitProjects: ${{ parameters.XUnitProjects }}
79XUnitWorkItemTimeout: ${{ parameters.XUnitWorkItemTimeout }}
80XUnitPublishTargetFramework: ${{ parameters.XUnitPublishTargetFramework }}
81XUnitRuntimeTargetFramework: ${{ parameters.XUnitRuntimeTargetFramework }}
82XUnitRunnerVersion: ${{ parameters.XUnitRunnerVersion }}
83IncludeDotNetCli: ${{ parameters.IncludeDotNetCli }}
84DotNetCliPackageType: ${{ parameters.DotNetCliPackageType }}
85DotNetCliVersion: ${{ parameters.DotNetCliVersion }}
86WaitForWorkItemCompletion: ${{ parameters.WaitForWorkItemCompletion }}
87HelixBaseUri: ${{ parameters.HelixBaseUri }}
88Creator: ${{ parameters.Creator }}
89SYSTEM_ACCESSTOKEN: $(System.AccessToken)
90condition: and(${{ parameters.condition }}, ne(variables['Agent.Os'], 'Windows_NT'))
91continueOnError: ${{ parameters.continueOnError }}
92