DotNetCoreCLI@2 - .NET Core v2 工作
建置、測試、封裝或發佈 .NET 應用程式,或執行自定義 .NET CLI 命令。
建置、測試、封裝或發佈 dotnet 應用程式,或執行自定義 dotnet 命令。 針對套件命令,支援 NuGet.org 和已驗證的摘要,例如套件管理和 MyGet。
重要
NuGet 驗證 工作是向 Azure Artifacts 和其他 NuGet 存放庫進行驗證的新建議方式。 此 .NET Core CLI 工作的 restore
和 push
命令不再採用新功能,而且只會解決重大錯誤。 如需詳細資訊,請參閱備註。
語法
# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
inputs:
#azureSubscription: # string. Alias: ConnectedServiceName. Azure Resource Manager connection.
command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
#publishWebProjects: true # boolean. Optional. Use when command = publish. Publish web projects. Default: true.
#projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s) or solution(s).
#custom: # string. Required when command = custom. Custom command.
#arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments.
#restoreArguments: # string. Optional. Use when command = restore. Arguments.
#publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
#testRunTitle: # string. Optional. Use when command = test. Test run title.
#zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip published projects. Default: true.
#modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project's folder name to publish path. Default: true.
#packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.nupkg.
#nuGetFeedType: 'internal' # 'internal' | 'external'. Required when command = push. Target feed location. Default: internal.
#publishVstsFeed: # string. Alias: feedPublish. Required when command = push && nuGetFeedType = internal. Target feed.
#publishFeedCredentials: # string. Alias: externalEndpoint. Required when command = push && nuGetFeedType = external. NuGet server.
#packagesToPack: '**/*.csproj' # string. Alias: searchPatternPack. Required when command = pack. Path to csproj or nuspec file(s) to pack. Default: **/*.csproj.
#configuration: '$(BuildConfiguration)' # string. Alias: configurationToPack. Optional. Use when command = pack. Configuration to Package. Default: $(BuildConfiguration).
#packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
#nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
#includesymbols: false # boolean. Optional. Use when command = pack. Include Symbols. Default: false.
#includesource: false # boolean. Optional. Use when command = pack. Include Source. Default: false.
#requestTimeout: '300000' # string. Set timeout for package download request. Default: 300000.
# Feeds and authentication
#feedsToUse: 'select' # 'select' | 'config'. Alias: selectOrConfig. Required when command = restore. Feeds to use. Default: select.
#vstsFeed: # string. Alias: feedRestore. Optional. Use when selectOrConfig = select && command = restore. Use packages from this Azure Artifacts feed. Select from the dropdown or enter [project name/]feed name.
#includeNuGetOrg: true # boolean. Optional. Use when selectOrConfig = select && command = restore. Use packages from NuGet.org. Default: true.
#nugetConfigPath: # string. Optional. Use when selectOrConfig = config && command = restore. Path to NuGet.config.
#externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when selectOrConfig = config && command = restore. Credentials for feeds outside this organization/collection.
# Advanced
#noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
#restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory.
#verbosityRestore: 'Normal' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Normal.
# Advanced
#publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal && command = push. Publish pipeline metadata. Default: true.
# Pack options
#versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
#versionEnvVar: # string. Required when versioningScheme = byEnvVar && command = pack. Environment variable.
#majorVersion: '1' # string. Alias: requestedMajorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Major. Default: 1.
#minorVersion: '0' # string. Alias: requestedMinorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Minor. Default: 0.
#patchVersion: '0' # string. Alias: requestedPatchVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Patch. Default: 0.
# Advanced
#buildProperties: # string. Optional. Use when command = pack. Additional build properties.
#verbosityPack: 'Normal' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Normal.
# Advanced
#workingDirectory: # string. Optional. Use when command != restore && command != push && command != pack && command != pack && command != push && command != restore. Working directory.
# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
inputs:
command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
#publishWebProjects: true # boolean. Optional. Use when command = publish. Publish web projects. Default: true.
#projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s) or solution(s).
#custom: # string. Required when command = custom. Custom command.
#arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments.
#restoreArguments: # string. Optional. Use when command = restore. Arguments.
#publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
#testRunTitle: # string. Optional. Use when command = test. Test run title.
#zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip published projects. Default: true.
#modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project's folder name to publish path. Default: true.
#packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.nupkg.
#nuGetFeedType: 'internal' # 'internal' | 'external'. Required when command = push. Target feed location. Default: internal.
#publishVstsFeed: # string. Alias: feedPublish. Required when command = push && nuGetFeedType = internal. Target feed.
#publishFeedCredentials: # string. Alias: externalEndpoint. Required when command = push && nuGetFeedType = external. NuGet server.
#packagesToPack: '**/*.csproj' # string. Alias: searchPatternPack. Required when command = pack. Path to csproj or nuspec file(s) to pack. Default: **/*.csproj.
#configuration: '$(BuildConfiguration)' # string. Alias: configurationToPack. Optional. Use when command = pack. Configuration to Package. Default: $(BuildConfiguration).
#packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
#nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
#includesymbols: false # boolean. Optional. Use when command = pack. Include Symbols. Default: false.
#includesource: false # boolean. Optional. Use when command = pack. Include Source. Default: false.
# Feeds and authentication
#feedsToUse: 'select' # 'select' | 'config'. Alias: selectOrConfig. Required when command = restore. Feeds to use. Default: select.
#vstsFeed: # string. Alias: feedRestore. Optional. Use when selectOrConfig = select && command = restore. Use packages from this Azure Artifacts feed.
#includeNuGetOrg: true # boolean. Optional. Use when selectOrConfig = select && command = restore. Use packages from NuGet.org. Default: true.
#nugetConfigPath: # string. Optional. Use when selectOrConfig = config && command = restore. Path to NuGet.config.
#externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when selectOrConfig = config && command = restore. Credentials for feeds outside this organization/collection.
# Advanced
#noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
#restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory.
#verbosityRestore: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Detailed.
# Advanced
#publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal && command = push. Publish pipeline metadata. Default: true.
# Pack options
#versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
#versionEnvVar: # string. Required when versioningScheme = byEnvVar && command = pack. Environment variable.
#majorVersion: '1' # string. Alias: requestedMajorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Major. Default: 1.
#minorVersion: '0' # string. Alias: requestedMinorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Minor. Default: 0.
#patchVersion: '0' # string. Alias: requestedPatchVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Patch. Default: 0.
# Advanced
#buildProperties: # string. Optional. Use when command = pack. Additional build properties.
#verbosityPack: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Detailed.
# Advanced
#workingDirectory: # string. Optional. Use when command != restore && command != push && command != pack && command != pack && command != push && command != restore. Working directory.
# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
inputs:
command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
#publishWebProjects: true # boolean. Optional. Use when command = publish. Publish web projects. Default: true.
#projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s).
#custom: # string. Required when command = custom. Custom command.
#arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments.
#restoreArguments: # string. Optional. Use when command = restore. Arguments.
#publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
#testRunTitle: # string. Optional. Use when command = test. Test run title.
#zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip published projects. Default: true.
#modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project's folder name to publish path. Default: true.
#packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.nupkg.
#nuGetFeedType: 'internal' # 'internal' | 'external'. Required when command = push. Target feed location. Default: internal.
#publishVstsFeed: # string. Alias: feedPublish. Required when command = push && nuGetFeedType = internal. Target feed.
#publishFeedCredentials: # string. Alias: externalEndpoint. Required when command = push && nuGetFeedType = external. NuGet server.
#packagesToPack: '**/*.csproj' # string. Alias: searchPatternPack. Required when command = pack. Path to csproj or nuspec file(s) to pack. Default: **/*.csproj.
#configuration: '$(BuildConfiguration)' # string. Alias: configurationToPack. Optional. Use when command = pack. Configuration to Package. Default: $(BuildConfiguration).
#packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
#nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
#includesymbols: false # boolean. Optional. Use when command = pack. Include Symbols. Default: false.
#includesource: false # boolean. Optional. Use when command = pack. Include Source. Default: false.
# Feeds and authentication
#feedsToUse: 'select' # 'select' | 'config'. Alias: selectOrConfig. Required when command = restore. Feeds to use. Default: select.
#vstsFeed: # string. Alias: feedRestore. Optional. Use when selectOrConfig = select && command = restore. Use packages from this Azure Artifacts feed.
#includeNuGetOrg: true # boolean. Optional. Use when selectOrConfig = select && command = restore. Use packages from NuGet.org. Default: true.
#nugetConfigPath: # string. Optional. Use when selectOrConfig = config && command = restore. Path to NuGet.config.
#externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when selectOrConfig = config && command = restore. Credentials for feeds outside this organization/collection.
# Advanced
#noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
#restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory.
#verbosityRestore: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Detailed.
# Advanced
#publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal && command = push. Publish pipeline metadata. Default: true.
# Pack options
#versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
#versionEnvVar: # string. Required when versioningScheme = byEnvVar && command = pack. Environment variable.
#majorVersion: '1' # string. Alias: requestedMajorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Major. Default: 1.
#minorVersion: '0' # string. Alias: requestedMinorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Minor. Default: 0.
#patchVersion: '0' # string. Alias: requestedPatchVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Patch. Default: 0.
# Advanced
#buildProperties: # string. Optional. Use when command = pack. Additional build properties.
#verbosityPack: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Detailed.
# Advanced
#workingDirectory: # string. Optional. Use when command != restore && command != push && command != pack && command != pack && command != push && command != restore. Working directory.
# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
inputs:
command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
#publishWebProjects: true # boolean. Optional. Use when command = publish. Publish Web Projects. Default: true.
#projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s).
#custom: # string. Required when command = custom. Custom command.
#arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments.
#publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
#testRunTitle: # string. Optional. Use when command = test. Test run title.
#zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip Published Projects. Default: true.
#modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project name to publish path. Default: true.
#packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.nupkg.
#nuGetFeedType: 'internal' # 'internal' | 'external'. Required when command = push. Target feed location. Default: internal.
#publishVstsFeed: # string. Alias: feedPublish. Required when command = push && nuGetFeedType = internal. Target feed.
#publishFeedCredentials: # string. Alias: externalEndpoint. Required when command = push && nuGetFeedType = external. NuGet server.
#packagesToPack: '**/*.csproj' # string. Alias: searchPatternPack. Required when command = pack. Path to csproj or nuspec file(s) to pack. Default: **/*.csproj.
#configuration: '$(BuildConfiguration)' # string. Alias: configurationToPack. Optional. Use when command = pack. Configuration to Package. Default: $(BuildConfiguration).
#packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
#nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
#includesymbols: false # boolean. Optional. Use when command = pack. Include Symbols. Default: false.
#includesource: false # boolean. Optional. Use when command = pack. Include Source. Default: false.
# Feeds and authentication
#feedsToUse: 'select' # 'select' | 'config'. Alias: selectOrConfig. Required when command = restore. Feeds to use. Default: select.
#vstsFeed: # string. Alias: feedRestore. Optional. Use when selectOrConfig = select && command = restore. Use packages from this Azure Artifacts feed.
#includeNuGetOrg: true # boolean. Optional. Use when selectOrConfig = select && command = restore. Use packages from NuGet.org. Default: true.
#nugetConfigPath: # string. Optional. Use when selectOrConfig = config && command = restore. Path to NuGet.config.
#externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when selectOrConfig = config && command = restore. Credentials for feeds outside this organization/collection.
# Advanced
#noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
#restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory.
#verbosityRestore: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Detailed.
# Advanced
#publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal && command = push. Publish pipeline metadata. Default: true.
# Pack options
#versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
#versionEnvVar: # string. Required when versioningScheme = byEnvVar && command = pack. Environment variable.
#majorVersion: '1' # string. Alias: requestedMajorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Major. Default: 1.
#minorVersion: '0' # string. Alias: requestedMinorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Minor. Default: 0.
#patchVersion: '0' # string. Alias: requestedPatchVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Patch. Default: 0.
# Advanced
#buildProperties: # string. Optional. Use when command = pack. Additional build properties.
#verbosityPack: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Detailed.
# Advanced
#workingDirectory: # string. Optional. Use when command != pack && command != push && command != restore. Working Directory.
# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
inputs:
command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
#publishWebProjects: true # boolean. Optional. Use when command = publish. Publish Web Projects. Default: true.
#projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s).
#custom: # string. Required when command = custom. Custom command.
#arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments.
#publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
#zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip Published Projects. Default: true.
#modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project name to publish path. Default: true.
#packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.nupkg.
#nuGetFeedType: 'internal' # 'internal' | 'external'. Required when command = push. Target feed location. Default: internal.
#publishVstsFeed: # string. Alias: feedPublish. Required when command = push && nuGetFeedType = internal. Target feed.
#publishFeedCredentials: # string. Alias: externalEndpoint. Required when command = push && nuGetFeedType = external. NuGet server.
#packagesToPack: '**/*.csproj' # string. Alias: searchPatternPack. Required when command = pack. Path to csproj or nuspec file(s) to pack. Default: **/*.csproj.
#configuration: '$(BuildConfiguration)' # string. Alias: configurationToPack. Optional. Use when command = pack. Configuration to Package. Default: $(BuildConfiguration).
#packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
#nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
# Feeds and authentication
#feedsToUse: 'select' # 'select' | 'config'. Alias: selectOrConfig. Required when command = restore. Feeds to use. Default: select.
#vstsFeed: # string. Alias: feedRestore. Optional. Use when selectOrConfig = select && command = restore. Use packages from this Azure Artifacts/TFS feed.
#includeNuGetOrg: true # boolean. Optional. Use when selectOrConfig = select && command = restore. Use packages from NuGet.org. Default: true.
#nugetConfigPath: # string. Optional. Use when selectOrConfig = config && command = restore. Path to NuGet.config.
#externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when selectOrConfig = config && command = restore. Credentials for feeds outside this organization/collection.
# Advanced
#noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
#restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory.
#verbosityRestore: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Detailed.
# Pack options
#versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
#versionEnvVar: # string. Required when versioningScheme = byEnvVar && command = pack. Environment variable.
#majorVersion: '1' # string. Alias: requestedMajorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Major. Default: 1.
#minorVersion: '0' # string. Alias: requestedMinorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Minor. Default: 0.
#patchVersion: '0' # string. Alias: requestedPatchVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Patch. Default: 0.
# Advanced
#buildProperties: # string. Optional. Use when command = pack. Additional build properties.
#verbosityPack: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Detailed.
# Advanced
#workingDirectory: # string. Optional. Use when command != pack && command != push && command != restore. Working Directory.
輸入
azureSubscription
-
Azure Resource Manager 連線
輸入別名:ConnectedServiceName
。
string
。
指定以工作負載身分識別同盟設定的 Azure Resource Manager 服務連線,以在整合測試中使用 azurePipelinesCredential。 如需詳細資訊,請參閱 在整合測試中使用 AzurePipelinesCredential。
注意
此輸入僅支持設定為使用工作負載身分識別同盟的 ARM 服務連線。
command
-
命令
string
。 必填。 允許的值:build
、push
(nuget push)、pack
、publish
、restore
、run
、test
、custom
。 預設值:build
。
要執行的 dotnet 命令。 指定 custom
以新增自變數或使用此處未列出的命令。
重要
NuGet 驗證 工作是向 Azure Artifacts 和其他 NuGet 存放庫進行驗證的新建議方式。 此 .NET Core CLI 工作的 restore
和 push
命令不再採用新功能,而且只會解決重大錯誤。 如需詳細資訊,請參閱備註。
publishWebProjects
-
發佈 Web 專案
boolean
。 自選。
command = publish
時使用 。 預設值:true
。
如果此輸入設定為 true
,則會略過 projects
屬性值,而工作會嘗試在存放庫中尋找 Web 專案,並在其中執行 publish 命令。 Web 專案是由目錄中 web.config
檔案或 wwwroot
資料夾的存在來識別。 如果沒有 web.config
檔案或 wwwroot
資料夾,則會選取使用 Web SDK 的專案,例如 Microsoft.NET.Sdk.Web
。
publishWebProjects
-
發佈 Web 專案
boolean
。 自選。
command = publish
時使用 。 預設值:true
。
如果此輸入設定為 true
,則會略過 projects
屬性值,而工作會嘗試在存放庫中尋找 Web 專案,並在其中執行 publish 命令。 Web 專案是由目錄中 web.config
檔案或 wwwroot
資料夾的存在來識別。 如果沒有 web.config
檔案或 wwwroot
資料夾,則會選取使用 Web SDK 的專案,例如 Microsoft.NET.Sdk.Web
。
projects
-
項目路徑或方案
string
。 自選。
command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false
時使用 。
要使用的 .csproj
或 .sln
檔案的路徑。 您可以針對所有子資料夾中的所有 .csproj
檔案使用通配符(例如 **/*.csproj
)。 如需詳細資訊,請參閱 檔案比對模式參考。
不論 workingDirectory
設定為何,此路徑都會相對於存放庫的根目錄。
projects
-
項目路徑
string
。 自選。
command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false
時使用 。
要使用的 .csproj
檔案路徑。 您可以針對所有子資料夾中的所有 .csproj
檔案使用通配符(例如 **/*.csproj
)。 如需詳細資訊,請參閱 檔案比對模式參考。
不論 workingDirectory
設定為何,此路徑都會相對於存放庫的根目錄。
custom
-
自定義命令
string
。
command = custom
時為必要項。
要傳遞至 dotnet.exe
來執行的命令。 如需可用命令的完整清單,請參閱 dotnet CLI 檔案。
arguments
-
自變數
string
。 自選。
command = build || command = publish || command = run || command = test || command = custom
時使用 。
指定所選命令的自變數。 例如,建置組態、輸出資料夾和運行時間。 自變數取決於選取的命令。
此輸入目前只接受 build
、publish
、run
、test
和 custom
的自變數。 如果您要新增未列出的命令自變數,請使用 custom
。
restoreArguments
-
自變數
string
。 自選。
command = restore
時使用 。
寫入要傳遞至 restore
命令的其他自變數。
publishTestResults
-
發佈測試結果和程式代碼涵蓋範圍
boolean
。 自選。
command = test
時使用 。 預設值:true
。
啟用此選項會在 $(Agent.TempDirectory)
中產生 test results
TRX 檔案,並將結果發佈至伺服器。
此選項會將 --logger trx --results-directory $(Agent.TempDirectory)
附加至命令行自變數。
您可以將 [--collect "Code coverage"
] 選項新增至命令行自變數,以收集程式代碼涵蓋範圍。
testRunTitle
-
測試回合標題
string
。 自選。
command = test
時使用 。
提供測試回合的名稱。
zipAfterPublish
-
Zip 已發佈的專案
boolean
。 自選。
command = publish
時使用 。 預設值:true
。
如果此輸入設定為 true
,則會壓縮和刪除 publish 命令所建立的資料夾。
zipAfterPublish
-
Zip 已發佈專案
boolean
。 自選。
command = publish
時使用 。 預設值:true
。
如果此輸入設定為 true
,則會壓縮並刪除 publish 命令所建立的資料夾。
modifyOutputPath
-
新增項目的資料夾名稱以發佈路徑
boolean
。 自選。
command = publish
時使用 。 預設值:true
。
如果此輸入設定為 true
,則publish命令所建立的資料夾在自變數中明確指定輸出路徑時,專案檔名稱會加上其資料夾名稱。 如果您想要將多個項目發佈至相同的資料夾,這會很有用。
modifyOutputPath
-
新增專案名稱以發佈路徑
boolean
。 自選。
command = publish
時使用 。 預設值:true
。
如果此輸入設定為 true
,則publish命令所建立的資料夾在自變數中明確指定輸出路徑時,專案檔名稱會加上其資料夾名稱。 如果您想要將多個項目發佈至相同的資料夾,這會很有用。
使用 的
輸入別名:selectOrConfig
。
string
。
command = restore
時為必要項。 允許的值:select
(摘要)我在這裡選取),config
(我的 NuGet.config中的摘要)。 預設值:select
。
您可以在這裡從 Azure Artifacts 和/或 NuGet.org
選取摘要,或者您可以將 nuget.config
檔案認可至原始程式碼存放庫,並使用 nugetConfigPath
輸入來設定其路徑。
vstsFeed
-
使用此 Azure Artifacts 摘要中的套件。從下拉式清單中選取 ,或輸入 [項目名稱/]摘要名稱。
輸入別名:feedRestore
。
string
。 自選。
selectOrConfig = select && command = restore
時使用 。
在產生的 NuGet.config
中包含選取的摘要。 您必須已安裝套件管理並授權,才能在這裡選取摘要。
projectName
/
feedName
用於專案範圍的摘要。 只有 FeedName
用於組織範圍的摘要。 注意:test
命令不支援此動作。
vstsFeed
-
使用此 Azure Artifacts 摘要中的套件
輸入別名:feedRestore
。
string
。 自選。
selectOrConfig = select && command = restore
時使用 。
在產生的 NuGet.config
中包含選取的摘要。 您必須已安裝套件管理並授權,才能在這裡選取摘要。
projectName
/
feedName
用於專案範圍的摘要。 只有 FeedName
用於組織範圍的摘要。 注意:測試命令不支援此功能。
vstsFeed
-
使用此 Azure Artifacts/TFS 摘要中的套件
輸入別名:feedRestore
。
string
。 自選。
selectOrConfig = select && command = restore
時使用 。
在產生的 NuGet.config
中包含選取的摘要。 您必須已安裝套件管理並授權,才能在這裡選取摘要。
projectName
/
feedName
用於專案範圍的摘要。 只有 FeedName
用於組織範圍的摘要。 注意:測試命令不支援此功能。
includeNuGetOrg
-
使用來自 NuGet.org的套件
boolean
。 自選。
selectOrConfig = select && command = restore
時使用 。 預設值:true
。
在產生的 NuGet.config
中包含 NuGet.org
。
nugetConfigPath
-
NuGet.config 的路徑
string
。 自選。
selectOrConfig = config && command = restore
時使用 。
存放庫中的 NuGet.config
,指定要從中還原封裝的摘要。
externalFeedCredentials
-
此組織/集合外部摘要的認證
輸入別名:externalEndpoints
。
string
。 自選。
selectOrConfig = config && command = restore
時使用 。
要用於所選 NuGet.config
之外部登錄的認證。 對於此組織/集合中的摘要,請將此輸入保留空白;會自動使用組建的認證。
noCache
-
停用本機快取
boolean
。 自選。
command = restore
時使用 。 預設值:false
。
防止 NuGet 從本機電腦快取使用套件。
restoreDirectory
-
目的地目錄
輸入別名:packagesDirectory
。
string
。 自選。
command = restore
時使用 。
指定安裝套件的資料夾。 如果未指定任何資料夾,套件會還原至預設的 NuGet 套件快取。
verbosityRestore
-
詳細資訊
string
。 自選。
command = restore
時使用 。 允許的值:-
、Quiet
、Minimal
、Normal
、Detailed
Diagnostic
。 預設值:Normal
。
指定 restore
命令輸出中顯示的詳細數據量。
verbosityRestore
-
詳細資訊
string
。 自選。
command = restore
時使用 。 允許的值:-
、Quiet
、Minimal
、Normal
、Detailed
Diagnostic
。 預設值:Detailed
。
指定 restore
命令輸出中顯示的詳細數據量。
packagesToPush
-
發佈 的 NuGet 套件路徑
輸入別名:searchPatternPush
。
string
。
command = push
時為必要項。 預設值:$(Build.ArtifactStagingDirectory)/*.nupkg
。
要比對的模式或要上傳 nupkg
檔案的路徑。 多個模式可以以分號分隔,而且您可以使用 !
做為負數的模式。 範例:**/*.nupkg;!**/*.Tests.nupkg
。
nuGetFeedType
-
目標摘要位置
string
。
command = push
時為必要項。 允許的值:internal
(此組織/集合)、external
(外部 NuGet 伺服器(包括其他組織/集合)。 預設值:internal
。
指定目標摘要為內部或外部。
publishVstsFeed
-
目標摘要
輸入別名:feedPublish
。
string
。
command = push && nuGetFeedType = internal
時為必要項。
指定裝載在此組織的摘要。 您必須已安裝套件管理並授權,才能在這裡選取摘要。
publishPackageMetadata
-
發佈管線元數據
boolean
。 自選。
command = push && nuGetFeedType = internal && command = push
時使用 。 預設值:true
。
將此組建/發行管線的元數據(執行 #、原始程式碼資訊)與套件產生關聯。
publishFeedCredentials
-
NuGet 伺服器
輸入別名:externalEndpoint
。
string
。
command = push && nuGetFeedType = external
時為必要項。
包含外部 NuGet 伺服器認證的 NuGet 服務連線。
packagesToPack
-
csproj 或 nuspec 檔案的路徑以封裝
輸入別名:searchPatternPack
。
string
。
command = pack
時為必要項。 預設值:**/*.csproj
。
要搜尋要封裝 .csproj
或 .nuspec
檔案的模式。
您可以使用分號分隔多個模式,並以 !
做為負數。 範例:**/*.csproj;!**/*.Tests.csproj
。
將組態 configuration
- 封裝
輸入別名:configurationToPack
。
string
。 自選。
command = pack
時使用 。 預設值:$(BuildConfiguration)
。
使用 .csproj
檔案時,此輸入會指定要封裝的組態。
packDirectory
-
套件資料夾
輸入別名:outputDir
。
string
。 自選。
command = pack
時使用 。 預設值:$(Build.ArtifactStagingDirectory)
。
將建立封裝的資料夾。 如果這個資料夾是空的,則會與 csproj
檔案一起建立套件。
nobuild
-
不要建置
boolean
。 自選。
command = pack
時使用 。 預設值:false
。
指定工作在封裝之前不會建置專案。 此工作會對應至 build
命令的 --no-build
參數。
includesymbols
-
包含符號
boolean
。 自選。
command = pack
時使用 。 預設值:false
。
建立符號 NuGet 套件。 此工作會對應至命令行參數 --include-symbols
。
includesource
-
包含來源
boolean
。 自選。
command = pack
時使用 。 預設值:false
。
在套件中包含原始程式碼。 此工作會對應至命令行參數 --include-source
。
versioningScheme
-
自動套件版本設定
string
。
command = pack
時為必要項。 允許的值:off
、byPrereleaseNumber
(使用日期和時間)、byEnvVar
(使用環境變數)、byBuildNumber
(使用組建編號)。 預設值:off
。
此工作無法與包含的參考專案搭配使用。 如果您選擇 Use the date and time
,這會產生 SemVer相容版本,格式為 X.Y.Z-ci-datetime
X
、Y
和 Z
。
如果您選擇 Use an environment variable
,您必須選取環境變數,並確定它包含您想要使用的版本號碼。
如果您選擇 Use the build number
,這會使用組建編號來為您的套件建立版本。
注意: 在 Options
底下,將組建編號格式設定為 $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r)
。
versionEnvVar
-
環境變數
string
。
versioningScheme = byEnvVar && command = pack
時為必要項。
指定變數名稱,而不 $
、$env
或 %
。
majorVersion
-
主要
輸入別名:requestedMajorVersion
。
string
。
versioningScheme = byPrereleaseNumber && command = pack
時為必要項。 預設值:1
。
X.Y.Z版中的 X
。
minorVersion
-
次要
輸入別名:requestedMinorVersion
。
string
。
versioningScheme = byPrereleaseNumber && command = pack
時為必要項。 預設值:0
。
X.Y.Z版中的 Y
。
patchVersion
-
Patch
輸入別名:requestedPatchVersion
。
string
。
versioningScheme = byPrereleaseNumber && command = pack
時為必要項。 預設值:0
。
X.Y.Z版中的 Z
。
buildProperties
-
其他組建屬性
string
。 自選。
command = pack
時使用 。
指定以分號分隔的 token = value
組清單,其中 .nuspec
檔案中出現的每個 $token$
都會取代為指定的值。 值可以是引號中的字串。
verbosityPack
-
詳細資訊
string
。 自選。
command = pack
時使用 。 允許的值:-
、Quiet
、Minimal
、Normal
、Detailed
Diagnostic
。 預設值:Normal
。
指定 pack
命令輸出中顯示的詳細數據量。
verbosityPack
-
詳細資訊
string
。 自選。
command = pack
時使用 。 允許的值:-
、Quiet
、Minimal
、Normal
、Detailed
Diagnostic
。 預設值:Detailed
。
指定 pack
命令輸出中顯示的詳細數據量。
workingDirectory
-
工作目錄
string
。 自選。
command != restore && command != push && command != pack && command != pack && command != push && command != restore
時使用 。
執行文稿的目前工作目錄。
Empty
是存放庫(組建)或成品(release)的根目錄,$(System.DefaultWorkingDirectory)
。
workingDirectory
-
工作目錄
string
。 自選。
command != pack && command != push && command != restore
時使用 。
執行文稿的目前工作目錄。
Empty
是存放庫(組建)或成品(release)的根目錄,$(System.DefaultWorkingDirectory)
。
requestTimeout
-
設定套件下載要求逾時
string
。 預設值:300000
。
為工作為取得 .NET 套件所做的 HTTP 要求提供逾時值。 此值以毫秒為單位。 默認值為300000毫秒(5分鐘)。 不能超過 600000 毫秒 (10 分鐘)。
工作控制選項
除了工作輸入之外,所有工作都有控制選項。 如需詳細資訊,請參閱 控制項選項和一般工作屬性。
輸出變數
沒有。
言論
重要
NuGet 驗證 工作是向 Azure Artifacts 和其他 NuGet 存放庫進行驗證的新建議方式。 此 .NET Core CLI 工作的 restore
和 push
命令不再採用新功能,而且只會解決重大錯誤。
在整合測試中使用 AzurePipelinesCredential
適用於 .NET、C++、Go、Java、JavaScript 和 Python 的 Azure 身分識別連結庫 支援工作負載身分識別同盟,因此從 AzureCLI@2 和 AzurePowerShell@5 工作執行的程式代碼可以使用 Microsoft Entra ID 進行驗證,例如,使用 AzurePipelinesCredential
類別存取 Azure。
許多客戶都在從其他工作叫用的整合測試中使用 Azure SDK 用戶端連結庫。
DotNetCoreCLI@2、Maven@4 和 VSTest@3 工作可以使用 AzurePipelinesCredential
類別存取 Azure 資源。
您可以將 connectedServiceName
屬性設定為使用工作負載身分識別同盟設定的 Azure 服務連線。
AzurePipelinesCredential
需要設定 SYSTEM_ACCESSTOKEN。
下列範例顯示 DotNetCoreCLI@2
工作上的 connectedServiceName
輸入。
VSTest@3
和 Maven@4
使用方式很類似。
- task: DotNetCoreCLI@2
inputs:
command: 'run'
connectedServiceName: <Azure service connection configured with workload identity federation>
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
如需 AzurePipelinesCredential
的詳細資訊,請參閱 使用 AzurePipelinesCredential改善 Azure 服務連線中的安全性狀態。
為什麼我的組建、發佈或測試步驟無法還原套件?
大部分的 dotnet
命令,包括 build
、publish
和 test
都包含隱含 restore
步驟。 即使您在先前的步驟中執行成功 dotnet restore
,這將會針對已驗證的摘要失敗,因為先前的步驟會清除所使用的認證。
若要修正此問題,請將 --no-restore
旗標新增至 Arguments
文字框。
此外,當隱含 restore
步驟執行時,test
命令無法辨識 feedRestore
或 vstsFeed
自變數,而且以這種方式指定的摘要將不會包含在產生的 NuGet.config
檔案中。 建議使用明確的 dotnet restore
步驟來還原套件。
restore
命令會遵守 feedRestore
和 vstsFeed
自變數。
為什麼我收到 NU1507 警告,套件來源對應,但在我的電腦上建置時,它沒有任何警告?
執行 NuGet 還原或存取 NuGet 摘要的各種命令會建置特殊的暫存 NuGet.config
檔案,以新增 Azure 成品 NuGet 摘要的 NuGet 驗證。 這樣做的方式與套件來源對應用來將封裝對應至來源的架構衝突,並中斷存放庫中 NuGet.config
檔案中的套件來源對應釘態。
若要解決此衝突,您可以使用 NuGet 驗證 工作來驗證,之後再使用自定義命令來叫用所需的 dotnet 命令,而不需要修改 NuGet.config
。
# Authenticate Azure DevOps NuGet feed
- task: NuGetAuthenticate@1
displayName: 'Authenticate Azure DevOps NuGet feed'
# Restore project
- task: DotNetCoreCLI@2
inputs:
command: 'custom'
custom: 'restore'
# Build project
- task: DotNetCoreCLI@2
inputs:
command: 'custom'
custom: 'build'
arguments: '--no-restore'
為什麼我應該簽入 NuGet.config?
將 NuGet.config
簽入原始檔控制,可確保建置專案所需的重要資訊片段,也就是其套件的位置,可供每個簽出程式代碼的開發人員使用。
不過,對於開發人員小組處理大量項目的情況,您也可以將 Azure Artifacts 摘要新增至每個開發人員電腦上的全域 NuGet.config
。 在這些情況下,使用 NuGet 工作中 Feeds I select here
選項會復寫此組態。
故障排除
使用 Entity Framework 的專案已停止在託管代理程式上運作
.NET Core 沒有內建的 Entity Framework(EF)。 您必須先安裝EF,才能開始執行,或將 global.json
新增至具有必要 .NET Core SDK 版本的專案。 這可確保使用正確的 SDK 來建置 EF 專案。 如果計算機上沒有必要的版本,請將 UseDotNetV2
工作新增至管線,以安裝所需的版本。 如需詳細資訊,請參閱 取得 Entity Framework Core 執行時間。
例子
建置範例
建置專案
# Build project
- task: DotNetCoreCLI@2
inputs:
command: 'build'
建置多個專案
# Build multiple projects
- task: DotNetCoreCLI@2
inputs:
command: 'build'
projects: |
src/proj1/proj1.csproj
src/proj2/proj2.csproj
src/other/other.sln # Pass a solution instead of a csproj.
推送範例
將 NuGet 套件推送至內部摘要
# Push non test NuGet packages from a build to internal organization Feed
- task: DotNetCoreCLI@2
inputs:
command: 'push'
searchPatternPush: '$(Build.ArtifactStagingDirectory)/*.nupkg;!$(Build.ArtifactStagingDirectory)/*.Tests.nupkg'
feedPublish: 'FabrikamFeed'
將 NuGet 套件推送至外部摘要
# Push all NuGet packages from a build to external Feed
- task: DotNetCoreCLI@2
inputs:
command: 'push'
nugetFeedType: 'external'
externalEndPoint: 'MyNuGetServiceConnection'
套件範例
將 NuGetPackage 封裝至特定輸出目錄
# Pack a NuGet package to a test directory
- task: DotNetCoreCLI@2
inputs:
command: 'pack'
outputDir: '$(Build.ArtifactStagingDirectory)/TestDir'
封裝符號套件
# Pack a symbol package along with NuGet package
- task: DotNetCoreCLI@2
inputs:
command: 'pack'
includesymbols: true
發佈範例
將專案發佈至指定的資料夾
# Publish projects to specified folder.
- task: DotNetCoreCLI@2
displayName: 'dotnet publish'
inputs:
command: 'publish'
publishWebProjects: false
projects: '**/*.csproj'
arguments: '-o $(Build.ArtifactStagingDirectory)/Output'
zipAfterPublish: true
modifyOutputPath: true
還原範例
#Restore packages with the .NET Core CLI task
- task: DotNetCoreCLI@2
displayName: 'dotnet restore'
inputs:
command: 'restore'
feedsToUse: 'select'
feedRestore: 'projectName/feedName'
projects: '**/*.csproj'
includeNuGetOrg: true
測試範例
在存放庫中執行測試
# Run tests and auto publish test results.
- task: DotNetCoreCLI@2
inputs:
command: 'test'
要求
要求 | 描述 |
---|---|
管線類型 | YAML、傳統組建、傳統版本 |
執行於 | 代理 |
需求 | 沒有 |
功能 | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任何 |
Settable 變數 | 任何 |
代理程式版本 | 2.144.0 或更新 |
工作類別 | 建 |
要求 | 描述 |
---|---|
管線類型 | YAML、傳統組建、傳統版本 |
執行於 | 代理 |
需求 | 沒有 |
功能 | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任何 |
Settable 變數 | 任何 |
代理程式版本 | 2.115.0 或更新 |
工作類別 | 建 |
要求 | 描述 |
---|---|
管線類型 | YAML、傳統組建、傳統版本 |
執行於 | 代理 |
需求 | 沒有 |
功能 | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任何 |
Settable 變數 | 任何 |
代理程式版本 | 2.0.0 或更新 |
工作類別 | 建 |