Azure Pipelines 任务参考
任务在管道中执行操作。 例如,任务可以生成应用、与 Azure 资源交互、安装工具或运行测试。 任务是用于在管道中定义自动化的构建基块。
本节中的文章介绍了 Azure Pipelines 的内置任务,并为每个任务具有特殊含义的属性指定语义。
有关任务支持的常规属性的详细信息,请参阅 YAML 参考 steps.task。
有关使用任务创作管道的操作说明和教程,包括创建自定义任务、自定义扩展和在 Visual Studio Marketplace 上查找任务,请参阅 任务概念 和 Azure Pipelines 文档。
重要
若要查看适用于平台的任务的任务参考,请确保从位于目录上方的版本选择器中选择正确的 Azure DevOps 版本。 功能支持因是使用 Azure DevOps Services 还是本地版本的 Azure DevOps Server 而有所不同。
若要了解所使用的本地版本,请参阅 查找 Azure DevOps 平台和版本。
生成任务
任务 | 描述 |
---|---|
.NET Core DotNetCoreCLI@2 DotNetCoreCLI@1 DotNetCoreCLI@0 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
高级安全自动生成 AdvancedSecurity-Codeql-Autobuild@1 |
尝试通过在源文件夹中查找和生成项目文件来生成存储库。 |
高级安全初始化 CodeQL AdvancedSecurity-Codeql-Init@1 |
初始化 CodeQL 数据库,以准备生成。 |
高级安全执行 CodeQL 分析 AdvancedSecurity-Codeql-Analyze@1 |
完成 CodeQL 数据库并运行分析查询。 |
高级安全发布结果 AdvancedSecurity-Publish@1 |
合并代码扫描工具生成的 SARIF 文件(s),增强合并的 SARIF 文件,并将增强的 SARIF 文件发布到高级安全服务。 |
Android 生成 AndroidBuild@1 |
AndroidBuild@1已弃用。 使用 Gradle。 |
Android 签名 AndroidSigning@3 AndroidSigning@2 AndroidSigning@1 |
对 Android APK 文件进行签名和对齐。 |
蚂蚁 Ant@1 |
使用 Apache Ant 进行生成。 |
Azure IoT Edge AzureIoTEdge@2 |
生成和部署 Azure IoT Edge 映像。 |
CMake CMake@1 |
使用 CMake 跨平台生成系统进行生成。 |
容器生成 ContainerBuild@0 |
容器生成任务。 |
Docker Docker@2 Docker@1 Docker@0 |
生成或推送 Docker 映像、登录或注销、启动或停止容器,或运行 Docker 命令。 |
Docker Compose DockerCompose@1 DockerCompose@0 |
生成、推送或运行多容器 Docker 应用程序。 任务可与 Docker 或 Azure 容器注册表一起使用。 |
下载 GitHub Nuget 包 DownloadGitHubNugetPackage@1 |
使用 dotnet CLI 还原 nuget 包。 |
Go Go@0 |
获取、生成或测试 Go 应用程序,或运行自定义 Go 命令。 |
Gradle Gradle@3 Gradle@2 Gradle@1 |
使用 Gradle 包装器脚本进行生成。 |
格鲁特 Grunt@0 |
运行 Grunt JavaScript 任务运行程序。 |
gulp gulp@1 gulp@0 |
运行 gulp Node.js 基于任务的流式处理生成系统。 |
索引源和发布符号 PublishSymbols@2 PublishSymbols@1 |
为源代码编制索引并将符号发布到文件共享或 Azure Artifacts 符号服务器。 |
Jenkins 队列作业 JenkinsQueueJob@2 |
在 Jenkins 服务器上对作业进行排队。 |
Jenkins 队列作业 JenkinsQueueJob@1 |
在 Jenkins 服务器上对作业进行排队。 |
Maven Maven@4 Maven@3 Maven@2 Maven@1 |
使用 Apache Maven 生成、测试和部署。 |
MSBuild MSBuild@1 |
使用 MSBuild 进行生成。 |
准备分析配置 SonarQubePrepare@7 SonarQubePrepare@6 SonarQubePrepare@5 SonarQubePrepare@4 |
准备 SonarQube 服务器分析配置。 |
发布质量门结果 SonarQubePublish@7 SonarQubePublish@6 SonarQubePublish@5 SonarQubePublish@4 |
在 Azure DevOps 生成结果上发布 SonarQube Server 的质量门结果,在实际分析后使用。 |
运行代码分析 SonarQubeAnalyze@7 SonarQubeAnalyze@6 SonarQubeAnalyze@5 SonarQubeAnalyze@4 |
运行扫描程序并将结果上传到 SonarQube 服务器。 |
Visual Studio 生成 VSBuild@1 |
使用 MSBuild 生成并设置 Visual Studio 版本属性。 |
Xamarin.Android XamarinAndroid@1 |
使用 Xamarin 生成 Android 应用。 |
Xamarin.iOS XamariniOS@2 XamariniOS@1 |
在 macOS 上使用 Xamarin 生成 iOS 应用。 |
Xcode Xcode@5 Xcode@4 |
在 macOS 上生成、测试或存档 Xcode 工作区。 (可选)打包应用。 |
Xcode 生成 Xcode@3 Xcode@2 |
在 macOS 上生成 Xcode 工作区。 |
Xcode 包 iOS XcodePackageiOS@0 |
使用 xcrun 从 Xcode 生成输出生成 .ipa 文件(Xcode 7 或更低版本)。 |
部署任务
任务 | 描述 |
---|---|
App Center 分发 AppCenterDistribute@3 AppCenterDistribute@2 AppCenterDistribute@1 AppCenterDistribute@0 |
通过 Visual Studio App Center 将应用版本分发给测试人员和用户。 |
ARM 模板部署 AzureResourceManagerTemplateDeployment@3 |
将 Azure 资源管理器 (ARM) 模板部署到所有部署范围。 |
Azure 应用配置导出 AzureAppConfigurationExport@10 |
从 Azure 应用配置将键值导出到任务变量。 |
Azure 应用服务经典版(已弃用) AzureWebPowerShellDeployment@1 |
使用 Azure PowerShell 创建或更新 Azure 应用服务。 |
Azure 应用服务部署 AzureRmWebAppDeployment@4 AzureRmWebAppDeployment@3 AzureRmWebAppDeployment@2 |
使用 Docker、Java、.NET、.NET、.NET Core、Node.js、PHP、Python 或 Ruby 部署到 Azure 应用服务。 |
Azure 应用服务管理 AzureAppServiceManage@0 |
启动、停止、重启、槽交换、槽删除、安装站点扩展或为 Azure 应用服务启用持续监视。 |
Azure 应用服务设置 AzureAppServiceSettings@1 |
更新/添加适用于 Linux 或 Windows 的 Azure Web 应用的应用设置。 |
Azure CLI AzureCLI@2 AzureCLI@1 |
在 Linux 代理上运行时,在 PowerShell Core/Shell 脚本中针对 Azure 订阅运行 Azure CLI 命令,或者在 Windows 代理上运行时运行 PowerShell/PowerShell Core/Batch 脚本。 |
Azure CLI 预览版 AzureCLI@0 |
使用 Azure CLI 命令针对 Azure 订阅运行 Shell 或 Batch 脚本。 |
Azure 云服务部署 AzureCloudPowerShellDeployment@2 AzureCloudPowerShellDeployment@1 |
部署 Azure 云服务。 |
Azure 容器应用部署 AzureContainerApps@1 AzureContainerApps@0 |
用于生成和部署 Azure 容器应用的 Azure DevOps 任务。 |
Azure Database for MySQL 部署 AzureMysqlDeployment@1 |
运行脚本并更改 Azure Database for MySQL。 |
Azure 文件复制 AzureFileCopy@6 AzureFileCopy@5 AzureFileCopy@4 AzureFileCopy@3 AzureFileCopy@2 AzureFileCopy@1 |
将文件复制到 Azure Blob 存储或虚拟机。 |
在 Kubernetes 上 AzureFunctionOnKubernetes@1 AzureFunctionOnKubernetes@0 |
将 Azure 函数部署到 Kubernetes 群集。 |
Azure Functions 部署 AzureFunctionApp@2 AzureFunctionApp@1 |
使用 .NET、Python、JavaScript、PowerShell、基于 Java 的 Web 应用程序更新函数应用。 |
用于容器 的 Azure Functions AzureFunctionAppContainer@1 |
使用 Docker 容器更新函数应用。 |
Azure Key Vault AzureKeyVault@2 AzureKeyVault@1 |
下载 Azure Key Vault 机密。 |
Azure Monitor 警报(已弃用) AzureMonitorAlerts@0 |
针对 Azure 资源的可用指标配置警报(已弃用)。 |
Azure PowerShell AzurePowerShell@5 AzurePowerShell@4 AzurePowerShell@3 AzurePowerShell@2 AzurePowerShell@1 |
在 Azure 环境中运行 PowerShell 脚本。 |
Azure 资源组部署 AzureResourceGroupDeployment@2 |
将 Azure 资源管理器 (ARM) 模板部署到资源组并管理虚拟机。 |
Azure 资源组部署 AzureResourceGroupDeployment@1 |
部署、启动、停止、删除 Azure 资源组。 |
Azure Spring Apps AzureSpringCloud@0 |
将应用程序部署到 Azure Spring Apps 并管理部署。 |
Azure SQL 数据库部署 SqlAzureDacpacDeployment@1 |
使用 DACPAC 部署 Azure SQL 数据库,或使用 SQLCMD 运行脚本。 |
Azure VM 规模集部署 AzureVmssDeployment@0 |
部署虚拟机规模集映像。 |
Azure Web 应用 AzureWebApp@1 |
部署适用于 Linux 或 Windows 的 Azure Web 应用。 |
用于容器的 Azure Web 应用 AzureWebAppContainer@1 |
将容器部署到 Azure 应用服务。 |
生成计算机映像 PackerBuild@1 PackerBuild@0 |
使用 Packer 生成计算机映像,该映像可用于 Azure 虚拟机规模集部署。 |
检查 Azure Policy 符合性 AzurePolicyCheckGate@0 |
Azure Policy 的安全与符合性评估。 |
Chef Chef@1 |
通过编辑环境属性部署到 Chef 环境。 |
厨师刀 ChefKnife@1 |
在 Chef 工作站上使用 Knife 命令运行脚本。 |
通过 SSH 复制文件 CopyFilesOverSSH@0 |
通过 SSH 将文件或生成项目复制到远程计算机。 |
部署到 Kubernetes KubernetesManifest@1 KubernetesManifest@0 |
使用 Kubernetes 清单文件部署到群集,甚至制作用于使用 Helm 图表进行部署的清单文件。 |
IIS Web 应用部署 IISWebAppDeploymentOnMachineGroup@0 |
使用 Web 部署部署网站或 Web 应用程序。 |
IIS Web 应用部署(已弃用) IISWebAppDeployment@1 |
使用 MSDeploy 进行部署,然后创建/更新网站和应用池。 |
IIS Web 应用管理 IISWebAppManagementOnMachineGroup@0 |
创建或更新网站、Web 应用、虚拟目录或应用程序池。 |
调用 REST API InvokeRESTAPI@1 InvokeRESTAPI@0 |
将 REST API 作为管道的一部分调用。 |
Kubectl Kubernetes@1 Kubernetes@0 |
通过运行 kubectl 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
手动干预 ManualIntervention@8 |
暂停部署并等待手动干预。 |
手动验证 ManualValidation@1 ManualValidation@0 |
暂停管道运行以等待手动交互。 仅适用于 YAML 管道。 |
MySQL 数据库部署 MysqlDeploymentOnMachineGroup@1 |
运行脚本并更改 MySQL 数据库。 |
打包和部署 Helm 图表 HelmDeploy@1 HelmDeploy@0 |
通过运行 helm 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@3 |
使用 PSSession 和 Invoke-Command 远程处理在远程计算机上执行 PowerShell 脚本。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@2 PowerShellOnTargetMachines@1 |
在远程计算机上执行 PowerShell 脚本。 |
Service Fabric 应用程序部署 ServiceFabricDeploy@1 |
将 Azure Service Fabric 应用程序部署到群集。 |
Service Fabric Compose 部署 ServiceFabricComposeDeploy@0 |
将 Docker Compose 应用程序部署到 Azure Service Fabric 群集。 |
SQL Server 数据库部署 SqlDacpacDeploymentOnMachineGroup@0 |
使用 DACPAC 或 SQL 脚本部署 SQL Server 数据库。 |
SQL Server 数据库部署(已弃用) SqlServerDacpacDeployment@1 |
使用 DACPAC 部署 SQL Server 数据库。 |
SSH SSH@0 |
使用 SSH 在远程计算机上运行 shell 命令或脚本。 |
Windows 计算机文件复制 WindowsMachineFileCopy@2 WindowsMachineFileCopy@1 |
将文件复制到远程 Windows 计算机。 |
包任务
任务 | 描述 |
---|---|
Cargo 身份验证(针对任务运行程序) CargoAuthenticate@0 |
用于安装 Cargo 箱分发的货物客户端的身份验证任务。 |
CocoaPods CocoaPods@0 |
为 Swift 和 Objective-C Cocoa 项目安装 CocoaPods 依赖项。 |
Conda 环境 CondaEnvironment@1 CondaEnvironment@0 |
此任务已弃用。 在脚本中直接使用 conda 来处理 Anaconda 环境。 |
下载 Github Npm 包 DownloadGithubNpmPackage@1 |
从 GitHub 安装 npm 包。 |
Maven 身份验证 MavenAuthenticate@0 |
提供 Azure Artifacts 源和外部 maven 存储库的凭据。 |
npm Npm@1 Npm@0 |
安装并发布 npm 包,或运行 npm 命令。 支持 azure Artifacts 等 npmjs.com 和经过身份验证的注册表。 |
npm 身份验证(针对任务运行程序) npmAuthenticate@0 |
如果还使用 npm 任务,请不要使用此任务。 为生成范围向存储库中的 .npmrc 文件提供 npm 凭据。 这使 npm 任务运行程序(如 gulp 和 Grunt)能够使用专用注册表进行身份验证。 |
NuGet NuGetCommand@2 |
还原、打包或推送 NuGet 包,或运行 NuGet 命令。 支持 azure Artifacts 和 MyGet 等 NuGet.org 和经过身份验证的源。 使用 NuGet.exe 并适用于 .NET Framework 应用。 对于 .NET Core 和 .NET Standard 应用,请使用 .NET Core 任务。 |
NuGet 对 进行身份验证 NuGetAuthenticate@1 NuGetAuthenticate@0 |
配置 NuGet 工具以使用 Azure Artifacts 和其他 NuGet 存储库进行身份验证。 需要 NuGet >= 4.8.5385、dotnet >= 6,或 MSBuild >= 15.8.166.59604。 |
NuGet 命令 NuGet@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 安装程序 NuGetInstaller@0 |
安装或还原缺少 NuGet 包。 使用NuGetAuthenticate@0任务获取最新功能。 |
NuGet 打包程序 NuGetPackager@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 发布者 NuGetPublisher@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 还原 NuGetRestore@1 |
还原 NuGet 包,以准备 Visual Studio 生成步骤。 |
PyPI 发布者 PyPIPublisher@0 |
使用 Twine 创建 sdist 或 wheel 并将其上传到与 PyPI 兼容的索引。 |
Python pip 身份验证 PipAuthenticate@1 PipAuthenticate@0 |
用于安装 Python 分发版的 pip 客户端的身份验证任务。 |
Python 孪生上传身份验证 TwineAuthenticate@1 TwineAuthenticate@0 |
使用孪生对上传 Python 分发版进行身份验证。 将“-r FeedName/EndpointName --config-file $(PYPIRC_PATH)”添加到孪生上传命令。 对于此组织中存在的源,请使用源名称作为存储库(-r)。 否则,请使用服务连接中定义的终结点名称。 |
通用包 UniversalPackages@0 |
下载或发布通用包。 |
Xamarin 组件还原 XamarinComponentRestore@0 |
此任务已弃用。 请改用“NuGet”。 |
测试任务
任务 | 描述 |
---|---|
App Center 测试 AppCenterTest@1 |
使用 Visual Studio App Center 测试应用包。 |
Azure 负载测试 AzureLoadTest@1 |
使用 Azure 负载测试自动执行性能回归测试。 |
容器结构测试 ContainerStructureTest@0 |
使用容器结构测试(https://github.com/GoogleContainerTools/container-structure-test)基于四类测试(命令测试、文件存在测试、文件内容测试和元数据测试)验证映像的结构。 |
Mobile Center 测试 VSMobileCenterTest@0 |
使用 Visual Studio Mobile Center 测试移动应用包。 |
发布代码覆盖率结果 PublishCodeCoverageResults@2 PublishCodeCoverageResults@1 |
从生成发布任何代码覆盖率结果。 |
发布测试结果 PublishTestResults@1 |
将测试结果发布到 Azure Pipelines。 |
发布测试结果 PublishTestResults@2 |
将测试结果发布到 Azure Pipelines。 |
运行功能测试 RunVisualStudioTestsusingTestAgent@1 |
已弃用:此任务及其配套任务(Visual Studio 测试代理部署)已弃用。 请改用“Visual Studio 测试”任务。 VSTest 任务可以运行单元和功能测试。 使用多代理作业设置对一个或多个代理运行测试。 使用“Visual Studio 测试平台”任务运行测试,而无需在代理上使用 Visual Studio。 VSTest 任务还带来了新功能,例如自动重新运行失败的测试。 |
Visual Studio 测试 VSTest@3 VSTest@2 VSTest@1 |
使用 Visual Studio 测试(VsTest)运行单元和功能测试(Selenium、Appium、编码的 UI 测试等)。 可以运行具有 Visual Studio 测试适配器的测试框架,例如 MsTest、xUnit、NUnit、Chutzpah(对于使用 QUnit、Mocha 和 Jasmine 进行 JavaScript 测试)等。 可以使用此任务(版本 2 及更高版本)在多个代理上分发测试。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@2 |
DeployVisualStudioTestAgent@2已弃用。 使用 Visual Studio 测试任务运行单元和功能测试。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@1 |
部署并配置测试代理以在一组计算机上运行测试。 |
Xamarin Test Cloud XamarinTestCloud@1 |
[已弃用]使用 Xamarin.UITest 通过 Xamarin 测试云测试移动应用。 请改用“App Center 测试”任务。 |
工具任务
任务 | 描述 |
---|---|
.NET Core SDK/运行时安装程序 DotNetCoreInstaller@1 DotNetCoreInstaller@0 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 |
Docker CLI 安装程序 DockerInstaller@0 |
在代理计算机上安装 Docker CLI。 |
Duffle 工具安装程序 DuffleInstaller@0 |
安装指定版本的 Duffle 以安装和管理 CNAB 捆绑包。 |
Go 工具安装程序 GoTool@0 |
在缓存中查找或下载特定版本的 Go 并将其添加到 PATH。 |
Helm 工具安装程序 HelmInstaller@1 HelmInstaller@0 |
在代理计算机上安装 Helm。 |
安装 Azure Func Core Tools FuncToolsInstaller@0 |
安装 Azure Func Core Tools。 |
Java 工具安装程序 JavaToolInstaller@0 |
从用户提供的 Azure Blob 或工具缓存中获取特定版本的 Java,并设置JAVA_HOME。 |
Kubectl 工具安装程序 KubectlInstaller@0 |
在代理计算机上安装 Kubectl。 |
Kubelogin 工具安装程序 KubeloginInstaller@0 |
帮助安装 kubelogin。 |
NuGet 工具安装程序 NuGetToolInstaller@1 NuGetToolInstaller@0 |
从 Internet 或工具缓存获取特定版本的 NuGet 并将其添加到 PATH。 使用此任务可更改 NuGet 任务中使用的 NuGet 版本。 |
使用 .NET Core UseDotNet@2 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 使用此任务可更改后续任务中使用的 .NET Core 版本。 此外,还提供代理支持。 |
使用 Node.js 生态系统 UseNode@1 NodeTool@0 |
设置 Node.js 环境并将其添加到 PATH,此外还提供代理支持。 |
使用 Python 版本 UsePythonVersion@0 |
使用工具缓存中的指定版本的 Python,可以选择将其添加到 PATH。 |
使用 Ruby 版本 UseRubyVersion@0 |
使用工具缓存中的指定版本的 Ruby,可以选择将其添加到 PATH。 |
Visual Studio 测试平台安装程序 VisualStudioTestPlatformInstaller@1 |
从 nuget.org 或工具缓存获取测试平台。 满足“vstest”需求,可用于运行测试并使用 Visual Studio 测试任务收集诊断数据。 |
实用工具任务
任务 | 描述 |
---|---|
高级安全依赖项扫描 AdvancedSecurity-Dependency-Scanning@1 |
扫描源代码中的开源依赖项漏洞。 |
存档文件 ArchiveFiles@2 |
将文件压缩为.7z、.tar.gz或 .zip。 |
存档文件 ArchiveFiles@1 |
使用压缩格式(如.7z、.rar、.tar.gz和 .zip)存档文件。 |
Azure 应用配置导入 AzureAppConfigurationImport@10 |
将键值导入 Azure 应用配置实例。 |
Azure 应用配置快照 AzureAppConfigurationSnapshot@1 |
在 Azure 应用配置实例中创建快照。 |
Azure 网络负载均衡器 AzureNLBManagement@1 |
将 Azure 虚拟机的网络接口连接到负载均衡器的后端地址池或断开连接。 |
Bash Bash@3 |
在 macOS、Linux 或 Windows 上运行 Bash 脚本。 |
Batch 脚本 BatchScript@1 |
运行 Windows 命令或批处理脚本,并根据需要允许它更改环境。 |
缓存 Cache@2 |
在运行之间缓存文件。 |
缓存 (Beta) CacheBeta@1 CacheBeta@0 |
在运行之间缓存文件。 |
命令行 CmdLine@2 CmdLine@1 |
在 Linux 和 macOS 上使用 Bash 运行命令行脚本,并在 Windows 上运行 cmd.exe。 |
复制和发布生成项目 CopyPublishBuildArtifacts@1 |
CopyPublishBuildArtifacts@1已弃用。 请改用“复制文件”任务和“发布生成项目”任务。 |
复制文件 CopyFiles@2 |
使用匹配文件路径(而不是文件夹路径)模式将源文件夹中的文件复制到目标文件夹。 |
复制文件 CopyFiles@1 |
使用微型模式将源文件从源文件夹复制到目标文件夹(迷你图模式仅匹配文件路径,而不是文件夹路径)。 |
cURL 上传文件 cURLUploader@2 cURLUploader@1 |
使用 cURL 支持的协议上传文件。 |
解密文件 (OpenSSL) DecryptFile@1 |
使用 OpenSSL 解密文件。 |
延迟 Delay@1 |
将工作流的进一步执行延迟为固定时间。 |
删除文件 DeleteFiles@1 |
删除与模式匹配的文件夹或文件。 |
部署 Azure 静态 Web 应用 AzureStaticWebApp@0 |
生成和部署 Azure 静态 Web 应用。 |
从文件共享下载项目 DownloadFileshareArtifacts@1 |
从文件共享下载项目,例如 \share\drop。 |
下载生成项目 DownloadBuildArtifacts@1 DownloadBuildArtifacts@0 |
下载作为已完成生成的项目保存的文件。 |
下载 GitHub 版本 DownloadGitHubRelease@0 |
从存储库下载 GitHub Release。 |
下载包 DownloadPackage@1 DownloadPackage@0 |
从 Azure Artifacts 中的包管理源下载包。 |
下载管道项目 DownloadPipelineArtifact@2 DownloadPipelineArtifact@1 DownloadPipelineArtifact@0 |
下载生成和管道项目。 |
下载安全文件 DownloadSecureFile@1 |
将安全文件下载到代理计算机。 |
提取文件 ExtractFiles@1 |
提取各种存档和压缩文件,例如.7z、.rar、.tar.gz和 .zip。 |
文件转换 FileTransform@2 FileTransform@1 |
将令牌替换为 XML 或 JSON 配置文件中的变量值。 |
FTP 上传 FtpUpload@2 FtpUpload@1 |
使用 FTP 上传文件。 |
GitHub 注释 GitHubComment@0 |
将注释写入 GitHub 实体,即问题或拉取请求(PR)。 |
GitHub 发布 GitHubRelease@1 GitHubRelease@0 |
创建、编辑或删除 GitHub 版本。 |
安装 Apple 证书 InstallAppleCertificate@2 |
安装在 macOS 代理计算机上生成的 Apple 证书。 |
安装 Apple 证书 InstallAppleCertificate@1 InstallAppleCertificate@0 |
安装在 macOS 代理上生成的 Apple 证书。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@1 |
安装在 macOS 代理计算机上构建所需的 Apple 预配配置文件。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@0 |
安装在 macOS 代理上构建所需的 Apple 预配配置文件。 |
安装 SSH 密钥 InstallSSHKey@0 |
在生成或部署之前安装 SSH 密钥。 |
调用 Azure 函数 AzureFunction@1 AzureFunction@0 |
调用 Azure 函数。 |
Jenkins 下载项目 JenkinsDownloadArtifacts@1 |
下载 Jenkins 作业生成的项目。 |
Node.js 任务运行程序安装程序 NodeTaskRunnerInstaller@0 |
安装特定的 Node.js 版本以运行节点任务。 |
表示法 Notation@0 |
用于设置表示法 CLI 的 Azure Pipepine 任务,使用表示法进行签名和验证。 |
PowerShell PowerShell@2 PowerShell@1 |
在 Linux、macOS 或 Windows 上运行 PowerShell 脚本。 |
发布生成项目 PublishBuildArtifacts@1 |
将生成项目发布到 Azure Pipelines 或 Windows 文件共享。 |
发布管道项目 PublishPipelineArtifact@1 PublishPipelineArtifact@0 |
将文件或目录发布为当前运行的命名项目。 |
发布管道元数据 PublishPipelineMetadata@0 |
将管道元数据发布到证据存储。 |
发布到 Azure 服务总线 PublishToAzureServiceBus@2 PublishToAzureServiceBus@1 PublishToAzureServiceBus@0 |
使用 Azure 资源管理器服务连接(无需代理)将消息发送到 Azure 服务总线。 |
Python 脚本 PythonScript@0 |
运行 Python 文件或内联脚本。 |
查询 Azure Monitor 警报 AzureMonitor@1 |
观察为活动警报配置的 Azure Monitor 规则。 |
查询经典 Azure Monitor 警报 AzureMonitor@0 |
观察为活动警报配置的经典 Azure Monitor 规则。 |
查询工作项 queryWorkItems@0 |
执行工作项查询并检查返回的项数。 |
审阅应用 ReviewApp@0 |
使用此任务在部署阶段提供程序下动态创建资源。 |
Service Fabric PowerShell ServiceFabricPowerShell@1 |
在 Azure Service Fabric 群集连接的上下文中运行 PowerShell 脚本。 |
Shell 脚本 ShellScript@2 |
使用 Bash 运行 shell 脚本。 |
更新 Service Fabric 应用版本 ServiceFabricUpdateAppVersions@1 |
自动更新打包的 Service Fabric 应用程序的版本。 |
更新 Service Fabric 清单 ServiceFabricUpdateManifests@2 |
自动更新打包的 Azure Service Fabric 应用程序中应用程序和服务清单的部分。 |
Xamarin 许可证 XamarinLicense@1 |
[已弃用]升级到 Xamarin 的免费版本:https://store.xamarin.com。 |
生成任务
任务 | 描述 |
---|---|
.NET Core DotNetCoreCLI@2 DotNetCoreCLI@1 DotNetCoreCLI@0 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Android 生成 AndroidBuild@1 |
AndroidBuild@1已弃用。 使用 Gradle。 |
Android 签名 AndroidSigning@3 AndroidSigning@2 AndroidSigning@1 |
对 Android APK 文件进行签名和对齐。 |
蚂蚁 Ant@1 |
使用 Apache Ant 进行生成。 |
Azure IoT Edge AzureIoTEdge@2 |
生成和部署 Azure IoT Edge 映像。 |
CMake CMake@1 |
使用 CMake 跨平台生成系统进行生成。 |
容器生成 ContainerBuild@0 |
容器生成任务。 |
Docker Docker@2 Docker@1 Docker@0 |
生成或推送 Docker 映像、登录或注销、启动或停止容器,或运行 Docker 命令。 |
Docker Compose DockerCompose@0 |
生成、推送或运行多容器 Docker 应用程序。 任务可与 Docker 或 Azure 容器注册表一起使用。 |
下载 GitHub Nuget 包 DownloadGitHubNugetPackage@1 |
使用 dotnet CLI 还原 nuget 包。 |
Go Go@0 |
获取、生成或测试 Go 应用程序,或运行自定义 Go 命令。 |
Gradle Gradle@3 Gradle@2 Gradle@1 |
使用 Gradle 包装器脚本进行生成。 |
格鲁特 Grunt@0 |
运行 Grunt JavaScript 任务运行程序。 |
gulp gulp@1 gulp@0 |
运行 gulp Node.js 基于任务的流式处理生成系统。 |
索引源和发布符号 PublishSymbols@2 PublishSymbols@1 |
为源代码编制索引并将符号发布到文件共享或 Azure Artifacts 符号服务器。 |
Jenkins 队列作业 JenkinsQueueJob@2 |
在 Jenkins 服务器上对作业进行排队。 |
Jenkins 队列作业 JenkinsQueueJob@1 |
在 Jenkins 服务器上对作业进行排队。 |
Maven Maven@4 Maven@3 Maven@2 Maven@1 |
使用 Apache Maven 生成、测试和部署。 |
MSBuild MSBuild@1 |
使用 MSBuild 进行生成。 |
Visual Studio 生成 VSBuild@1 |
使用 MSBuild 生成并设置 Visual Studio 版本属性。 |
Xamarin.Android XamarinAndroid@1 |
使用 Xamarin 生成 Android 应用。 |
Xamarin.iOS XamariniOS@2 XamariniOS@1 |
在 macOS 上使用 Xamarin 生成 iOS 应用。 |
Xcode Xcode@5 Xcode@4 |
在 macOS 上生成、测试或存档 Xcode 工作区。 (可选)打包应用。 |
Xcode 生成 Xcode@3 Xcode@2 |
在 macOS 上生成 Xcode 工作区。 |
Xcode 包 iOS XcodePackageiOS@0 |
使用 xcrun 从 Xcode 生成输出生成 .ipa 文件(Xcode 7 或更低版本)。 |
部署任务
任务 | 描述 |
---|---|
App Center 分发 AppCenterDistribute@3 AppCenterDistribute@2 AppCenterDistribute@1 AppCenterDistribute@0 |
通过 Visual Studio App Center 将应用版本分发给测试人员和用户。 |
ARM 模板部署 AzureResourceManagerTemplateDeployment@3 |
将 Azure 资源管理器 (ARM) 模板部署到所有部署范围。 |
Azure 应用服务经典版(已弃用) AzureWebPowerShellDeployment@1 |
使用 Azure PowerShell 创建或更新 Azure 应用服务。 |
Azure 应用服务部署 AzureRmWebAppDeployment@4 AzureRmWebAppDeployment@3 AzureRmWebAppDeployment@2 |
使用 Docker、Java、.NET、.NET、.NET Core、Node.js、PHP、Python 或 Ruby 部署到 Azure 应用服务。 |
Azure 应用服务管理 AzureAppServiceManage@0 |
启动、停止、重启、槽交换、槽删除、安装站点扩展或为 Azure 应用服务启用持续监视。 |
Azure 应用服务设置 AzureAppServiceSettings@1 |
更新/添加适用于 Linux 或 Windows 的 Azure Web 应用的应用设置。 |
Azure CLI AzureCLI@2 AzureCLI@1 |
在 Linux 代理上运行时,在 PowerShell Core/Shell 脚本中针对 Azure 订阅运行 Azure CLI 命令,或者在 Windows 代理上运行时运行 PowerShell/PowerShell Core/Batch 脚本。 |
Azure CLI 预览版 AzureCLI@0 |
使用 Azure CLI 命令针对 Azure 订阅运行 Shell 或 Batch 脚本。 |
Azure 云服务部署 AzureCloudPowerShellDeployment@2 AzureCloudPowerShellDeployment@1 |
部署 Azure 云服务。 |
Azure 容器应用部署 AzureContainerApps@1 AzureContainerApps@0 |
用于生成和部署 Azure 容器应用的 Azure DevOps 任务。 |
Azure Database for MySQL 部署 AzureMysqlDeployment@1 |
运行脚本并更改 Azure Database for MySQL。 |
Azure 文件复制 AzureFileCopy@5 AzureFileCopy@4 AzureFileCopy@3 AzureFileCopy@2 AzureFileCopy@1 |
将文件复制到 Azure Blob 存储或虚拟机。 |
在 Kubernetes 上 AzureFunctionOnKubernetes@1 AzureFunctionOnKubernetes@0 |
将 Azure 函数部署到 Kubernetes 群集。 |
Azure Functions 部署 AzureFunctionApp@2 AzureFunctionApp@1 |
使用 .NET、Python、JavaScript、PowerShell、基于 Java 的 Web 应用程序更新函数应用。 |
用于容器 的 Azure Functions AzureFunctionAppContainer@1 |
使用 Docker 容器更新函数应用。 |
Azure Key Vault AzureKeyVault@2 AzureKeyVault@1 |
下载 Azure Key Vault 机密。 |
Azure Monitor 警报(已弃用) AzureMonitorAlerts@0 |
针对 Azure 资源的可用指标配置警报(已弃用)。 |
Azure PowerShell AzurePowerShell@5 AzurePowerShell@4 AzurePowerShell@3 AzurePowerShell@2 AzurePowerShell@1 |
在 Azure 环境中运行 PowerShell 脚本。 |
Azure 资源组部署 AzureResourceGroupDeployment@2 |
将 Azure 资源管理器 (ARM) 模板部署到资源组并管理虚拟机。 |
Azure 资源组部署 AzureResourceGroupDeployment@1 |
部署、启动、停止、删除 Azure 资源组。 |
Azure Spring Apps AzureSpringCloud@0 |
将应用程序部署到 Azure Spring Apps 并管理部署。 |
Azure SQL 数据库部署 SqlAzureDacpacDeployment@1 |
使用 DACPAC 部署 Azure SQL 数据库,或使用 SQLCMD 运行脚本。 |
Azure VM 规模集部署 AzureVmssDeployment@0 |
部署虚拟机规模集映像。 |
Azure Web 应用 AzureWebApp@1 |
部署适用于 Linux 或 Windows 的 Azure Web 应用。 |
用于容器的 Azure Web 应用 AzureWebAppContainer@1 |
将容器部署到 Azure 应用服务。 |
生成计算机映像 PackerBuild@1 PackerBuild@0 |
使用 Packer 生成计算机映像,该映像可用于 Azure 虚拟机规模集部署。 |
检查 Azure Policy 符合性 AzurePolicyCheckGate@0 |
Azure Policy 的安全与符合性评估。 |
Chef Chef@1 |
通过编辑环境属性部署到 Chef 环境。 |
厨师刀 ChefKnife@1 |
在 Chef 工作站上使用 Knife 命令运行脚本。 |
通过 SSH 复制文件 CopyFilesOverSSH@0 |
通过 SSH 将文件或生成项目复制到远程计算机。 |
部署到 Kubernetes KubernetesManifest@1 KubernetesManifest@0 |
使用 Kubernetes 清单文件部署到群集,甚至制作用于使用 Helm 图表进行部署的清单文件。 |
IIS Web 应用部署 IISWebAppDeploymentOnMachineGroup@0 |
使用 Web 部署部署网站或 Web 应用程序。 |
IIS Web 应用部署(已弃用) IISWebAppDeployment@1 |
使用 MSDeploy 进行部署,然后创建/更新网站和应用池。 |
IIS Web 应用管理 IISWebAppManagementOnMachineGroup@0 |
创建或更新网站、Web 应用、虚拟目录或应用程序池。 |
调用 REST API InvokeRESTAPI@1 InvokeRESTAPI@0 |
将 REST API 作为管道的一部分调用。 |
Kubectl Kubernetes@1 Kubernetes@0 |
通过运行 kubectl 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
手动干预 ManualIntervention@8 |
暂停部署并等待手动干预。 |
手动验证 ManualValidation@0 |
[预览]暂停管道运行以等待手动交互。 仅适用于 YAML 管道。 |
MySQL 数据库部署 MysqlDeploymentOnMachineGroup@1 |
运行脚本并更改 MySQL 数据库。 |
打包和部署 Helm 图表 HelmDeploy@0 |
通过运行 helm 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@3 |
使用 PSSession 和 Invoke-Command 远程处理在远程计算机上执行 PowerShell 脚本。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@2 PowerShellOnTargetMachines@1 |
在远程计算机上执行 PowerShell 脚本。 |
Service Fabric 应用程序部署 ServiceFabricDeploy@1 |
将 Azure Service Fabric 应用程序部署到群集。 |
Service Fabric Compose 部署 ServiceFabricComposeDeploy@0 |
将 Docker Compose 应用程序部署到 Azure Service Fabric 群集。 |
SQL Server 数据库部署 SqlDacpacDeploymentOnMachineGroup@0 |
使用 DACPAC 或 SQL 脚本部署 SQL Server 数据库。 |
SQL Server 数据库部署(已弃用) SqlServerDacpacDeployment@1 |
使用 DACPAC 部署 SQL Server 数据库。 |
SSH SSH@0 |
使用 SSH 在远程计算机上运行 shell 命令或脚本。 |
Windows 计算机文件复制 WindowsMachineFileCopy@2 WindowsMachineFileCopy@1 |
将文件复制到远程 Windows 计算机。 |
包任务
任务 | 描述 |
---|---|
Cargo 身份验证(针对任务运行程序) CargoAuthenticate@0 |
用于安装 Cargo 箱分发的货物客户端的身份验证任务。 |
CocoaPods CocoaPods@0 |
为 Swift 和 Objective-C Cocoa 项目安装 CocoaPods 依赖项。 |
Conda 环境 CondaEnvironment@1 CondaEnvironment@0 |
此任务已弃用。 在脚本中直接使用 conda 来处理 Anaconda 环境。 |
下载 Github Npm 包 DownloadGithubNpmPackage@1 |
从 GitHub 安装 npm 包。 |
Maven 身份验证 MavenAuthenticate@0 |
提供 Azure Artifacts 源和外部 maven 存储库的凭据。 |
npm Npm@1 Npm@0 |
安装并发布 npm 包,或运行 npm 命令。 支持 azure Artifacts 等 npmjs.com 和经过身份验证的注册表。 |
npm 身份验证(针对任务运行程序) npmAuthenticate@0 |
如果还使用 npm 任务,请不要使用此任务。 为生成范围向存储库中的 .npmrc 文件提供 npm 凭据。 这使 npm 任务运行程序(如 gulp 和 Grunt)能够使用专用注册表进行身份验证。 |
NuGet NuGetCommand@2 |
还原、打包或推送 NuGet 包,或运行 NuGet 命令。 支持 azure Artifacts 和 MyGet 等 NuGet.org 和经过身份验证的源。 使用 NuGet.exe 并适用于 .NET Framework 应用。 对于 .NET Core 和 .NET Standard 应用,请使用 .NET Core 任务。 |
NuGet 对 进行身份验证 NuGetAuthenticate@1 NuGetAuthenticate@0 |
配置 NuGet 工具以使用 Azure Artifacts 和其他 NuGet 存储库进行身份验证。 需要 NuGet >= 4.8.5385、dotnet >= 6,或 MSBuild >= 15.8.166.59604。 |
NuGet 命令 NuGet@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 安装程序 NuGetInstaller@0 |
安装或还原缺少 NuGet 包。 使用NuGetAuthenticate@0任务获取最新功能。 |
NuGet 打包程序 NuGetPackager@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 发布者 NuGetPublisher@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 还原 NuGetRestore@1 |
还原 NuGet 包,以准备 Visual Studio 生成步骤。 |
PyPI 发布者 PyPIPublisher@0 |
使用 Twine 创建 sdist 或 wheel 并将其上传到与 PyPI 兼容的索引。 |
Python pip 身份验证 PipAuthenticate@1 PipAuthenticate@0 |
用于安装 Python 分发版的 pip 客户端的身份验证任务。 |
Python 孪生上传身份验证 TwineAuthenticate@1 TwineAuthenticate@0 |
使用孪生对上传 Python 分发版进行身份验证。 将“-r FeedName/EndpointName --config-file $(PYPIRC_PATH)”添加到孪生上传命令。 对于此组织中存在的源,请使用源名称作为存储库(-r)。 否则,请使用服务连接中定义的终结点名称。 |
通用包 UniversalPackages@0 |
下载或发布通用包。 |
Xamarin 组件还原 XamarinComponentRestore@0 |
此任务已弃用。 请改用“NuGet”。 |
测试任务
任务 | 描述 |
---|---|
App Center 测试 AppCenterTest@1 |
使用 Visual Studio App Center 测试应用包。 |
容器结构测试 ContainerStructureTest@0 |
使用容器结构测试(https://github.com/GoogleContainerTools/container-structure-test)基于四类测试(命令测试、文件存在测试、文件内容测试和元数据测试)验证映像的结构。 |
Mobile Center 测试 VSMobileCenterTest@0 |
使用 Visual Studio Mobile Center 测试移动应用包。 |
发布代码覆盖率结果 PublishCodeCoverageResults@2 PublishCodeCoverageResults@1 |
从生成发布任何代码覆盖率结果。 |
发布测试结果 PublishTestResults@1 |
将测试结果发布到 Azure Pipelines。 |
发布测试结果 PublishTestResults@2 |
将测试结果发布到 Azure Pipelines。 |
运行功能测试 RunVisualStudioTestsusingTestAgent@1 |
已弃用:此任务及其配套任务(Visual Studio 测试代理部署)已弃用。 请改用“Visual Studio 测试”任务。 VSTest 任务可以运行单元和功能测试。 使用多代理作业设置对一个或多个代理运行测试。 使用“Visual Studio 测试平台”任务运行测试,而无需在代理上使用 Visual Studio。 VSTest 任务还带来了新功能,例如自动重新运行失败的测试。 |
Visual Studio 测试 VSTest@2 VSTest@1 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@2 |
DeployVisualStudioTestAgent@2已弃用。 使用 Visual Studio 测试任务运行单元和功能测试。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@1 |
部署并配置测试代理以在一组计算机上运行测试。 |
Xamarin Test Cloud XamarinTestCloud@1 |
[已弃用]使用 Xamarin.UITest 通过 Xamarin 测试云测试移动应用。 请改用“App Center 测试”任务。 |
工具任务
任务 | 描述 |
---|---|
.NET Core SDK/运行时安装程序 DotNetCoreInstaller@1 DotNetCoreInstaller@0 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 |
Docker CLI 安装程序 DockerInstaller@0 |
在代理计算机上安装 Docker CLI。 |
Duffle 工具安装程序 DuffleInstaller@0 |
安装指定版本的 Duffle 以安装和管理 CNAB 捆绑包。 |
Go 工具安装程序 GoTool@0 |
在缓存中查找或下载特定版本的 Go 并将其添加到 PATH。 |
Helm 工具安装程序 HelmInstaller@1 HelmInstaller@0 |
在代理计算机上安装 Helm。 |
安装 Azure Func Core Tools FuncToolsInstaller@0 |
安装 Azure Func Core Tools。 |
Java 工具安装程序 JavaToolInstaller@0 |
从用户提供的 Azure Blob 或工具缓存中获取特定版本的 Java,并设置JAVA_HOME。 |
Kubectl 工具安装程序 KubectlInstaller@0 |
在代理计算机上安装 Kubectl。 |
NuGet 工具安装程序 NuGetToolInstaller@1 NuGetToolInstaller@0 |
从 Internet 或工具缓存获取特定版本的 NuGet 并将其添加到 PATH。 使用此任务可更改 NuGet 任务中使用的 NuGet 版本。 |
使用 .NET Core UseDotNet@2 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 使用此任务可更改后续任务中使用的 .NET Core 版本。 此外,还提供代理支持。 |
使用 Node.js 生态系统 UseNode@1 NodeTool@0 |
设置 Node.js 环境并将其添加到 PATH,此外还提供代理支持。 |
使用 Python 版本 UsePythonVersion@0 |
使用工具缓存中的指定版本的 Python,可以选择将其添加到 PATH。 |
使用 Ruby 版本 UseRubyVersion@0 |
使用工具缓存中的指定版本的 Ruby,可以选择将其添加到 PATH。 |
Visual Studio 测试平台安装程序 VisualStudioTestPlatformInstaller@1 |
从 nuget.org 或工具缓存获取测试平台。 满足“vstest”需求,可用于运行测试并使用 Visual Studio 测试任务收集诊断数据。 |
实用工具任务
任务 | 描述 |
---|---|
存档文件 ArchiveFiles@2 |
将文件压缩为.7z、.tar.gz或 .zip。 |
存档文件 ArchiveFiles@1 |
使用压缩格式(如.7z、.rar、.tar.gz和 .zip)存档文件。 |
Azure 网络负载均衡器 AzureNLBManagement@1 |
将 Azure 虚拟机的网络接口连接到负载均衡器的后端地址池或断开连接。 |
Bash Bash@3 |
在 macOS、Linux 或 Windows 上运行 Bash 脚本。 |
Batch 脚本 BatchScript@1 |
运行 Windows 命令或批处理脚本,并根据需要允许它更改环境。 |
缓存 Cache@2 |
在运行之间缓存文件。 |
缓存 (Beta) CacheBeta@1 CacheBeta@0 |
在运行之间缓存文件。 |
命令行 CmdLine@2 CmdLine@1 |
在 Linux 和 macOS 上使用 Bash 运行命令行脚本,并在 Windows 上运行 cmd.exe。 |
复制和发布生成项目 CopyPublishBuildArtifacts@1 |
CopyPublishBuildArtifacts@1已弃用。 请改用“复制文件”任务和“发布生成项目”任务。 |
复制文件 CopyFiles@2 |
使用匹配文件路径(而不是文件夹路径)模式将源文件夹中的文件复制到目标文件夹。 |
复制文件 CopyFiles@1 |
使用微型模式将源文件从源文件夹复制到目标文件夹(迷你图模式仅匹配文件路径,而不是文件夹路径)。 |
cURL 上传文件 cURLUploader@2 cURLUploader@1 |
使用 cURL 支持的协议上传文件。 |
解密文件 (OpenSSL) DecryptFile@1 |
使用 OpenSSL 解密文件。 |
延迟 Delay@1 |
将工作流的进一步执行延迟为固定时间。 |
删除文件 DeleteFiles@1 |
删除与模式匹配的文件夹或文件。 |
部署 Azure 静态 Web 应用 AzureStaticWebApp@0 |
生成和部署 Azure 静态 Web 应用。 |
从文件共享下载项目 DownloadFileshareArtifacts@1 |
从文件共享下载项目,例如 \share\drop。 |
下载生成项目 DownloadBuildArtifacts@1 DownloadBuildArtifacts@0 |
下载作为已完成生成的项目保存的文件。 |
下载 GitHub 版本 DownloadGitHubRelease@0 |
从存储库下载 GitHub Release。 |
下载包 DownloadPackage@1 DownloadPackage@0 |
从 Azure Artifacts 中的包管理源下载包。 |
下载管道项目 DownloadPipelineArtifact@2 DownloadPipelineArtifact@1 DownloadPipelineArtifact@0 |
下载生成和管道项目。 |
下载安全文件 DownloadSecureFile@1 |
将安全文件下载到代理计算机。 |
提取文件 ExtractFiles@1 |
提取各种存档和压缩文件,例如.7z、.rar、.tar.gz和 .zip。 |
文件转换 FileTransform@2 FileTransform@1 |
将令牌替换为 XML 或 JSON 配置文件中的变量值。 |
FTP 上传 FtpUpload@2 FtpUpload@1 |
使用 FTP 上传文件。 |
GitHub 注释 GitHubComment@0 |
将注释写入 GitHub 实体,即问题或拉取请求(PR)。 |
GitHub 发布 GitHubRelease@1 GitHubRelease@0 |
创建、编辑或删除 GitHub 版本。 |
安装 Apple 证书 InstallAppleCertificate@2 |
安装在 macOS 代理计算机上生成的 Apple 证书。 |
安装 Apple 证书 InstallAppleCertificate@1 InstallAppleCertificate@0 |
安装在 macOS 代理上生成的 Apple 证书。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@1 |
安装在 macOS 代理计算机上构建所需的 Apple 预配配置文件。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@0 |
安装在 macOS 代理上构建所需的 Apple 预配配置文件。 |
安装 SSH 密钥 InstallSSHKey@0 |
在生成或部署之前安装 SSH 密钥。 |
调用 Azure 函数 AzureFunction@1 AzureFunction@0 |
调用 Azure 函数。 |
Jenkins 下载项目 JenkinsDownloadArtifacts@1 |
下载 Jenkins 作业生成的项目。 |
Node.js 任务运行程序安装程序 NodeTaskRunnerInstaller@0 |
安装特定的 Node.js 版本以运行节点任务。 |
PowerShell PowerShell@2 PowerShell@1 |
在 Linux、macOS 或 Windows 上运行 PowerShell 脚本。 |
发布生成项目 PublishBuildArtifacts@1 |
将生成项目发布到 Azure Pipelines 或 Windows 文件共享。 |
发布管道项目 PublishPipelineArtifact@1 PublishPipelineArtifact@0 |
将文件或目录发布为当前运行的命名项目。 |
发布管道元数据 PublishPipelineMetadata@0 |
将管道元数据发布到证据存储。 |
发布到 Azure 服务总线 PublishToAzureServiceBus@1 PublishToAzureServiceBus@0 |
使用服务连接(无需代理)将消息发送到 Azure 服务总线。 |
Python 脚本 PythonScript@0 |
运行 Python 文件或内联脚本。 |
查询 Azure Monitor 警报 AzureMonitor@1 |
观察为活动警报配置的 Azure Monitor 规则。 |
查询经典 Azure Monitor 警报 AzureMonitor@0 |
观察为活动警报配置的经典 Azure Monitor 规则。 |
查询工作项 queryWorkItems@0 |
执行工作项查询并检查返回的项数。 |
审阅应用 ReviewApp@0 |
使用此任务在部署阶段提供程序下动态创建资源。 |
Service Fabric PowerShell ServiceFabricPowerShell@1 |
在 Azure Service Fabric 群集连接的上下文中运行 PowerShell 脚本。 |
Shell 脚本 ShellScript@2 |
使用 Bash 运行 shell 脚本。 |
更新 Service Fabric 应用版本 ServiceFabricUpdateAppVersions@1 |
自动更新打包的 Service Fabric 应用程序的版本。 |
更新 Service Fabric 清单 ServiceFabricUpdateManifests@2 |
自动更新打包的 Azure Service Fabric 应用程序中应用程序和服务清单的部分。 |
Xamarin 许可证 XamarinLicense@1 |
[已弃用]升级到 Xamarin 的免费版本:https://store.xamarin.com。 |
生成任务
任务 | 描述 |
---|---|
.NET Core DotNetCoreCLI@2 DotNetCoreCLI@1 DotNetCoreCLI@0 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Android 生成 AndroidBuild@1 |
AndroidBuild@1已弃用。 使用 Gradle。 |
Android 签名 AndroidSigning@3 AndroidSigning@2 AndroidSigning@1 |
对 Android APK 文件进行签名和对齐。 |
蚂蚁 Ant@1 |
使用 Apache Ant 进行生成。 |
Azure IoT Edge AzureIoTEdge@2 |
生成和部署 Azure IoT Edge 映像。 |
CMake CMake@1 |
使用 CMake 跨平台生成系统进行生成。 |
容器生成 ContainerBuild@0 |
容器生成任务。 |
Docker Docker@2 Docker@1 Docker@0 |
生成或推送 Docker 映像、登录或注销、启动或停止容器,或运行 Docker 命令。 |
Docker Compose DockerCompose@0 |
生成、推送或运行多容器 Docker 应用程序。 任务可与 Docker 或 Azure 容器注册表一起使用。 |
下载 GitHub Nuget 包 DownloadGitHubNugetPackage@1 |
使用 dotnet CLI 还原 nuget 包。 |
Go Go@0 |
获取、生成或测试 Go 应用程序,或运行自定义 Go 命令。 |
Gradle Gradle@3 Gradle@2 Gradle@1 |
使用 Gradle 包装器脚本进行生成。 |
格鲁特 Grunt@0 |
运行 Grunt JavaScript 任务运行程序。 |
gulp gulp@1 gulp@0 |
运行 gulp Node.js 基于任务的流式处理生成系统。 |
索引源和发布符号 PublishSymbols@2 PublishSymbols@1 |
为源代码编制索引并将符号发布到文件共享或 Azure Artifacts 符号服务器。 |
Jenkins 队列作业 JenkinsQueueJob@2 |
在 Jenkins 服务器上对作业进行排队。 |
Jenkins 队列作业 JenkinsQueueJob@1 |
在 Jenkins 服务器上对作业进行排队。 |
Maven Maven@3 Maven@2 Maven@1 |
使用 Apache Maven 生成、测试和部署。 |
MSBuild MSBuild@1 |
使用 MSBuild 进行生成。 |
Visual Studio 生成 VSBuild@1 |
使用 MSBuild 生成并设置 Visual Studio 版本属性。 |
Xamarin.Android XamarinAndroid@1 |
使用 Xamarin 生成 Android 应用。 |
Xamarin.iOS XamariniOS@2 XamariniOS@1 |
在 macOS 上使用 Xamarin 生成 iOS 应用。 |
Xcode Xcode@5 Xcode@4 |
在 macOS 上生成、测试或存档 Xcode 工作区。 (可选)打包应用。 |
Xcode 生成 Xcode@3 Xcode@2 |
在 macOS 上生成 Xcode 工作区。 |
Xcode 包 iOS XcodePackageiOS@0 |
使用 xcrun 从 Xcode 生成输出生成 .ipa 文件(Xcode 7 或更低版本)。 |
部署任务
任务 | 描述 |
---|---|
App Center 分发 AppCenterDistribute@3 AppCenterDistribute@2 AppCenterDistribute@1 AppCenterDistribute@0 |
通过 Visual Studio App Center 将应用版本分发给测试人员和用户。 |
ARM 模板部署 AzureResourceManagerTemplateDeployment@3 |
将 Azure 资源管理器 (ARM) 模板部署到所有部署范围。 |
Azure 应用服务经典版(已弃用) AzureWebPowerShellDeployment@1 |
使用 Azure PowerShell 创建或更新 Azure 应用服务。 |
Azure 应用服务部署 AzureRmWebAppDeployment@4 AzureRmWebAppDeployment@3 AzureRmWebAppDeployment@2 |
使用 Docker、Java、.NET、.NET、.NET Core、Node.js、PHP、Python 或 Ruby 部署到 Azure 应用服务。 |
Azure 应用服务管理 AzureAppServiceManage@0 |
启动、停止、重启、槽交换、槽删除、安装站点扩展或为 Azure 应用服务启用持续监视。 |
Azure 应用服务设置 AzureAppServiceSettings@1 |
更新/添加适用于 Linux 或 Windows 的 Azure Web 应用的应用设置。 |
Azure CLI AzureCLI@2 AzureCLI@1 |
在 Linux 代理上运行时,在 PowerShell Core/Shell 脚本中针对 Azure 订阅运行 Azure CLI 命令,或者在 Windows 代理上运行时运行 PowerShell/PowerShell Core/Batch 脚本。 |
Azure CLI 预览版 AzureCLI@0 |
使用 Azure CLI 命令针对 Azure 订阅运行 Shell 或 Batch 脚本。 |
Azure 云服务部署 AzureCloudPowerShellDeployment@1 |
部署 Azure 云服务。 |
Azure Database for MySQL 部署 AzureMysqlDeployment@1 |
运行脚本并更改 Azure Database for MySQL。 |
Azure 文件复制 AzureFileCopy@4 AzureFileCopy@3 AzureFileCopy@2 AzureFileCopy@1 |
将文件复制到 Azure Blob 存储或虚拟机。 |
在 Kubernetes 上 AzureFunctionOnKubernetes@0 |
将 Azure 函数部署到 Kubernetes 群集。 |
Azure Functions 部署 AzureFunctionApp@1 |
使用 .NET、Python、JavaScript、PowerShell、基于 Java 的 Web 应用程序更新函数应用。 |
用于容器 的 Azure Functions AzureFunctionAppContainer@1 |
使用 Docker 容器更新函数应用。 |
Azure Key Vault AzureKeyVault@2 AzureKeyVault@1 |
下载 Azure Key Vault 机密。 |
Azure Monitor 警报(已弃用) AzureMonitorAlerts@0 |
针对 Azure 资源的可用指标配置警报(已弃用)。 |
Azure PowerShell AzurePowerShell@5 AzurePowerShell@4 AzurePowerShell@3 AzurePowerShell@2 AzurePowerShell@1 |
在 Azure 环境中运行 PowerShell 脚本。 |
Azure 资源组部署 AzureResourceGroupDeployment@2 |
将 Azure 资源管理器 (ARM) 模板部署到资源组并管理虚拟机。 |
Azure 资源组部署 AzureResourceGroupDeployment@1 |
部署、启动、停止、删除 Azure 资源组。 |
Azure Spring Apps AzureSpringCloud@0 |
将应用程序部署到 Azure Spring Apps 并管理部署。 |
Azure SQL 数据库部署 SqlAzureDacpacDeployment@1 |
使用 DACPAC 部署 Azure SQL 数据库,或使用 SQLCMD 运行脚本。 |
Azure VM 规模集部署 AzureVmssDeployment@0 |
部署虚拟机规模集映像。 |
Azure Web 应用 AzureWebApp@1 |
部署适用于 Linux 或 Windows 的 Azure Web 应用。 |
用于容器的 Azure Web 应用 AzureWebAppContainer@1 |
将容器部署到 Azure 应用服务。 |
生成计算机映像 PackerBuild@1 PackerBuild@0 |
使用 Packer 生成计算机映像,该映像可用于 Azure 虚拟机规模集部署。 |
检查 Azure Policy 符合性 AzurePolicyCheckGate@0 |
Azure Policy 的安全与符合性评估。 |
Chef Chef@1 |
通过编辑环境属性部署到 Chef 环境。 |
厨师刀 ChefKnife@1 |
在 Chef 工作站上使用 Knife 命令运行脚本。 |
通过 SSH 复制文件 CopyFilesOverSSH@0 |
通过 SSH 将文件或生成项目复制到远程计算机。 |
部署到 Kubernetes KubernetesManifest@0 |
使用 Kubernetes 清单文件部署到群集,甚至制作用于使用 Helm 图表进行部署的清单文件。 |
IIS Web 应用部署 IISWebAppDeploymentOnMachineGroup@0 |
使用 Web 部署部署网站或 Web 应用程序。 |
IIS Web 应用部署(已弃用) IISWebAppDeployment@1 |
使用 MSDeploy 进行部署,然后创建/更新网站和应用池。 |
IIS Web 应用管理 IISWebAppManagementOnMachineGroup@0 |
创建或更新网站、Web 应用、虚拟目录或应用程序池。 |
调用 REST API InvokeRESTAPI@1 InvokeRESTAPI@0 |
将 REST API 作为管道的一部分调用。 |
Kubectl Kubernetes@1 Kubernetes@0 |
通过运行 kubectl 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
手动干预 ManualIntervention@8 |
暂停部署并等待手动干预。 |
手动验证 ManualValidation@0 |
[预览]暂停管道运行以等待手动交互。 仅适用于 YAML 管道。 |
MySQL 数据库部署 MysqlDeploymentOnMachineGroup@1 |
运行脚本并更改 MySQL 数据库。 |
打包和部署 Helm 图表 HelmDeploy@0 |
通过运行 helm 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@3 |
使用 PSSession 和 Invoke-Command 远程处理在远程计算机上执行 PowerShell 脚本。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@2 PowerShellOnTargetMachines@1 |
在远程计算机上执行 PowerShell 脚本。 |
Service Fabric 应用程序部署 ServiceFabricDeploy@1 |
将 Azure Service Fabric 应用程序部署到群集。 |
Service Fabric Compose 部署 ServiceFabricComposeDeploy@0 |
将 Docker Compose 应用程序部署到 Azure Service Fabric 群集。 |
SQL Server 数据库部署 SqlDacpacDeploymentOnMachineGroup@0 |
使用 DACPAC 或 SQL 脚本部署 SQL Server 数据库。 |
SQL Server 数据库部署(已弃用) SqlServerDacpacDeployment@1 |
使用 DACPAC 部署 SQL Server 数据库。 |
SSH SSH@0 |
使用 SSH 在远程计算机上运行 shell 命令或脚本。 |
Windows 计算机文件复制 WindowsMachineFileCopy@2 WindowsMachineFileCopy@1 |
将文件复制到远程 Windows 计算机。 |
包任务
任务 | 描述 |
---|---|
CocoaPods CocoaPods@0 |
为 Swift 和 Objective-C Cocoa 项目安装 CocoaPods 依赖项。 |
Conda 环境 CondaEnvironment@1 CondaEnvironment@0 |
此任务已弃用。 在脚本中直接使用 conda 来处理 Anaconda 环境。 |
下载 Github Npm 包 DownloadGithubNpmPackage@1 |
从 GitHub 安装 npm 包。 |
Maven 身份验证 MavenAuthenticate@0 |
提供 Azure Artifacts 源和外部 maven 存储库的凭据。 |
npm Npm@1 Npm@0 |
安装并发布 npm 包,或运行 npm 命令。 支持 azure Artifacts 等 npmjs.com 和经过身份验证的注册表。 |
npm 身份验证(针对任务运行程序) npmAuthenticate@0 |
如果还使用 npm 任务,请不要使用此任务。 为生成范围向存储库中的 .npmrc 文件提供 npm 凭据。 这使 npm 任务运行程序(如 gulp 和 Grunt)能够使用专用注册表进行身份验证。 |
NuGet NuGetCommand@2 |
还原、打包或推送 NuGet 包,或运行 NuGet 命令。 支持 azure Artifacts 和 MyGet 等 NuGet.org 和经过身份验证的源。 使用 NuGet.exe 并适用于 .NET Framework 应用。 对于 .NET Core 和 .NET Standard 应用,请使用 .NET Core 任务。 |
NuGet 对 进行身份验证 NuGetAuthenticate@1 NuGetAuthenticate@0 |
配置 NuGet 工具以使用 Azure Artifacts 和其他 NuGet 存储库进行身份验证。 需要 NuGet >= 4.8.5385、dotnet >= 6,或 MSBuild >= 15.8.166.59604。 |
NuGet 命令 NuGet@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 安装程序 NuGetInstaller@0 |
安装或还原缺少 NuGet 包。 使用NuGetAuthenticate@0任务获取最新功能。 |
NuGet 打包程序 NuGetPackager@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 发布者 NuGetPublisher@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 还原 NuGetRestore@1 |
还原 NuGet 包,以准备 Visual Studio 生成步骤。 |
PyPI 发布者 PyPIPublisher@0 |
使用 Twine 创建 sdist 或 wheel 并将其上传到与 PyPI 兼容的索引。 |
Python pip 身份验证 PipAuthenticate@1 PipAuthenticate@0 |
用于安装 Python 分发版的 pip 客户端的身份验证任务。 |
Python 孪生上传身份验证 TwineAuthenticate@1 TwineAuthenticate@0 |
使用孪生对上传 Python 分发版进行身份验证。 将“-r FeedName/EndpointName --config-file $(PYPIRC_PATH)”添加到孪生上传命令。 对于此组织中存在的源,请使用源名称作为存储库(-r)。 否则,请使用服务连接中定义的终结点名称。 |
通用包 UniversalPackages@0 |
下载或发布通用包。 |
Xamarin 组件还原 XamarinComponentRestore@0 |
此任务已弃用。 请改用“NuGet”。 |
测试任务
任务 | 描述 |
---|---|
App Center 测试 AppCenterTest@1 |
使用 Visual Studio App Center 测试应用包。 |
容器结构测试 ContainerStructureTest@0 |
使用容器结构测试(https://github.com/GoogleContainerTools/container-structure-test)基于四类测试(命令测试、文件存在测试、文件内容测试和元数据测试)验证映像的结构。 |
Mobile Center 测试 VSMobileCenterTest@0 |
使用 Visual Studio Mobile Center 测试移动应用包。 |
发布代码覆盖率结果 PublishCodeCoverageResults@1 |
发布生成中的 Cobertura 或 JaCoCo 代码覆盖率结果。 |
发布测试结果 PublishTestResults@1 |
将测试结果发布到 Azure Pipelines。 |
发布测试结果 PublishTestResults@2 |
将测试结果发布到 Azure Pipelines。 |
运行功能测试 RunVisualStudioTestsusingTestAgent@1 |
已弃用:此任务及其配套任务(Visual Studio 测试代理部署)已弃用。 请改用“Visual Studio 测试”任务。 VSTest 任务可以运行单元和功能测试。 使用多代理作业设置对一个或多个代理运行测试。 使用“Visual Studio 测试平台”任务运行测试,而无需在代理上使用 Visual Studio。 VSTest 任务还带来了新功能,例如自动重新运行失败的测试。 |
Visual Studio 测试 VSTest@2 VSTest@1 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@2 |
DeployVisualStudioTestAgent@2已弃用。 使用 Visual Studio 测试任务运行单元和功能测试。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@1 |
部署并配置测试代理以在一组计算机上运行测试。 |
Xamarin Test Cloud XamarinTestCloud@1 |
[已弃用]使用 Xamarin.UITest 通过 Xamarin 测试云测试移动应用。 请改用“App Center 测试”任务。 |
工具任务
任务 | 描述 |
---|---|
.NET Core SDK/运行时安装程序 DotNetCoreInstaller@1 DotNetCoreInstaller@0 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 |
Docker CLI 安装程序 DockerInstaller@0 |
在代理计算机上安装 Docker CLI。 |
Duffle 工具安装程序 DuffleInstaller@0 |
安装指定版本的 Duffle 以安装和管理 CNAB 捆绑包。 |
Go 工具安装程序 GoTool@0 |
在缓存中查找或下载特定版本的 Go 并将其添加到 PATH。 |
Helm 工具安装程序 HelmInstaller@1 HelmInstaller@0 |
在代理计算机上安装 Helm。 |
安装 Azure Func Core Tools FuncToolsInstaller@0 |
安装 Azure Func Core Tools。 |
Java 工具安装程序 JavaToolInstaller@0 |
从用户提供的 Azure Blob 或工具缓存中获取特定版本的 Java,并设置JAVA_HOME。 |
Kubectl 工具安装程序 KubectlInstaller@0 |
在代理计算机上安装 Kubectl。 |
NuGet 工具安装程序 NuGetToolInstaller@1 NuGetToolInstaller@0 |
从 Internet 或工具缓存获取特定版本的 NuGet 并将其添加到 PATH。 使用此任务可更改 NuGet 任务中使用的 NuGet 版本。 |
使用 .NET Core UseDotNet@2 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 使用此任务可更改后续任务中使用的 .NET Core 版本。 此外,还提供代理支持。 |
使用 Node.js 生态系统 UseNode@1 NodeTool@0 |
设置 Node.js 环境并将其添加到 PATH,此外还提供代理支持。 |
使用 Python 版本 UsePythonVersion@0 |
使用工具缓存中的指定版本的 Python,可以选择将其添加到 PATH。 |
使用 Ruby 版本 UseRubyVersion@0 |
使用工具缓存中的指定版本的 Ruby,可以选择将其添加到 PATH。 |
Visual Studio 测试平台安装程序 VisualStudioTestPlatformInstaller@1 |
从 nuget.org 或工具缓存获取测试平台。 满足“vstest”需求,可用于运行测试并使用 Visual Studio 测试任务收集诊断数据。 |
实用工具任务
任务 | 描述 |
---|---|
存档文件 ArchiveFiles@2 |
将文件压缩为.7z、.tar.gz或 .zip。 |
存档文件 ArchiveFiles@1 |
使用压缩格式(如.7z、.rar、.tar.gz和 .zip)存档文件。 |
Azure 网络负载均衡器 AzureNLBManagement@1 |
将 Azure 虚拟机的网络接口连接到负载均衡器的后端地址池或断开连接。 |
Bash Bash@3 |
在 macOS、Linux 或 Windows 上运行 Bash 脚本。 |
Batch 脚本 BatchScript@1 |
运行 Windows 命令或批处理脚本,并根据需要允许它更改环境。 |
缓存 Cache@2 |
在运行之间缓存文件。 |
缓存 (Beta) CacheBeta@1 CacheBeta@0 |
在运行之间缓存文件。 |
命令行 CmdLine@2 CmdLine@1 |
在 Linux 和 macOS 上使用 Bash 运行命令行脚本,并在 Windows 上运行 cmd.exe。 |
复制和发布生成项目 CopyPublishBuildArtifacts@1 |
CopyPublishBuildArtifacts@1已弃用。 请改用“复制文件”任务和“发布生成项目”任务。 |
复制文件 CopyFiles@2 |
使用匹配文件路径(而不是文件夹路径)模式将源文件夹中的文件复制到目标文件夹。 |
复制文件 CopyFiles@1 |
使用微型模式将源文件从源文件夹复制到目标文件夹(迷你图模式仅匹配文件路径,而不是文件夹路径)。 |
cURL 上传文件 cURLUploader@2 cURLUploader@1 |
使用 cURL 支持的协议上传文件。 |
解密文件 (OpenSSL) DecryptFile@1 |
使用 OpenSSL 解密文件。 |
延迟 Delay@1 |
将工作流的进一步执行延迟为固定时间。 |
删除文件 DeleteFiles@1 |
删除与模式匹配的文件夹或文件。 |
部署 Azure 静态 Web 应用 AzureStaticWebApp@0 |
生成和部署 Azure 静态 Web 应用。 |
从文件共享下载项目 DownloadFileshareArtifacts@1 |
从文件共享下载项目,例如 \share\drop。 |
下载生成项目 DownloadBuildArtifacts@0 |
下载作为已完成生成的项目保存的文件。 |
下载 GitHub 版本 DownloadGitHubRelease@0 |
从存储库下载 GitHub Release。 |
下载包 DownloadPackage@1 DownloadPackage@0 |
从 Azure Artifacts 中的包管理源下载包。 |
下载管道项目 DownloadPipelineArtifact@2 DownloadPipelineArtifact@1 DownloadPipelineArtifact@0 |
下载生成和管道项目。 |
下载安全文件 DownloadSecureFile@1 |
将安全文件下载到代理计算机。 |
提取文件 ExtractFiles@1 |
提取各种存档和压缩文件,例如.7z、.rar、.tar.gz和 .zip。 |
文件转换 FileTransform@2 FileTransform@1 |
将令牌替换为 XML 或 JSON 配置文件中的变量值。 |
FTP 上传 FtpUpload@2 FtpUpload@1 |
使用 FTP 上传文件。 |
GitHub 注释 GitHubComment@0 |
将注释写入 GitHub 实体,即问题或拉取请求(PR)。 |
GitHub 发布 GitHubRelease@1 GitHubRelease@0 |
创建、编辑或删除 GitHub 版本。 |
安装 Apple 证书 InstallAppleCertificate@2 |
安装在 macOS 代理计算机上生成的 Apple 证书。 |
安装 Apple 证书 InstallAppleCertificate@1 InstallAppleCertificate@0 |
安装在 macOS 代理上生成的 Apple 证书。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@1 |
安装在 macOS 代理计算机上构建所需的 Apple 预配配置文件。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@0 |
安装在 macOS 代理上构建所需的 Apple 预配配置文件。 |
安装 SSH 密钥 InstallSSHKey@0 |
在生成或部署之前安装 SSH 密钥。 |
调用 Azure 函数 AzureFunction@1 AzureFunction@0 |
调用 Azure 函数。 |
Jenkins 下载项目 JenkinsDownloadArtifacts@1 |
下载 Jenkins 作业生成的项目。 |
PowerShell PowerShell@2 PowerShell@1 |
在 Linux、macOS 或 Windows 上运行 PowerShell 脚本。 |
发布生成项目 PublishBuildArtifacts@1 |
将生成项目发布到 Azure Pipelines 或 Windows 文件共享。 |
发布管道项目 PublishPipelineArtifact@1 PublishPipelineArtifact@0 |
将文件或目录发布为当前运行的命名项目。 |
发布管道元数据 PublishPipelineMetadata@0 |
将管道元数据发布到证据存储。 |
发布到 Azure 服务总线 PublishToAzureServiceBus@1 PublishToAzureServiceBus@0 |
使用服务连接(无需代理)将消息发送到 Azure 服务总线。 |
Python 脚本 PythonScript@0 |
运行 Python 文件或内联脚本。 |
查询 Azure Monitor 警报 AzureMonitor@1 |
观察为活动警报配置的 Azure Monitor 规则。 |
查询经典 Azure Monitor 警报 AzureMonitor@0 |
观察为活动警报配置的经典 Azure Monitor 规则。 |
查询工作项 queryWorkItems@0 |
执行工作项查询并检查返回的项数。 |
审阅应用 ReviewApp@0 |
使用此任务在部署阶段提供程序下动态创建资源。 |
Service Fabric PowerShell ServiceFabricPowerShell@1 |
在 Azure Service Fabric 群集连接的上下文中运行 PowerShell 脚本。 |
Shell 脚本 ShellScript@2 |
使用 Bash 运行 shell 脚本。 |
更新 Service Fabric 应用版本 ServiceFabricUpdateAppVersions@1 |
自动更新打包的 Service Fabric 应用程序的版本。 |
更新 Service Fabric 清单 ServiceFabricUpdateManifests@2 |
自动更新打包的 Azure Service Fabric 应用程序中应用程序和服务清单的部分。 |
Xamarin 许可证 XamarinLicense@1 |
[已弃用]升级到 Xamarin 的免费版本:https://store.xamarin.com。 |
生成任务
任务 | 描述 |
---|---|
.NET Core DotNetCoreCLI@2 DotNetCoreCLI@1 DotNetCoreCLI@0 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Android 生成 AndroidBuild@1 |
AndroidBuild@1已弃用。 使用 Gradle。 |
Android 签名 AndroidSigning@3 AndroidSigning@2 AndroidSigning@1 |
对 Android APK 文件进行签名和对齐。 |
蚂蚁 Ant@1 |
使用 Apache Ant 进行生成。 |
Azure IoT Edge AzureIoTEdge@2 |
生成和部署 Azure IoT Edge 映像。 |
CMake CMake@1 |
使用 CMake 跨平台生成系统进行生成。 |
容器生成 ContainerBuild@0 |
容器生成任务。 |
Docker Docker@2 Docker@1 Docker@0 |
生成或推送 Docker 映像、登录或注销、启动或停止容器,或运行 Docker 命令。 |
Docker Compose DockerCompose@0 |
生成、推送或运行多容器 Docker 应用程序。 任务可与 Docker 或 Azure 容器注册表一起使用。 |
下载 GitHub Nuget 包 DownloadGitHubNugetPackage@1 |
使用 dotnet CLI 还原 nuget 包。 |
Go Go@0 |
获取、生成或测试 Go 应用程序,或运行自定义 Go 命令。 |
Gradle Gradle@2 Gradle@1 |
使用 Gradle 包装器脚本进行生成。 |
格鲁特 Grunt@0 |
运行 Grunt JavaScript 任务运行程序。 |
gulp gulp@1 gulp@0 |
运行 gulp Node.js 基于任务的流式处理生成系统。 |
索引源和发布符号 PublishSymbols@2 PublishSymbols@1 |
为源代码编制索引并将符号发布到文件共享或 Azure Artifacts 符号服务器。 |
Jenkins 队列作业 JenkinsQueueJob@2 |
在 Jenkins 服务器上对作业进行排队。 |
Jenkins 队列作业 JenkinsQueueJob@1 |
在 Jenkins 服务器上对作业进行排队。 |
Maven Maven@3 Maven@2 Maven@1 |
使用 Apache Maven 生成、测试和部署。 |
MSBuild MSBuild@1 |
使用 MSBuild 进行生成。 |
Visual Studio 生成 VSBuild@1 |
使用 MSBuild 生成并设置 Visual Studio 版本属性。 |
Xamarin.Android XamarinAndroid@1 |
使用 Xamarin 生成 Android 应用。 |
Xamarin.iOS XamariniOS@2 XamariniOS@1 |
在 macOS 上使用 Xamarin 生成 iOS 应用。 |
Xcode Xcode@5 Xcode@4 |
在 macOS 上生成、测试或存档 Xcode 工作区。 (可选)打包应用。 |
Xcode 生成 Xcode@3 Xcode@2 |
在 macOS 上生成 Xcode 工作区。 |
Xcode 包 iOS XcodePackageiOS@0 |
使用 xcrun 从 Xcode 生成输出生成 .ipa 文件(Xcode 7 或更低版本)。 |
部署任务
任务 | 描述 |
---|---|
App Center 分发 AppCenterDistribute@3 AppCenterDistribute@2 AppCenterDistribute@1 AppCenterDistribute@0 |
通过 Visual Studio App Center 将应用版本分发给测试人员和用户。 |
ARM 模板部署 AzureResourceManagerTemplateDeployment@3 |
将 Azure 资源管理器 (ARM) 模板部署到所有部署范围。 |
Azure 应用服务经典版(已弃用) AzureWebPowerShellDeployment@1 |
使用 Azure PowerShell 创建或更新 Azure 应用服务。 |
Azure 应用服务部署 AzureRmWebAppDeployment@4 AzureRmWebAppDeployment@3 AzureRmWebAppDeployment@2 |
使用 Docker、Java、.NET、.NET、.NET Core、Node.js、PHP、Python 或 Ruby 部署到 Azure 应用服务。 |
Azure 应用服务管理 AzureAppServiceManage@0 |
启动、停止、重启、槽交换、槽删除、安装站点扩展或为 Azure 应用服务启用持续监视。 |
Azure 应用服务设置 AzureAppServiceSettings@1 |
更新/添加适用于 Linux 或 Windows 的 Azure Web 应用的应用设置。 |
Azure CLI AzureCLI@2 AzureCLI@1 |
在 Linux 代理上运行时,在 PowerShell Core/Shell 脚本中针对 Azure 订阅运行 Azure CLI 命令,或者在 Windows 代理上运行时运行 PowerShell/PowerShell Core/Batch 脚本。 |
Azure CLI 预览版 AzureCLI@0 |
使用 Azure CLI 命令针对 Azure 订阅运行 Shell 或 Batch 脚本。 |
Azure 云服务部署 AzureCloudPowerShellDeployment@1 |
部署 Azure 云服务。 |
Azure Database for MySQL 部署 AzureMysqlDeployment@1 |
运行脚本并更改 Azure Database for MySQL。 |
Azure 文件复制 AzureFileCopy@4 AzureFileCopy@3 AzureFileCopy@2 AzureFileCopy@1 |
将文件复制到 Azure Blob 存储或虚拟机。 |
在 Kubernetes 上 AzureFunctionOnKubernetes@0 |
将 Azure 函数部署到 Kubernetes 群集。 |
Azure Functions 部署 AzureFunctionApp@1 |
使用 .NET、Python、JavaScript、PowerShell、基于 Java 的 Web 应用程序更新函数应用。 |
用于容器 的 Azure Functions AzureFunctionAppContainer@1 |
使用 Docker 容器更新函数应用。 |
Azure Key Vault AzureKeyVault@1 |
下载 Azure Key Vault 机密。 |
Azure Monitor 警报(已弃用) AzureMonitorAlerts@0 |
针对 Azure 资源的可用指标配置警报(已弃用)。 |
Azure PowerShell AzurePowerShell@5 AzurePowerShell@4 AzurePowerShell@3 AzurePowerShell@2 AzurePowerShell@1 |
在 Azure 环境中运行 PowerShell 脚本。 |
Azure 资源组部署 AzureResourceGroupDeployment@2 |
将 Azure 资源管理器 (ARM) 模板部署到资源组并管理虚拟机。 |
Azure 资源组部署 AzureResourceGroupDeployment@1 |
部署、启动、停止、删除 Azure 资源组。 |
Azure SQL 数据库部署 SqlAzureDacpacDeployment@1 |
使用 DACPAC 部署 Azure SQL 数据库,或使用 SQLCMD 运行脚本。 |
Azure VM 规模集部署 AzureVmssDeployment@0 |
部署虚拟机规模集映像。 |
Azure Web 应用 AzureWebApp@1 |
部署适用于 Linux 或 Windows 的 Azure Web 应用。 |
用于容器的 Azure Web 应用 AzureWebAppContainer@1 |
将容器部署到 Azure 应用服务。 |
生成计算机映像 PackerBuild@1 PackerBuild@0 |
使用 Packer 生成计算机映像,该映像可用于 Azure 虚拟机规模集部署。 |
检查 Azure Policy 符合性 AzurePolicyCheckGate@0 |
Azure Policy 的安全与符合性评估。 |
Chef Chef@1 |
通过编辑环境属性部署到 Chef 环境。 |
厨师刀 ChefKnife@1 |
在 Chef 工作站上使用 Knife 命令运行脚本。 |
通过 SSH 复制文件 CopyFilesOverSSH@0 |
通过 SSH 将文件或生成项目复制到远程计算机。 |
部署到 Kubernetes KubernetesManifest@0 |
使用 Kubernetes 清单文件部署到群集,甚至制作用于使用 Helm 图表进行部署的清单文件。 |
IIS Web 应用部署 IISWebAppDeploymentOnMachineGroup@0 |
使用 Web 部署部署网站或 Web 应用程序。 |
IIS Web 应用部署(已弃用) IISWebAppDeployment@1 |
使用 MSDeploy 进行部署,然后创建/更新网站和应用池。 |
IIS Web 应用管理 IISWebAppManagementOnMachineGroup@0 |
创建或更新网站、Web 应用、虚拟目录或应用程序池。 |
调用 REST API InvokeRESTAPI@1 InvokeRESTAPI@0 |
将 REST API 作为管道的一部分调用。 |
Kubectl Kubernetes@1 Kubernetes@0 |
通过运行 kubectl 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
手动干预 ManualIntervention@8 |
暂停部署并等待手动干预。 |
手动验证 ManualValidation@0 |
[预览]暂停管道运行以等待手动交互。 仅适用于 YAML 管道。 |
MySQL 数据库部署 MysqlDeploymentOnMachineGroup@1 |
运行脚本并更改 MySQL 数据库。 |
打包和部署 Helm 图表 HelmDeploy@0 |
通过运行 helm 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@3 |
使用 PSSession 和 Invoke-Command 远程处理在远程计算机上执行 PowerShell 脚本。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@2 PowerShellOnTargetMachines@1 |
在远程计算机上执行 PowerShell 脚本。 |
Service Fabric 应用程序部署 ServiceFabricDeploy@1 |
将 Azure Service Fabric 应用程序部署到群集。 |
Service Fabric Compose 部署 ServiceFabricComposeDeploy@0 |
将 Docker Compose 应用程序部署到 Azure Service Fabric 群集。 |
SQL Server 数据库部署 SqlDacpacDeploymentOnMachineGroup@0 |
使用 DACPAC 或 SQL 脚本部署 SQL Server 数据库。 |
SQL Server 数据库部署(已弃用) SqlServerDacpacDeployment@1 |
使用 DACPAC 部署 SQL Server 数据库。 |
SSH SSH@0 |
使用 SSH 在远程计算机上运行 shell 命令或脚本。 |
Windows 计算机文件复制 WindowsMachineFileCopy@2 WindowsMachineFileCopy@1 |
将文件复制到远程 Windows 计算机。 |
包任务
任务 | 描述 |
---|---|
CocoaPods CocoaPods@0 |
为 Swift 和 Objective-C Cocoa 项目安装 CocoaPods 依赖项。 |
Conda 环境 CondaEnvironment@1 CondaEnvironment@0 |
此任务已弃用。 在脚本中直接使用 conda 来处理 Anaconda 环境。 |
下载 Github Npm 包 DownloadGithubNpmPackage@1 |
从 GitHub 安装 npm 包。 |
Maven 身份验证 MavenAuthenticate@0 |
提供 Azure Artifacts 源和外部 maven 存储库的凭据。 |
npm Npm@1 Npm@0 |
安装并发布 npm 包,或运行 npm 命令。 支持 azure Artifacts 等 npmjs.com 和经过身份验证的注册表。 |
npm 身份验证(针对任务运行程序) npmAuthenticate@0 |
如果还使用 npm 任务,请不要使用此任务。 为生成范围向存储库中的 .npmrc 文件提供 npm 凭据。 这使 npm 任务运行程序(如 gulp 和 Grunt)能够使用专用注册表进行身份验证。 |
NuGet NuGetCommand@2 |
还原、打包或推送 NuGet 包,或运行 NuGet 命令。 支持 azure Artifacts 和 MyGet 等 NuGet.org 和经过身份验证的源。 使用 NuGet.exe 并适用于 .NET Framework 应用。 对于 .NET Core 和 .NET Standard 应用,请使用 .NET Core 任务。 |
NuGet 对 进行身份验证 NuGetAuthenticate@0 |
配置 NuGet 工具以使用 Azure Artifacts 和其他 NuGet 存储库进行身份验证。 需要 NuGet >= 4.8.5385、dotnet >= 2.1.400 或 MSBuild >= 15.8.166.59604。 |
NuGet 命令 NuGet@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 安装程序 NuGetInstaller@0 |
安装或还原缺少 NuGet 包。 使用NuGetAuthenticate@0任务获取最新功能。 |
NuGet 打包程序 NuGetPackager@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 发布者 NuGetPublisher@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 还原 NuGetRestore@1 |
还原 NuGet 包,以准备 Visual Studio 生成步骤。 |
PyPI 发布者 PyPIPublisher@0 |
使用 Twine 创建 sdist 或 wheel 并将其上传到与 PyPI 兼容的索引。 |
Python pip 身份验证 PipAuthenticate@1 PipAuthenticate@0 |
用于安装 Python 分发版的 pip 客户端的身份验证任务。 |
Python 孪生上传身份验证 TwineAuthenticate@1 TwineAuthenticate@0 |
使用孪生对上传 Python 分发版进行身份验证。 将“-r FeedName/EndpointName --config-file $(PYPIRC_PATH)”添加到孪生上传命令。 对于此组织中存在的源,请使用源名称作为存储库(-r)。 否则,请使用服务连接中定义的终结点名称。 |
通用包 UniversalPackages@0 |
下载或发布通用包。 |
Xamarin 组件还原 XamarinComponentRestore@0 |
此任务已弃用。 请改用“NuGet”。 |
测试任务
任务 | 描述 |
---|---|
App Center 测试 AppCenterTest@1 |
使用 Visual Studio App Center 测试应用包。 |
容器结构测试 ContainerStructureTest@0 |
使用容器结构测试(https://github.com/GoogleContainerTools/container-structure-test)基于四类测试(命令测试、文件存在测试、文件内容测试和元数据测试)验证映像的结构。 |
Mobile Center 测试 VSMobileCenterTest@0 |
使用 Visual Studio Mobile Center 测试移动应用包。 |
发布代码覆盖率结果 PublishCodeCoverageResults@1 |
发布生成中的 Cobertura 或 JaCoCo 代码覆盖率结果。 |
发布测试结果 PublishTestResults@1 |
将测试结果发布到 Azure Pipelines。 |
发布测试结果 PublishTestResults@2 |
将测试结果发布到 Azure Pipelines。 |
运行功能测试 RunVisualStudioTestsusingTestAgent@1 |
已弃用:此任务及其配套任务(Visual Studio 测试代理部署)已弃用。 请改用“Visual Studio 测试”任务。 VSTest 任务可以运行单元和功能测试。 使用多代理作业设置对一个或多个代理运行测试。 使用“Visual Studio 测试平台”任务运行测试,而无需在代理上使用 Visual Studio。 VSTest 任务还带来了新功能,例如自动重新运行失败的测试。 |
Visual Studio 测试 VSTest@2 VSTest@1 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@2 |
DeployVisualStudioTestAgent@2已弃用。 使用 Visual Studio 测试任务运行单元和功能测试。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@1 |
部署并配置测试代理以在一组计算机上运行测试。 |
Xamarin Test Cloud XamarinTestCloud@1 |
[已弃用]使用 Xamarin.UITest 通过 Xamarin 测试云测试移动应用。 请改用“App Center 测试”任务。 |
工具任务
任务 | 描述 |
---|---|
.NET Core SDK/运行时安装程序 DotNetCoreInstaller@1 DotNetCoreInstaller@0 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 |
Docker CLI 安装程序 DockerInstaller@0 |
在代理计算机上安装 Docker CLI。 |
Duffle 工具安装程序 DuffleInstaller@0 |
安装指定版本的 Duffle 以安装和管理 CNAB 捆绑包。 |
Go 工具安装程序 GoTool@0 |
在缓存中查找或下载特定版本的 Go 并将其添加到 PATH。 |
Helm 工具安装程序 HelmInstaller@1 HelmInstaller@0 |
在代理计算机上安装 Helm。 |
安装 Azure Func Core Tools FuncToolsInstaller@0 |
安装 Azure Func Core Tools。 |
Java 工具安装程序 JavaToolInstaller@0 |
从用户提供的 Azure Blob 或工具缓存中获取特定版本的 Java,并设置JAVA_HOME。 |
Kubectl 工具安装程序 KubectlInstaller@0 |
在代理计算机上安装 Kubectl。 |
NuGet 工具安装程序 NuGetToolInstaller@1 NuGetToolInstaller@0 |
从 Internet 或工具缓存获取特定版本的 NuGet 并将其添加到 PATH。 使用此任务可更改 NuGet 任务中使用的 NuGet 版本。 |
使用 .NET Core UseDotNet@2 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 使用此任务可更改后续任务中使用的 .NET Core 版本。 此外,还提供代理支持。 |
使用 Node.js 生态系统 UseNode@1 NodeTool@0 |
设置 Node.js 环境并将其添加到 PATH,此外还提供代理支持。 |
使用 Python 版本 UsePythonVersion@0 |
使用工具缓存中的指定版本的 Python,可以选择将其添加到 PATH。 |
使用 Ruby 版本 UseRubyVersion@0 |
使用工具缓存中的指定版本的 Ruby,可以选择将其添加到 PATH。 |
Visual Studio 测试平台安装程序 VisualStudioTestPlatformInstaller@1 |
从 nuget.org 或工具缓存获取测试平台。 满足“vstest”需求,可用于运行测试并使用 Visual Studio 测试任务收集诊断数据。 |
实用工具任务
任务 | 描述 |
---|---|
存档文件 ArchiveFiles@2 |
将文件压缩为.7z、.tar.gz或 .zip。 |
存档文件 ArchiveFiles@1 |
使用压缩格式(如.7z、.rar、.tar.gz和 .zip)存档文件。 |
Azure 网络负载均衡器 AzureNLBManagement@1 |
将 Azure 虚拟机的网络接口连接到负载均衡器的后端地址池或断开连接。 |
Bash Bash@3 |
在 macOS、Linux 或 Windows 上运行 Bash 脚本。 |
Batch 脚本 BatchScript@1 |
运行 Windows 命令或批处理脚本,并根据需要允许它更改环境。 |
缓存 Cache@2 |
在运行之间缓存文件。 |
缓存 (Beta) CacheBeta@1 CacheBeta@0 |
在运行之间缓存文件。 |
命令行 CmdLine@2 CmdLine@1 |
在 Linux 和 macOS 上使用 Bash 运行命令行脚本,并在 Windows 上运行 cmd.exe。 |
复制和发布生成项目 CopyPublishBuildArtifacts@1 |
CopyPublishBuildArtifacts@1已弃用。 请改用“复制文件”任务和“发布生成项目”任务。 |
复制文件 CopyFiles@2 |
使用匹配文件路径(而不是文件夹路径)模式将源文件夹中的文件复制到目标文件夹。 |
复制文件 CopyFiles@1 |
使用微型模式将源文件从源文件夹复制到目标文件夹(迷你图模式仅匹配文件路径,而不是文件夹路径)。 |
cURL 上传文件 cURLUploader@2 cURLUploader@1 |
使用 cURL 支持的协议上传文件。 |
解密文件 (OpenSSL) DecryptFile@1 |
使用 OpenSSL 解密文件。 |
延迟 Delay@1 |
将工作流的进一步执行延迟为固定时间。 |
删除文件 DeleteFiles@1 |
删除与模式匹配的文件夹或文件。 |
从文件共享下载项目 DownloadFileshareArtifacts@1 |
从文件共享下载项目,例如 \share\drop。 |
下载生成项目 DownloadBuildArtifacts@0 |
下载作为已完成生成的项目保存的文件。 |
下载 GitHub 版本 DownloadGitHubRelease@0 |
从存储库下载 GitHub Release。 |
下载包 DownloadPackage@1 DownloadPackage@0 |
从 Azure Artifacts 中的包管理源下载包。 |
下载管道项目 DownloadPipelineArtifact@2 DownloadPipelineArtifact@1 DownloadPipelineArtifact@0 |
下载生成和管道项目。 |
下载安全文件 DownloadSecureFile@1 |
将安全文件下载到代理计算机。 |
提取文件 ExtractFiles@1 |
提取各种存档和压缩文件,例如.7z、.rar、.tar.gz和 .zip。 |
文件转换 FileTransform@2 FileTransform@1 |
将令牌替换为 XML 或 JSON 配置文件中的变量值。 |
FTP 上传 FtpUpload@2 FtpUpload@1 |
使用 FTP 上传文件。 |
GitHub 注释 GitHubComment@0 |
将注释写入 GitHub 实体,即问题或拉取请求(PR)。 |
GitHub 发布 GitHubRelease@1 GitHubRelease@0 |
创建、编辑或删除 GitHub 版本。 |
安装 Apple 证书 InstallAppleCertificate@2 |
安装在 macOS 代理计算机上生成的 Apple 证书。 |
安装 Apple 证书 InstallAppleCertificate@1 InstallAppleCertificate@0 |
安装在 macOS 代理上生成的 Apple 证书。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@1 |
安装在 macOS 代理计算机上构建所需的 Apple 预配配置文件。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@0 |
安装在 macOS 代理上构建所需的 Apple 预配配置文件。 |
安装 SSH 密钥 InstallSSHKey@0 |
在生成或部署之前安装 SSH 密钥。 |
调用 Azure 函数 AzureFunction@1 AzureFunction@0 |
调用 Azure 函数。 |
Jenkins 下载项目 JenkinsDownloadArtifacts@1 |
下载 Jenkins 作业生成的项目。 |
PowerShell PowerShell@2 PowerShell@1 |
在 Linux、macOS 或 Windows 上运行 PowerShell 脚本。 |
发布生成项目 PublishBuildArtifacts@1 |
将生成项目发布到 Azure Pipelines 或 Windows 文件共享。 |
发布管道项目 PublishPipelineArtifact@1 PublishPipelineArtifact@0 |
将文件或目录发布为当前运行的命名项目。 |
发布管道元数据 PublishPipelineMetadata@0 |
将管道元数据发布到证据存储。 |
发布到 Azure 服务总线 PublishToAzureServiceBus@1 PublishToAzureServiceBus@0 |
使用服务连接(无需代理)将消息发送到 Azure 服务总线。 |
Python 脚本 PythonScript@0 |
运行 Python 文件或内联脚本。 |
查询 Azure Monitor 警报 AzureMonitor@1 |
观察为活动警报配置的 Azure Monitor 规则。 |
查询经典 Azure Monitor 警报 AzureMonitor@0 |
观察为活动警报配置的经典 Azure Monitor 规则。 |
查询工作项 queryWorkItems@0 |
执行工作项查询并检查返回的项数。 |
审阅应用 ReviewApp@0 |
使用此任务在部署阶段提供程序下动态创建资源。 |
Service Fabric PowerShell ServiceFabricPowerShell@1 |
在 Azure Service Fabric 群集连接的上下文中运行 PowerShell 脚本。 |
Shell 脚本 ShellScript@2 |
使用 Bash 运行 shell 脚本。 |
更新 Service Fabric 应用版本 ServiceFabricUpdateAppVersions@1 |
自动更新打包的 Service Fabric 应用程序的版本。 |
更新 Service Fabric 清单 ServiceFabricUpdateManifests@2 |
自动更新打包的 Azure Service Fabric 应用程序中应用程序和服务清单的部分。 |
Xamarin 许可证 XamarinLicense@1 |
[已弃用]升级到 Xamarin 的免费版本:https://store.xamarin.com。 |
生成任务
任务 | 描述 |
---|---|
.NET Core DotNetCoreCLI@2 DotNetCoreCLI@1 DotNetCoreCLI@0 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Android 生成 AndroidBuild@1 |
AndroidBuild@1已弃用。 使用 Gradle。 |
Android 签名 AndroidSigning@3 AndroidSigning@2 AndroidSigning@1 |
对 Android APK 文件进行签名和对齐。 |
蚂蚁 Ant@1 |
使用 Apache Ant 进行生成。 |
Azure IoT Edge AzureIoTEdge@2 |
生成和部署 Azure IoT Edge 映像。 |
CMake CMake@1 |
使用 CMake 跨平台生成系统进行生成。 |
容器生成 ContainerBuild@0 |
容器生成任务。 |
Docker Docker@2 Docker@1 Docker@0 |
生成或推送 Docker 映像、登录或注销,或运行 Docker 命令。 |
Docker Compose DockerCompose@0 |
生成、推送或运行多容器 Docker 应用程序。 任务可与 Docker 或 Azure 容器注册表一起使用。 |
下载 GitHub Nuget 包 DownloadGitHubNugetPackage@1 |
使用 dotnet CLI 还原 nuget 包。 |
Go Go@0 |
获取、生成或测试 Go 应用程序,或运行自定义 Go 命令。 |
Gradle Gradle@2 Gradle@1 |
使用 Gradle 包装器脚本进行生成。 |
格鲁特 Grunt@0 |
运行 Grunt JavaScript 任务运行程序。 |
gulp gulp@1 gulp@0 |
运行 gulp Node.js 基于任务的流式处理生成系统。 |
索引源和发布符号 PublishSymbols@2 PublishSymbols@1 |
为源代码编制索引并将符号发布到文件共享或 Azure Artifacts 符号服务器。 |
Jenkins 队列作业 JenkinsQueueJob@2 |
在 Jenkins 服务器上对作业进行排队。 |
Jenkins 队列作业 JenkinsQueueJob@1 |
在 Jenkins 服务器上对作业进行排队。 |
Maven Maven@3 Maven@2 Maven@1 |
使用 Apache Maven 生成、测试和部署。 |
MSBuild MSBuild@1 |
使用 MSBuild 进行生成。 |
Visual Studio 生成 VSBuild@1 |
使用 MSBuild 生成并设置 Visual Studio 版本属性。 |
Xamarin.Android XamarinAndroid@1 |
使用 Xamarin 生成 Android 应用。 |
Xamarin.iOS XamariniOS@2 XamariniOS@1 |
在 macOS 上使用 Xamarin 生成 iOS 应用。 |
Xcode Xcode@5 Xcode@4 |
在 macOS 上生成、测试或存档 Xcode 工作区。 (可选)打包应用。 |
Xcode 生成 Xcode@3 Xcode@2 |
在 macOS 上生成 Xcode 工作区。 |
Xcode 包 iOS XcodePackageiOS@0 |
使用 xcrun 从 Xcode 生成输出生成 .ipa 文件(Xcode 7 或更低版本)。 |
部署任务
任务 | 描述 |
---|---|
App Center 分发 AppCenterDistribute@3 AppCenterDistribute@2 AppCenterDistribute@1 AppCenterDistribute@0 |
通过 Visual Studio App Center 将应用版本分发给测试人员和用户。 |
ARM 模板部署 AzureResourceManagerTemplateDeployment@3 |
将 Azure 资源管理器 (ARM) 模板部署到所有部署范围。 |
Azure 应用服务经典版(已弃用) AzureWebPowerShellDeployment@1 |
使用 Azure PowerShell 创建或更新 Azure 应用服务。 |
Azure 应用服务部署 AzureRmWebAppDeployment@4 AzureRmWebAppDeployment@3 AzureRmWebAppDeployment@2 |
使用 Docker、Java、.NET、.NET、.NET Core、Node.js、PHP、Python 或 Ruby 部署到 Azure 应用服务。 |
Azure 应用服务管理 AzureAppServiceManage@0 |
启动、停止、重启、槽交换、槽删除、安装站点扩展或为 Azure 应用服务启用持续监视。 |
Azure 应用服务设置 AzureAppServiceSettings@1 |
更新/添加适用于 Linux 或 Windows 的 Azure Web 应用的应用设置。 |
Azure CLI AzureCLI@2 AzureCLI@1 |
在 Linux 代理上运行时,在 PowerShell Core/Shell 脚本中针对 Azure 订阅运行 Azure CLI 命令,或者在 Windows 代理上运行时运行 PowerShell/Powershell Core/Batch 脚本。 |
Azure CLI 预览版 AzureCLI@0 |
使用 Azure CLI 命令针对 Azure 订阅运行 Shell 或 Batch 脚本。 |
Azure 云服务部署 AzureCloudPowerShellDeployment@1 |
部署 Azure 云服务。 |
Azure Database for MySQL 部署 AzureMysqlDeployment@1 |
运行脚本并更改 Azure Database for MySQL。 |
Azure 文件复制 AzureFileCopy@4 AzureFileCopy@3 AzureFileCopy@2 AzureFileCopy@1 |
将文件复制到 Azure Blob 存储或虚拟机。 |
在 Kubernetes 上 AzureFunctionOnKubernetes@0 |
将 Azure 函数部署到 Kubernetes 群集。 |
Azure Functions 部署 AzureFunctionApp@1 |
使用 .NET、Python、JavaScript、PowerShell、基于 Java 的 Web 应用程序更新函数应用。 |
用于容器 的 Azure Functions AzureFunctionAppContainer@1 |
使用 Docker 容器更新函数应用。 |
Azure Key Vault AzureKeyVault@1 |
下载 Azure Key Vault 机密。 |
Azure Monitor 警报(已弃用) AzureMonitorAlerts@0 |
针对 Azure 资源的可用指标配置警报(已弃用)。 |
Azure PowerShell AzurePowerShell@5 AzurePowerShell@4 AzurePowerShell@3 AzurePowerShell@2 AzurePowerShell@1 |
在 Azure 环境中运行 PowerShell 脚本。 |
Azure 资源组部署 AzureResourceGroupDeployment@2 |
将 Azure 资源管理器 (ARM) 模板部署到资源组并管理虚拟机。 |
Azure 资源组部署 AzureResourceGroupDeployment@1 |
部署、启动、停止、删除 Azure 资源组。 |
Azure SQL 数据库部署 SqlAzureDacpacDeployment@1 |
使用 DACPAC 部署 Azure SQL 数据库,或使用 SQLCMD 运行脚本。 |
Azure VM 规模集部署 AzureVmssDeployment@0 |
部署虚拟机规模集映像。 |
Azure Web 应用 AzureWebApp@1 |
部署适用于 Linux 或 Windows 的 Azure Web 应用。 |
用于容器的 Azure Web 应用 AzureWebAppContainer@1 |
将容器部署到 Azure 应用服务。 |
生成计算机映像 PackerBuild@1 PackerBuild@0 |
使用 Packer 生成计算机映像,该映像可用于 Azure 虚拟机规模集部署。 |
检查 Azure Policy 符合性 AzurePolicyCheckGate@0 |
Azure Policy 的安全与符合性评估。 |
Chef Chef@1 |
通过编辑环境属性部署到 Chef 环境。 |
厨师刀 ChefKnife@1 |
在 Chef 工作站上使用 Knife 命令运行脚本。 |
通过 SSH 复制文件 CopyFilesOverSSH@0 |
通过 SSH 将文件或生成项目复制到远程计算机。 |
部署到 Kubernetes KubernetesManifest@0 |
使用 Kubernetes 清单文件部署到群集,甚至制作用于使用 Helm 图表进行部署的清单文件。 |
IIS Web 应用部署 IISWebAppDeploymentOnMachineGroup@0 |
使用 Web 部署部署网站或 Web 应用程序。 |
IIS Web 应用部署(已弃用) IISWebAppDeployment@1 |
使用 MSDeploy 进行部署,然后创建/更新网站和应用池。 |
IIS Web 应用管理 IISWebAppManagementOnMachineGroup@0 |
创建或更新网站、Web 应用、虚拟目录或应用程序池。 |
调用 REST API InvokeRESTAPI@1 InvokeRESTAPI@0 |
将 REST API 作为管道的一部分调用。 |
Kubectl Kubernetes@1 Kubernetes@0 |
通过运行 kubectl 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
手动干预 ManualIntervention@8 |
暂停部署并等待手动干预。 |
MySQL 数据库部署 MysqlDeploymentOnMachineGroup@1 |
运行脚本并更改 MySQL 数据库。 |
打包和部署 Helm 图表 HelmDeploy@0 |
通过运行 helm 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@3 |
使用 PSSession 和 Invoke-Command 远程处理在远程计算机上执行 PowerShell 脚本。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@2 PowerShellOnTargetMachines@1 |
在远程计算机上执行 PowerShell 脚本。 |
Service Fabric 应用程序部署 ServiceFabricDeploy@1 |
将 Azure Service Fabric 应用程序部署到群集。 |
Service Fabric Compose 部署 ServiceFabricComposeDeploy@0 |
将 Docker Compose 应用程序部署到 Azure Service Fabric 群集。 |
SQL Server 数据库部署 SqlDacpacDeploymentOnMachineGroup@0 |
使用 DACPAC 或 SQL 脚本部署 SQL Server 数据库。 |
SQL Server 数据库部署(已弃用) SqlServerDacpacDeployment@1 |
使用 DACPAC 部署 SQL Server 数据库。 |
SSH SSH@0 |
使用 SSH 在远程计算机上运行 shell 命令或脚本。 |
Windows 计算机文件复制 WindowsMachineFileCopy@2 WindowsMachineFileCopy@1 |
将文件复制到远程 Windows 计算机。 |
包任务
任务 | 描述 |
---|---|
CocoaPods CocoaPods@0 |
为 Swift 和 Objective-C Cocoa 项目安装 CocoaPods 依赖项。 |
Conda 环境 CondaEnvironment@1 CondaEnvironment@0 |
此任务已弃用。 在脚本中直接使用 conda 来处理 Anaconda 环境。 |
下载 Github Npm 包 DownloadGithubNpmPackage@1 |
从 GitHub 安装 npm 包。 |
Maven 身份验证 MavenAuthenticate@0 |
提供 Azure Artifacts 源和外部 maven 存储库的凭据。 |
npm Npm@1 Npm@0 |
安装并发布 npm 包,或运行 npm 命令。 支持 azure Artifacts 等 npmjs.com 和经过身份验证的注册表。 |
npm 身份验证(针对任务运行程序) npmAuthenticate@0 |
如果还使用 npm 任务,请不要使用此任务。 为生成范围向存储库中的 .npmrc 文件提供 npm 凭据。 这使 npm 任务运行程序(如 gulp 和 Grunt)能够使用专用注册表进行身份验证。 |
NuGet NuGetCommand@2 |
还原、打包或推送 NuGet 包,或运行 NuGet 命令。 支持 azure Artifacts 和 MyGet 等 NuGet.org 和经过身份验证的源。 使用 NuGet.exe 并适用于 .NET Framework 应用。 对于 .NET Core 和 .NET Standard 应用,请使用 .NET Core 任务。 |
NuGet 对 进行身份验证 NuGetAuthenticate@0 |
配置 NuGet 工具以使用 Azure Artifacts 和其他 NuGet 存储库进行身份验证。 需要 NuGet >= 4.8.5385、dotnet >= 2.1.400 或 MSBuild >= 15.8.166.59604。 |
NuGet 命令 NuGet@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 安装程序 NuGetInstaller@0 |
安装或还原缺少 NuGet 包。 使用NuGetAuthenticate@0任务获取最新功能。 |
NuGet 打包程序 NuGetPackager@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 发布者 NuGetPublisher@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 还原 NuGetRestore@1 |
还原 NuGet 包,以准备 Visual Studio 生成步骤。 |
PyPI 发布者 PyPIPublisher@0 |
使用 Twine 创建 sdist 或 wheel 并将其上传到与 PyPI 兼容的索引。 |
Python pip 身份验证 PipAuthenticate@1 PipAuthenticate@0 |
用于安装 Python 分发版的 pip 客户端的身份验证任务。 |
Python 孪生上传身份验证 TwineAuthenticate@1 TwineAuthenticate@0 |
使用孪生对上传 Python 分发版进行身份验证。 将“-r FeedName/EndpointName --config-file $(PYPIRC_PATH)”添加到孪生上传命令。 对于此组织中存在的源,请使用源名称作为存储库(-r)。 否则,请使用服务连接中定义的终结点名称。 |
通用包 UniversalPackages@0 |
下载或发布通用包。 |
Xamarin 组件还原 XamarinComponentRestore@0 |
此任务已弃用。 请改用“NuGet”。 |
测试任务
任务 | 描述 |
---|---|
App Center 测试 AppCenterTest@1 |
使用 Visual Studio App Center 测试应用包。 |
容器结构测试 ContainerStructureTest@0 |
使用容器结构测试(https://github.com/GoogleContainerTools/container-structure-test)基于四类测试(命令测试、文件存在测试、文件内容测试和元数据测试)验证映像的结构。 |
Mobile Center 测试 VSMobileCenterTest@0 |
使用 Visual Studio Mobile Center 测试移动应用包。 |
发布代码覆盖率结果 PublishCodeCoverageResults@1 |
发布生成中的 Cobertura 或 JaCoCo 代码覆盖率结果。 |
发布测试结果 PublishTestResults@1 |
将测试结果发布到 Azure Pipelines。 |
发布测试结果 PublishTestResults@2 |
将测试结果发布到 Azure Pipelines。 |
运行功能测试 RunVisualStudioTestsusingTestAgent@1 |
已弃用:此任务及其配套任务(Visual Studio 测试代理部署)已弃用。 请改用“Visual Studio 测试”任务。 VSTest 任务可以运行单元和功能测试。 使用多代理作业设置对一个或多个代理运行测试。 使用“Visual Studio 测试平台”任务运行测试,而无需在代理上使用 Visual Studio。 VSTest 任务还带来了新功能,例如自动重新运行失败的测试。 |
Visual Studio 测试 VSTest@2 VSTest@1 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@2 |
DeployVisualStudioTestAgent@2已弃用。 使用 Visual Studio 测试任务运行单元和功能测试。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@1 |
部署并配置测试代理以在一组计算机上运行测试。 |
Xamarin Test Cloud XamarinTestCloud@1 |
[已弃用]使用 Xamarin.UITest 通过 Xamarin 测试云测试移动应用。 请改用“App Center 测试”任务。 |
工具任务
任务 | 描述 |
---|---|
.NET Core SDK/运行时安装程序 DotNetCoreInstaller@1 DotNetCoreInstaller@0 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 |
Docker CLI 安装程序 DockerInstaller@0 |
在代理计算机上安装 Docker CLI。 |
Duffle 工具安装程序 DuffleInstaller@0 |
安装指定版本的 Duffle 以安装和管理 CNAB 捆绑包。 |
Go 工具安装程序 GoTool@0 |
在缓存中查找或下载特定版本的 Go 并将其添加到 PATH。 |
Helm 工具安装程序 HelmInstaller@1 HelmInstaller@0 |
在代理计算机上安装 Helm。 |
安装 Azure Func Core Tools FuncToolsInstaller@0 |
安装 Azure Func Core Tools。 |
Java 工具安装程序 JavaToolInstaller@0 |
从用户提供的 Azure Blob 或工具缓存中获取特定版本的 Java,并设置JAVA_HOME。 |
Kubectl 工具安装程序 KubectlInstaller@0 |
在代理计算机上安装 Kubectl。 |
NuGet 工具安装程序 NuGetToolInstaller@1 NuGetToolInstaller@0 |
从 Internet 或工具缓存获取特定版本的 NuGet 并将其添加到 PATH。 使用此任务可更改 NuGet 任务中使用的 NuGet 版本。 |
使用 .NET Core UseDotNet@2 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 使用此任务可更改后续任务中使用的 .NET Core 版本。 此外,还提供代理支持。 |
使用 Node.js 生态系统 UseNode@1 NodeTool@0 |
设置 Node.js 环境并将其添加到 PATH,此外还提供代理支持。 |
使用 Python 版本 UsePythonVersion@0 |
使用工具缓存中的指定版本的 Python,可以选择将其添加到 PATH。 |
使用 Ruby 版本 UseRubyVersion@0 |
使用工具缓存中的指定版本的 Ruby,可以选择将其添加到 PATH。 |
Visual Studio 测试平台安装程序 VisualStudioTestPlatformInstaller@1 |
从 nuget.org 或工具缓存获取测试平台。 满足“vstest”需求,可用于运行测试并使用 Visual Studio 测试任务收集诊断数据。 |
实用工具任务
任务 | 描述 |
---|---|
存档文件 ArchiveFiles@2 |
将文件压缩为.7z、.tar.gz或 .zip。 |
存档文件 ArchiveFiles@1 |
使用压缩格式(如.7z、.rar、.tar.gz和 .zip)存档文件。 |
Azure 网络负载均衡器 AzureNLBManagement@1 |
将 Azure 虚拟机的网络接口连接到负载均衡器的后端地址池或断开连接。 |
Bash Bash@3 |
在 macOS、Linux 或 Windows 上运行 Bash 脚本。 |
Batch 脚本 BatchScript@1 |
运行 Windows 命令或批处理脚本,并根据需要允许它更改环境。 |
缓存 Cache@2 |
在运行之间缓存文件。 |
缓存 (Beta) CacheBeta@1 CacheBeta@0 |
在运行之间缓存文件。 |
命令行 CmdLine@2 CmdLine@1 |
在 Linux 和 macOS 上使用 Bash 运行命令行脚本,并在 Windows 上运行 cmd.exe。 |
复制和发布生成项目 CopyPublishBuildArtifacts@1 |
CopyPublishBuildArtifacts@1已弃用。 请改用“复制文件”任务和“发布生成项目”任务。 |
复制文件 CopyFiles@2 |
使用匹配文件路径(而不是文件夹路径)模式将源文件夹中的文件复制到目标文件夹。 |
复制文件 CopyFiles@1 |
使用微型模式将源文件从源文件夹复制到目标文件夹(迷你图模式仅匹配文件路径,而不是文件夹路径)。 |
cURL 上传文件 cURLUploader@2 cURLUploader@1 |
使用 cURL 支持的协议上传文件。 |
解密文件 (OpenSSL) DecryptFile@1 |
使用 OpenSSL 解密文件。 |
延迟 Delay@1 |
将工作流的进一步执行延迟为固定时间。 |
删除文件 DeleteFiles@1 |
删除与模式匹配的文件夹或文件。 |
从文件共享下载项目 DownloadFileshareArtifacts@1 |
从文件共享下载项目,例如 \share\drop。 |
下载生成项目 DownloadBuildArtifacts@0 |
下载作为已完成生成的项目保存的文件。 |
下载 GitHub 版本 DownloadGitHubRelease@0 |
从存储库下载 GitHub Release。 |
下载包 DownloadPackage@1 DownloadPackage@0 |
从 Azure Artifacts 中的包管理源下载包。 |
下载管道项目 DownloadPipelineArtifact@2 DownloadPipelineArtifact@1 DownloadPipelineArtifact@0 |
下载生成和管道项目。 |
下载安全文件 DownloadSecureFile@1 |
将安全文件下载到代理计算机。 |
提取文件 ExtractFiles@1 |
提取各种存档和压缩文件,例如.7z、.rar、.tar.gz和 .zip。 |
文件转换 FileTransform@2 FileTransform@1 |
将令牌替换为 XML 或 JSON 配置文件中的变量值。 |
FTP 上传 FtpUpload@2 FtpUpload@1 |
使用 FTP 上传文件。 |
GitHub 注释 GitHubComment@0 |
将注释写入 GitHub 实体,即问题或拉取请求(PR)。 |
GitHub 发布 GitHubRelease@1 GitHubRelease@0 |
创建、编辑或删除 GitHub 版本。 |
安装 Apple 证书 InstallAppleCertificate@2 |
安装在 macOS 代理计算机上生成的 Apple 证书。 |
安装 Apple 证书 InstallAppleCertificate@1 InstallAppleCertificate@0 |
安装在 macOS 代理上生成的 Apple 证书。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@1 |
安装在 macOS 代理计算机上构建所需的 Apple 预配配置文件。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@0 |
安装在 macOS 代理上构建所需的 Apple 预配配置文件。 |
安装 SSH 密钥 InstallSSHKey@0 |
在生成或部署之前安装 SSH 密钥。 |
调用 Azure 函数 AzureFunction@1 AzureFunction@0 |
调用 Azure 函数。 |
Jenkins 下载项目 JenkinsDownloadArtifacts@1 |
下载 Jenkins 作业生成的项目。 |
PowerShell PowerShell@2 PowerShell@1 |
在 Linux、macOS 或 Windows 上运行 PowerShell 脚本。 |
发布生成项目 PublishBuildArtifacts@1 |
将生成项目发布到 Azure Pipelines 或 Windows 文件共享。 |
发布管道项目 PublishPipelineArtifact@1 PublishPipelineArtifact@0 |
将文件或目录发布为当前运行的命名项目。 |
发布管道元数据 PublishPipelineMetadata@0 |
将管道元数据发布到证据存储。 |
发布到 Azure 服务总线 PublishToAzureServiceBus@1 PublishToAzureServiceBus@0 |
使用服务连接(无需代理)将消息发送到 Azure 服务总线。 |
Python 脚本 PythonScript@0 |
运行 Python 文件或内联脚本。 |
查询 Azure Monitor 警报 AzureMonitor@1 |
观察为活动警报配置的 Azure Monitor 规则。 |
查询经典 Azure Monitor 警报 AzureMonitor@0 |
观察为活动警报配置的经典 Azure Monitor 规则。 |
查询工作项 queryWorkItems@0 |
执行工作项查询并检查返回的项数。 |
审阅应用 ReviewApp@0 |
使用此任务在部署阶段提供程序下动态创建资源。 |
Service Fabric PowerShell ServiceFabricPowerShell@1 |
在 Azure Service Fabric 群集连接的上下文中运行 PowerShell 脚本。 |
Shell 脚本 ShellScript@2 |
使用 Bash 运行 shell 脚本。 |
更新 Service Fabric 应用版本 ServiceFabricUpdateAppVersions@1 |
自动更新打包的 Service Fabric 应用程序的版本。 |
更新 Service Fabric 清单 ServiceFabricUpdateManifests@2 |
自动更新打包的 Azure Service Fabric 应用程序中应用程序和服务清单的部分。 |
Xamarin 许可证 XamarinLicense@1 |
[已弃用]升级到 Xamarin 的免费版本:https://store.xamarin.com。 |
生成任务
任务 | 描述 |
---|---|
.NET Core DotNetCoreCLI@2 DotNetCoreCLI@1 DotNetCoreCLI@0 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Android 生成 AndroidBuild@1 |
AndroidBuild@1已弃用。 使用 Gradle。 |
Android 签名 AndroidSigning@3 AndroidSigning@2 AndroidSigning@1 |
对 Android APK 文件进行签名和对齐。 |
蚂蚁 Ant@1 |
使用 Apache Ant 进行生成。 |
Azure IoT Edge AzureIoTEdge@2 |
生成和部署 Azure IoT Edge 映像。 |
CMake CMake@1 |
使用 CMake 跨平台生成系统进行生成。 |
Docker Docker@2 Docker@1 Docker@0 |
生成或推送 Docker 映像、登录或注销,或运行 Docker 命令。 |
Docker Compose DockerCompose@0 |
生成、推送或运行多容器 Docker 应用程序。 任务可与 Docker 或 Azure 容器注册表一起使用。 |
Go Go@0 |
获取、生成或测试 Go 应用程序,或运行自定义 Go 命令。 |
Gradle Gradle@2 Gradle@1 |
使用 Gradle 包装器脚本进行生成。 |
格鲁特 Grunt@0 |
运行 Grunt JavaScript 任务运行程序。 |
Gulp Gulp@1 Gulp@0 |
基于 Node.js 流式处理任务的生成系统。 |
索引源和发布符号 PublishSymbols@2 PublishSymbols@1 |
为源代码编制索引并将符号发布到文件共享或 Azure Artifacts 符号服务器。 |
Jenkins 队列作业 JenkinsQueueJob@2 |
在 Jenkins 服务器上对作业进行排队。 |
Jenkins 队列作业 JenkinsQueueJob@1 |
在 Jenkins 服务器上对作业进行排队。 |
Maven Maven@3 Maven@2 Maven@1 |
使用 Apache Maven 生成、测试和部署。 |
MSBuild MSBuild@1 |
使用 MSBuild 进行生成。 |
Visual Studio 生成 VSBuild@1 |
使用 MSBuild 生成并设置 Visual Studio 版本属性。 |
Xamarin.Android XamarinAndroid@1 |
使用 Xamarin 生成 Android 应用。 |
Xamarin.iOS XamariniOS@2 XamariniOS@1 |
在 macOS 上使用 Xamarin 生成 iOS 应用。 |
Xcode Xcode@5 Xcode@4 |
在 macOS 上生成、测试或存档 Xcode 工作区。 (可选)打包应用。 |
Xcode 生成 Xcode@3 Xcode@2 |
在 macOS 上生成 Xcode 工作区。 |
Xcode 包 iOS XcodePackageiOS@0 |
使用 xcrun 从 Xcode 生成输出生成 .ipa 文件(Xcode 7 或更低版本)。 |
部署任务
任务 | 描述 |
---|---|
App Center 分发 AppCenterDistribute@3 AppCenterDistribute@2 AppCenterDistribute@1 AppCenterDistribute@0 |
通过 Visual Studio App Center 将应用版本分发给测试人员和用户。 |
Azure 应用服务经典版(已弃用) AzureWebPowerShellDeployment@1 |
使用 Azure PowerShell 创建或更新 Azure 应用服务。 |
Azure 应用服务部署 AzureRmWebAppDeployment@4 AzureRmWebAppDeployment@3 AzureRmWebAppDeployment@2 |
使用 Docker、Java、.NET、.NET、.NET Core、Node.js、PHP、Python 或 Ruby 部署到 Azure 应用服务。 |
Azure 应用服务管理 AzureAppServiceManage@0 |
启动、停止、重启、槽交换、安装站点扩展或为 Azure 应用服务启用持续监视。 |
Azure CLI AzureCLI@1 |
在 Linux 代理上运行时,在 Shell 脚本中针对 Azure 订阅运行 Azure CLI 命令,或者在 Windows 代理上运行 Batch 脚本时运行。 |
Azure CLI 预览版 AzureCLI@0 |
使用 Azure CLI 命令针对 Azure 订阅运行 Shell 或 Batch 脚本。 |
Azure 云服务部署 AzureCloudPowerShellDeployment@1 |
部署 Azure 云服务。 |
Azure Database for MySQL 部署 AzureMysqlDeployment@1 |
运行脚本并更改 Azure Database for MySQL。 |
Azure 文件复制 AzureFileCopy@3 AzureFileCopy@2 AzureFileCopy@1 |
将文件复制到 Azure Blob 存储或虚拟机。 |
用于容器 的 Azure 函数 AzureFunctionAppContainer@1 |
使用 Docker 容器更新函数应用。 |
Azure Functions 部署 AzureFunctionApp@1 |
部署适用于 Linux 或 Windows 的 Azure 函数。 |
Azure Key Vault AzureKeyVault@1 |
下载 Azure Key Vault 机密。 |
Azure Monitor 警报 AzureMonitorAlerts@0 |
针对 Azure 资源的可用指标配置警报。 |
Azure PowerShell AzurePowerShell@4 AzurePowerShell@3 AzurePowerShell@2 AzurePowerShell@1 |
在 Azure 环境中运行 PowerShell 脚本。 |
Azure 资源组部署 AzureResourceGroupDeployment@2 |
将 Azure 资源管理器 (ARM) 模板部署到资源组并管理虚拟机。 |
Azure 资源组部署 AzureResourceGroupDeployment@1 |
部署、启动、停止、删除 Azure 资源组。 |
Azure SQL 数据库部署 SqlAzureDacpacDeployment@1 |
使用 DACPAC 部署 Azure SQL 数据库,或使用 SQLCMD 运行脚本。 |
Azure VM 规模集部署 AzureVmssDeployment@0 |
部署虚拟机规模集映像。 |
Azure Web 应用 AzureWebApp@1 |
部署适用于 Linux 或 Windows 的 Azure Web 应用。 |
用于容器的 Azure Web 应用 AzureWebAppContainer@1 |
将容器部署到 Azure 应用服务。 |
生成计算机映像 PackerBuild@1 PackerBuild@0 |
使用 Packer 生成计算机映像,该映像可用于 Azure 虚拟机规模集部署。 |
检查 Azure Policy 符合性 AzurePolicyCheckGate@0 |
Azure Policy 的安全与符合性评估。 |
Chef Chef@1 |
通过编辑环境属性部署到 Chef 环境。 |
厨师刀 ChefKnife@1 |
在 Chef 工作站上使用 Knife 命令运行脚本。 |
通过 SSH 复制文件 CopyFilesOverSSH@0 |
通过 SSH 将文件或生成项目复制到远程计算机。 |
部署 Kubernetes 清单 KubernetesManifest@0 |
使用 Kubernetes 清单文件部署到群集,甚至制作用于使用 Helm 图表进行部署的清单文件。 |
部署到 Kubernetes Kubernetes@1 Kubernetes@0 |
通过运行 kubectl 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
IIS Web 应用部署 IISWebAppDeploymentOnMachineGroup@0 |
使用 Web 部署部署网站或 Web 应用程序。 |
IIS Web 应用部署(已弃用) IISWebAppDeployment@1 |
使用 MSDeploy 进行部署,然后创建/更新网站和应用池。 |
IIS Web 应用管理 IISWebAppManagementOnMachineGroup@0 |
创建或更新网站、Web 应用、虚拟目录或应用程序池。 |
调用 REST API InvokeRESTAPI@1 InvokeRESTAPI@0 |
将 REST API 作为管道的一部分调用。 |
手动干预 ManualIntervention@8 |
暂停部署并等待手动干预。 |
MySQL 数据库部署 MysqlDeploymentOnMachineGroup@1 |
运行脚本并更改 MySQL 数据库。 |
打包和部署 Helm 图表 HelmDeploy@0 |
通过运行 helm 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@3 |
使用 PSSession 和 Invoke-Command 远程处理在远程计算机上执行 PowerShell 脚本。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@2 PowerShellOnTargetMachines@1 |
在远程计算机上执行 PowerShell 脚本。 |
Service Fabric 应用程序部署 ServiceFabricDeploy@1 |
将 Azure Service Fabric 应用程序部署到群集。 |
Service Fabric Compose 部署 ServiceFabricComposeDeploy@0 |
将 Docker Compose 应用程序部署到 Azure Service Fabric 群集。 |
SQL Server 数据库部署 SqlDacpacDeploymentOnMachineGroup@0 |
使用 DACPAC 或 SQL 脚本部署 SQL Server 数据库。 |
SQL Server 数据库部署(已弃用) SqlServerDacpacDeployment@1 |
使用 DACPAC 部署 SQL Server 数据库。 |
SSH SSH@0 |
使用 SSH 在远程计算机上运行 shell 命令或脚本。 |
Windows 计算机文件复制 WindowsMachineFileCopy@2 WindowsMachineFileCopy@1 |
将文件复制到远程 Windows 计算机。 |
包任务
任务 | 描述 |
---|---|
CocoaPods CocoaPods@0 |
为 Swift 和 Objective-C Cocoa 项目安装 CocoaPods 依赖项。 |
Conda 环境 CondaEnvironment@1 CondaEnvironment@0 |
此任务已弃用。 在脚本中直接使用 conda 来处理 Anaconda 环境。 |
npm Npm@1 Npm@0 |
安装并发布 npm 包,或运行 npm 命令。 支持 azure Artifacts 等 npmjs.com 和经过身份验证的注册表。 |
npm 身份验证(任务运行程序) npmAuthenticate@0 |
如果还使用 npm 任务,请不要使用此任务。 为生成范围向存储库中的 .npmrc 文件提供 npm 凭据。 这使 npm 任务运行程序(如 Gulp 和 Grunt)能够使用专用注册表进行身份验证。 |
NuGet NuGetCommand@2 |
还原、打包或推送 NuGet 包,或运行 NuGet 命令。 支持 azure Artifacts 和 MyGet 等 NuGet.org 和经过身份验证的源。 使用 NuGet.exe 并适用于 .NET Framework 应用。 对于 .NET Core 和 .NET Standard 应用,请使用 .NET Core 任务。 |
NuGet 命令 NuGet@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 安装程序 NuGetInstaller@0 |
安装或还原缺少 NuGet 包。 |
NuGet 打包程序 NuGetPackager@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 发布者 NuGetPublisher@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此,无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此组织/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 还原 NuGetRestore@1 |
还原 NuGet 包,以准备 Visual Studio 生成步骤。 |
PyPI 发布者 PyPIPublisher@0 |
使用 Twine 创建 sdist 或 wheel 并将其上传到与 PyPI 兼容的索引。 |
Python pip 身份验证 PipAuthenticate@0 |
用于安装 Python 分发版的 pip 客户端的身份验证任务。 |
Python 孪生上传身份验证 TwineAuthenticate@0 |
使用孪生对上传 Python 分发版进行身份验证。 将“-r FeedName/EndpointName --config-file $(PYPIRC_PATH)”添加到孪生上传命令。 对于此组织中存在的源,请使用源名称作为存储库(-r)。 否则,请使用服务连接中定义的终结点名称。 |
通用包 UniversalPackages@0 |
下载或发布通用包。 |
Xamarin 组件还原 XamarinComponentRestore@0 |
此任务已弃用。 请改用“NuGet”。 |
测试任务
任务 | 描述 |
---|---|
App Center 测试 AppCenterTest@1 |
使用 Visual Studio App Center 测试应用包。 |
Mobile Center 测试 VSMobileCenterTest@0 |
使用 Visual Studio Mobile Center 测试移动应用包。 |
发布代码覆盖率结果 PublishCodeCoverageResults@1 |
发布生成中的 Cobertura 或 JaCoCo 代码覆盖率结果。 |
发布测试结果 PublishTestResults@1 |
将测试结果发布到 Azure Pipelines。 |
发布测试结果 PublishTestResults@2 |
将测试结果发布到 Azure Pipelines。 |
运行功能测试 RunVisualStudioTestsusingTestAgent@1 |
已弃用:此任务及其配套任务(Visual Studio 测试代理部署)已弃用。 请改用“Visual Studio 测试”任务。 VSTest 任务可以运行单元和功能测试。 使用多代理作业设置对一个或多个代理运行测试。 使用“Visual Studio 测试平台”任务运行测试,而无需在代理上使用 Visual Studio。 VSTest 任务还带来了新功能,例如自动重新运行失败的测试。 |
Visual Studio 测试 VSTest@2 VSTest@1 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@2 |
DeployVisualStudioTestAgent@2已弃用。 使用 Visual Studio 测试任务运行单元和功能测试。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@1 |
部署并配置测试代理以在一组计算机上运行测试。 |
Xamarin Test Cloud XamarinTestCloud@1 |
[已弃用]使用 Xamarin.UITest 通过 Xamarin 测试云测试移动应用。 请改用“App Center 测试”任务。 |
工具任务
任务 | 描述 |
---|---|
.NET Core SDK/运行时安装程序 DotNetCoreInstaller@1 DotNetCoreInstaller@0 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 |
Docker CLI 安装程序 DockerInstaller@0 |
在代理计算机上安装 Docker CLI。 |
Duffle 工具安装程序 DuffleInstaller@0 |
安装指定版本的 Duffle 以安装和管理 CNAB 捆绑包。 |
Go 工具安装程序 GoTool@0 |
在缓存中查找或下载特定版本的 Go 并将其添加到 PATH。 |
Helm 工具安装程序 HelmInstaller@1 HelmInstaller@0 |
在代理计算机上安装 Helm。 |
Java 工具安装程序 JavaToolInstaller@0 |
从用户提供的 Azure Blob 或工具缓存中获取特定版本的 Java,并设置JAVA_HOME。 |
Kubectl 工具安装程序 KubectlInstaller@0 |
在代理计算机上安装 Kubectl。 |
NuGet 工具安装程序 NuGetToolInstaller@1 NuGetToolInstaller@0 |
从 Internet 或工具缓存获取特定版本的 NuGet 并将其添加到 PATH。 使用此任务可更改 NuGet 任务中使用的 NuGet 版本。 |
使用 dotnet UseDotNet@2 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 使用此任务可更改后续任务中使用的 .NET Core 版本。 此外,还提供代理支持。 |
使用 Node.js 生态系统 UseNode@1 NodeTool@0 |
设置 Node.js 环境并将其添加到 PATH,此外还提供代理支持。 |
使用 Python 版本 UsePythonVersion@0 |
使用工具缓存中的指定版本的 Python,可以选择将其添加到 PATH。 |
使用 Ruby 版本 UseRubyVersion@0 |
使用工具缓存中的指定版本的 Ruby,可以选择将其添加到 PATH。 |
Visual Studio 测试平台安装程序 VisualStudioTestPlatformInstaller@1 |
从 nuget.org 或工具缓存获取测试平台。 满足“vstest”需求,可用于运行测试并使用 Visual Studio 测试任务收集诊断数据。 |
实用工具任务
任务 | 描述 |
---|---|
存档文件 ArchiveFiles@2 |
将文件压缩为.7z、.tar.gz或 .zip。 |
存档文件 ArchiveFiles@1 |
使用压缩格式(如.7z、.rar、.tar.gz和 .zip)存档文件。 |
Azure 网络负载均衡器 AzureNLBManagement@1 |
将 Azure 虚拟机的网络接口连接到负载均衡器的后端地址池或断开连接。 |
Bash Bash@3 |
在 macOS、Linux 或 Windows 上运行 Bash 脚本。 |
Batch 脚本 BatchScript@1 |
运行 Windows 命令或批处理脚本,并根据需要允许它更改环境。 |
命令行 CmdLine@2 CmdLine@1 |
在 Linux 和 macOS 上使用 Bash 运行命令行脚本,并在 Windows 上运行 cmd.exe。 |
复制和发布生成项目 CopyPublishBuildArtifacts@1 |
CopyPublishBuildArtifacts@1已弃用。 请改用“复制文件”任务和“发布生成项目”任务。 |
复制文件 CopyFiles@2 |
使用匹配文件路径(而不是文件夹路径)模式将源文件夹中的文件复制到目标文件夹。 |
复制文件 CopyFiles@1 |
使用微型模式将源文件从源文件夹复制到目标文件夹(迷你图模式仅匹配文件路径,而不是文件夹路径)。 |
cURL 上传文件 cURLUploader@2 cURLUploader@1 |
使用 cURL 支持的协议上传文件。 |
解密文件 (OpenSSL) DecryptFile@1 |
使用 OpenSSL 解密文件。 |
延迟 Delay@1 |
将工作流的进一步执行延迟为固定时间。 |
删除文件 DeleteFiles@1 |
删除与模式匹配的文件夹或文件。 |
从文件共享下载项目 DownloadFileshareArtifacts@1 |
从文件共享下载项目,例如 \share\drop。 |
下载生成项目 DownloadBuildArtifacts@0 |
下载作为已完成生成的项目保存的文件。 |
下载 GitHub 版本 DownloadGitHubRelease@0 |
从存储库下载 GitHub Release。 |
下载包 DownloadPackage@1 DownloadPackage@0 |
从 Azure Artifacts 中的包管理源下载包。 |
下载管道项目 DownloadPipelineArtifact@1 DownloadPipelineArtifact@0 |
下载管道项目。 |
下载安全文件 DownloadSecureFile@1 |
将安全文件下载到代理计算机上的临时位置。 |
提取文件 ExtractFiles@1 |
提取各种存档和压缩文件,例如.7z、.rar、.tar.gz和 .zip。 |
文件转换 FileTransform@1 |
将令牌替换为 XML 或 JSON 配置文件中的变量值。 |
FTP 上传 FtpUpload@2 FtpUpload@1 |
使用 FTP 上传文件。 |
GitHub 发布 GitHubRelease@0 |
创建、编辑或删除 GitHub 版本。 |
安装 Apple 证书 InstallAppleCertificate@2 |
安装在 macOS 代理计算机上生成的 Apple 证书。 |
安装 Apple 证书 InstallAppleCertificate@1 InstallAppleCertificate@0 |
安装在 macOS 代理上生成的 Apple 证书。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@1 |
安装在 macOS 代理计算机上构建所需的 Apple 预配配置文件。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@0 |
安装在 macOS 代理上构建所需的 Apple 预配配置文件。 |
安装 SSH 密钥 InstallSSHKey@0 |
在生成或部署之前安装 SSH 密钥。 |
调用 Azure 函数 AzureFunction@1 AzureFunction@0 |
调用 Azure 函数。 |
Jenkins 下载项目 JenkinsDownloadArtifacts@1 |
下载 Jenkins 作业生成的项目。 |
PowerShell PowerShell@2 PowerShell@1 |
在 Linux、macOS 或 Windows 上运行 PowerShell 脚本。 |
发布生成项目 PublishBuildArtifacts@1 |
将生成项目发布到 Azure Pipelines 或 Windows 文件共享。 |
发布管道项目 PublishPipelineArtifact@0 |
发布管道项目。 |
发布到 Azure 服务总线 PublishToAzureServiceBus@1 PublishToAzureServiceBus@0 |
使用服务连接(无需代理)将消息发送到 Azure 服务总线。 |
Python 脚本 PythonScript@0 |
运行 Python 文件或内联脚本。 |
查询 Azure Monitor 警报 AzureMonitor@1 |
观察为活动警报配置的 Azure Monitor 规则。 |
查询经典 Azure Monitor 警报 AzureMonitor@0 |
观察为活动警报配置的经典 Azure Monitor 规则。 |
查询工作项 queryWorkItems@0 |
执行工作项查询并检查返回的项数。 |
Service Fabric PowerShell ServiceFabricPowerShell@1 |
在 Azure Service Fabric 群集连接的上下文中运行 PowerShell 脚本。 |
Shell 脚本 ShellScript@2 |
使用 bash 运行 shell 脚本。 |
更新 Service Fabric 应用版本 ServiceFabricUpdateAppVersions@1 |
自动更新打包的 Service Fabric 应用程序的版本。 |
更新 Service Fabric 清单 ServiceFabricUpdateManifests@2 |
自动更新打包的 Azure Service Fabric 应用程序中应用程序和服务清单的部分。 |
Xamarin 许可证 XamarinLicense@1 |
[已弃用]升级到 Xamarin 的免费版本:https://store.xamarin.com。 |
生成任务
任务 | 描述 |
---|---|
.NET Core DotNetCoreCLI@2 DotNetCoreCLI@1 DotNetCoreCLI@0 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Android 生成 AndroidBuild@1 |
AndroidBuild@1已弃用。 使用 Gradle。 |
Android 签名 AndroidSigning@3 AndroidSigning@2 AndroidSigning@1 |
对 Android APK 文件进行签名和对齐。 |
蚂蚁 Ant@1 |
使用 Apache Ant 进行生成。 |
CMake CMake@1 |
使用 CMake 跨平台生成系统进行生成。 |
Docker Docker@1 Docker@0 |
生成、标记、推送或运行 Docker 映像,或运行 Docker 命令。 任务可与 Docker 或 Azure 容器注册表一起使用。 |
Docker Compose DockerCompose@0 |
生成、推送或运行多容器 Docker 应用程序。 任务可与 Docker 或 Azure 容器注册表一起使用。 |
Go Go@0 |
获取、生成或测试 Go 应用程序,或运行自定义 Go 命令。 |
Gradle Gradle@2 Gradle@1 |
使用 Gradle 包装器脚本进行生成。 |
格鲁特 Grunt@0 |
JavaScript 任务运行程序。 |
Gulp Gulp@0 |
基于 Node.js 流式处理任务的生成系统。 |
索引源和发布符号 PublishSymbols@2 PublishSymbols@1 |
为源代码编制索引,并将符号发布到文件共享或 Azure Artifacts 符号服务器。 |
Jenkins 队列作业 JenkinsQueueJob@2 JenkinsQueueJob@1 |
在 Jenkins 服务器上对作业进行排队。 |
Maven Maven@3 Maven@2 Maven@1 |
使用 Apache Maven 进行生成。 |
MSBuild MSBuild@1 |
使用 MSBuild 进行生成。 |
Visual Studio 生成 VSBuild@1 |
使用 MSBuild 生成并设置 Visual Studio 版本属性。 |
Xamarin.Android XamarinAndroid@1 |
使用 Xamarin 生成 Android 应用。 |
Xamarin.iOS XamariniOS@2 XamariniOS@1 |
在 macOS 上使用 Xamarin 生成 iOS 应用。 |
Xcode Xcode@5 Xcode@4 |
在 macOS 上生成、测试或存档 Xcode 工作区。 (可选)打包应用。 |
Xcode 生成 Xcode@3 Xcode@2 |
在 macOS 上生成 Xcode 工作区。 |
Xcode 包 iOS XcodePackageiOS@0 |
使用 xcrun 从 Xcode 生成输出生成 .ipa 文件(Xcode 7 或更低版本)。 |
部署任务
任务 | 描述 |
---|---|
App Center 分发 AppCenterDistribute@0 |
通过 App Center 将应用版本分发给测试人员和用户。 |
App Center 分发 AppCenterDistribute@1 |
通过 App Center 将应用版本分发给测试人员和用户。 |
Azure 应用服务经典版(已弃用) AzureWebPowerShellDeployment@1 |
使用 Azure PowerShell 创建或更新 Azure 应用服务。 |
Azure 应用服务部署 AzureRmWebAppDeployment@2 |
使用 Web 部署/Kudu REST API 更新 Azure 应用服务。 |
Azure 应用服务部署 AzureRmWebAppDeployment@4 AzureRmWebAppDeployment@3 |
使用内置映像或 Docker 容器更新 Windows 上的 Azure 应用服务、Linux 上的 Web 应用、ASP.NET、.NET Core、PHP、Python 或基于 Node.js 的 Web 应用程序、Windows 或 Linux 上的函数应用、Docker 容器、移动应用、API 应用程序、使用 Web 部署/Kudu REST API 的 Web 作业。 |
Azure 应用服务管理 AzureAppServiceManage@0 |
启动、停止、重启、槽交换、安装站点扩展或为 Azure 应用服务启用持续监视。 |
Azure CLI AzureCLI@1 |
使用 Azure CLI 命令针对 Azure 订阅运行 Shell 或 Batch 脚本。 |
Azure CLI 预览版 AzureCLI@0 |
使用 Azure CLI 命令针对 Azure 订阅运行 Shell 或 Batch 脚本。 |
Azure 云服务部署 AzureCloudPowerShellDeployment@1 |
部署 Azure 云服务。 |
Azure Database for MySQL 部署 AzureMysqlDeployment@1 |
运行脚本并更改 Azure Database for MySQL。 |
Azure 文件复制 AzureFileCopy@2 AzureFileCopy@1 |
将文件复制到 Azure Blob 或 VM(s)。 |
Azure Key Vault AzureKeyVault@1 |
下载 Azure Key Vault 机密。 |
Azure Monitor 警报 AzureMonitorAlerts@0 |
针对 Azure 资源的可用指标配置警报。 |
Azure PowerShell AzurePowerShell@3 AzurePowerShell@2 AzurePowerShell@1 |
在 Azure 环境中运行 PowerShell 脚本。 |
Azure 资源组部署 AzureResourceGroupDeployment@2 AzureResourceGroupDeployment@1 |
将 Azure 资源管理器 (ARM) 模板部署到资源组。 还可以启动、停止、删除、解除分配资源组中的所有虚拟机(VM)。 |
Azure SQL 数据库部署 SqlAzureDacpacDeployment@1 |
使用 DACPAC 部署 Azure SQL DB,或使用 SQLCMD 运行脚本。 |
Azure VM 规模集部署 AzureVmssDeployment@0 |
部署虚拟机规模集映像。 |
生成计算机映像 PackerBuild@0 |
使用 Packer 生成计算机映像。 此映像可用于 Azure 虚拟机规模集部署。 |
Chef Chef@1 |
通过编辑环境属性部署到 Chef 环境。 |
厨师刀 ChefKnife@1 |
在 chef 工作站上使用刀命令运行脚本。 |
通过 SSH 复制文件 CopyFilesOverSSH@0 |
通过 SSH 将文件或生成项目复制到远程计算机。 |
部署到 Kubernetes Kubernetes@1 Kubernetes@0 |
通过运行 kubectl 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
IIS Web 应用部署 IISWebAppDeploymentOnMachineGroup@0 |
使用 Web 部署部署网站或 Web 应用程序。 |
IIS Web 应用部署(已弃用) IISWebAppDeployment@1 |
由 MSDeploy 部署,创建/更新网站 & 应用池。 |
IIS Web 应用管理 IISWebAppManagementOnMachineGroup@0 |
创建或更新网站、Web 应用、虚拟目录和应用程序池。 |
调用 REST API InvokeRESTAPI@1 InvokeRESTAPI@0 |
将 REST API 作为管道的一部分调用。 |
手动干预 ManualIntervention@8 |
暂停部署并等待干预。 |
打包和部署 Helm 图表 HelmDeploy@0 |
通过运行 helm 命令在 Azure 容器服务中部署、配置和更新 Kubernetes 群集。 |
目标计算机上的 PowerShell PowerShellOnTargetMachines@3 PowerShellOnTargetMachines@2 PowerShellOnTargetMachines@1 |
在远程计算机上执行 PowerShell 脚本。 此版本的任务使用 PSSession 和 Invoke-Command 进行远程处理。 |
Service Fabric 应用程序部署 ServiceFabricDeploy@1 |
将 Service Fabric 应用程序部署到群集。 |
Service Fabric Compose 部署 ServiceFabricComposeDeploy@0 |
将 docker-compose 应用程序部署到 Service Fabric 群集。 |
SQL Server 数据库部署 SqlDacpacDeploymentOnMachineGroup@0 |
使用 DACPAC 或 SQL 脚本部署到 SQL Server 数据库。 |
SQL Server 数据库部署(已弃用) SqlServerDacpacDeployment@1 |
使用 DACPAC 部署 SQL Server 数据库。 |
SSH SSH@0 |
使用 SSH 在远程计算机上运行 shell 命令或脚本。 |
Windows 计算机文件复制 WindowsMachineFileCopy@2 WindowsMachineFileCopy@1 |
将文件复制到远程计算机(s)。 |
包任务
任务 | 描述 |
---|---|
CocoaPods CocoaPods@0 |
CocoaPods 是 Swift 和 Objective-C Cocoa 项目的依赖项管理器。 此任务运行“pod install”。 |
Conda Environment CondaEnvironment@1 CondaEnvironment@0 |
创建并激活 Conda 环境。 |
npm Npm@1 Npm@0 |
安装并发布 npm 包,或运行 npm 命令。 支持 npmjs.com 和经过身份验证的注册表,例如包管理。 |
npm 身份验证(任务运行程序) npmAuthenticate@0 |
如果还使用 npm 任务,请不要使用此任务。 为生成范围向存储库中的 .npmrc 文件提供 npm 凭据。 这使 npm 任务运行程序(如 Gulp 和 Grunt)能够使用专用注册表进行身份验证。 |
NuGet NuGetCommand@2 |
还原、打包或推送 NuGet 包,或运行 NuGet 命令。 支持 NuGet.org 和经过身份验证的源,如包管理和 MyGet。 使用 NuGet.exe 并适用于 .NET Framework 应用。 对于 .NET Core 和 .NET Standard 应用,请使用 .NET Core 任务。 |
NuGet 命令 NuGet@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此帐户/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 安装程序 NuGetInstaller@0 |
安装或还原缺少 NuGet 包。 |
NuGet Packager NuGetPackager@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此帐户/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 发布服务器 NuGetPublisher@0 |
已弃用:改用“NuGet”任务。 它适用于新的工具安装程序框架,因此无需等待任务更新即可轻松使用新版本的 NuGet,从而更好地支持此帐户/集合外部经过身份验证的源,并默认使用 NuGet 4。 |
NuGet 还原 NuGetRestore@1 |
还原 NuGet 包,以准备 Visual Studio 生成步骤。 |
PyPI 发布服务器 PyPIPublisher@0 |
使用 Twine 创建 sdist 或 wheel 并将其上传到与 PyPI 兼容的索引。 |
Python Pip 身份验证 PipAuthenticate@0 |
用于安装 Python 分发版的 pip 客户端的身份验证任务。 |
Python 孪生上传身份验证 TwineAuthenticate@0 |
使用孪生上传 Python 分发的身份验证。 请将“-r FeedName/EndpointName --config-file $(PYPIRC_PATH)”添加到孪生上传命令。 对于此组织中存在的源,请使用源名称作为存储库(-r),否则请使用服务连接中定义的终结点名称。 |
通用包 UniversalPackages@0 |
下载或发布通用包。 |
Xamarin 组件还原 XamarinComponentRestore@0 |
此任务已弃用。 请改用“NuGet”。 |
测试任务
任务 | 描述 |
---|---|
App Center 测试 AppCenterTest@1 |
使用 Visual Studio App Center 测试应用包。 |
Mobile Center 测试 VSMobileCenterTest@0 |
使用 Visual Studio Mobile Center 测试移动应用包。 |
发布代码覆盖率结果 PublishCodeCoverageResults@1 |
发布生成中的 Cobertura 或 JaCoCo 代码覆盖率结果。 |
发布测试结果 PublishTestResults@2 PublishTestResults@1 |
将测试结果发布到 Azure Pipelines/TFS。 |
运行功能测试 RunVisualStudioTestsusingTestAgent@1 |
已弃用:此任务及其配套任务(Visual Studio 测试代理部署)已弃用。 请改用“Visual Studio 测试”任务。 VSTest 任务可以运行单元和功能测试。 使用多代理作业设置对一个或多个代理运行测试。 使用“Visual Studio 测试平台”任务运行测试,而无需在代理上使用 Visual Studio。 VSTest 任务还带来了新功能,例如自动重新运行失败的测试。 |
Visual Studio 测试 VSTest@2 VSTest@1 |
生成、测试、打包或发布 .NET 应用程序,或运行自定义 .NET CLI 命令。 |
Visual Studio 测试代理部署 DeployVisualStudioTestAgent@2 DeployVisualStudioTestAgent@1 |
DeployVisualStudioTestAgent@2已弃用。 使用 Visual Studio 测试任务运行单元和功能测试。 |
Xamarin Test Cloud XamarinTestCloud@1 |
[已弃用]使用 Xamarin.UITest 使用 Xamarin 测试云测试移动应用 - 建议的任务现在是 AppCenterTest。 |
工具任务
任务 | 描述 |
---|---|
.NET Core SDK/运行时安装程序 DotNetCoreInstaller@0 |
从 Internet 或本地缓存获取特定版本的 .NET Core SDK,并将其添加到 PATH。 |
Go 工具安装程序 GoTool@0 |
在工具缓存中查找或下载特定版本的 Go,并将其添加到 PATH。 使用此选项可设置后续任务中使用的 Go 版本。 |
Helm 工具安装程序 HelmInstaller@0 |
在代理计算机上安装 Helm 和 Kubernetes。 |
Java 工具安装程序 JavaToolInstaller@0 |
从用户提供的 Azure Blob 或工具缓存中获取特定版本的 Java,并设置JAVA_HOME。 使用此任务可更改 Java 任务中使用的 Java 版本。 |
NuGet 工具安装程序 NuGetToolInstaller@0 |
从 Internet 或工具缓存获取特定版本的 NuGet 并将其添加到 PATH。 使用此任务可更改 NuGet 任务中使用的 NuGet 版本。 |
使用 Node.js 生态系统 NodeTool@0 |
查找或下载和缓存节点的指定版本规格并将其添加到 PATH。 |
使用 Python 版本 UsePythonVersion@0 |
从工具缓存中检索指定的 Python 版本。 (可选)将其添加到 PATH。 |
使用 Ruby 版本 UseRubyVersion@0 |
从工具缓存中检索指定的 Ruby 版本。 (可选)将其添加到 PATH。 |
Visual Studio 测试平台安装程序 VisualStudioTestPlatformInstaller@1 |
从 nuget.org 或工具缓存获取测试平台。 满足“vstest”需求,可用于运行测试并使用 Visual Studio 测试任务收集诊断数据。 |
实用工具任务
任务 | 描述 |
---|---|
存档文件 ArchiveFiles@2 ArchiveFiles@1 |
使用压缩格式(如.7z、.rar、.tar.gz和 .zip)存档文件。 |
Azure 网络负载均衡器 AzureNLBManagement@1 |
将 Azure 虚拟机的网络接口连接到负载均衡器的后端地址池/断开连接。 |
Bash Bash@3 |
在 macOS、Linux 或 Windows 上运行 Bash 脚本。 |
Batch 脚本 BatchScript@1 |
运行 Windows cmd 或 bat 脚本,并选择性地允许它更改环境。 |
命令行 CmdLine@2 CmdLine@1 |
在 Linux 和 macOS 上使用 Bash 运行命令行脚本,并在 Windows 上运行 cmd.exe。 |
复制和发布生成项目 CopyPublishBuildArtifacts@1 |
CopyPublishBuildArtifacts@1已弃用。 请改用“复制文件”任务和“发布生成项目”任务。 |
复制文件 CopyFiles@2 CopyFiles@1 |
使用匹配模式将源文件从源文件夹复制到目标文件夹(匹配模式仅匹配文件路径,而不是文件夹路径)。 |
cURL 上传文件 cURLUploader@2 cURLUploader@1 |
使用 cURL 上传文件。 |
解密文件(OpenSSL) DecryptFile@1 |
使用 OpenSSL 进行文件解密的精简实用工具任务。 |
延迟 Delay@1 |
将工作流的进一步执行延迟为固定时间。 |
删除文件 DeleteFiles@1 |
删除文件或文件夹。 (迷你模式将仅匹配文件路径,而不是文件夹路径)。 |
下载生成项目 DownloadBuildArtifacts@0 |
下载生成项目。 |
下载文件共享项目 DownloadFileshareArtifacts@1 |
从文件共享下载项目,例如 \share\drop。 |
下载包 DownloadPackage@0 |
从 Azure Artifacts 或 TFS 中的包管理源下载包。 |
需要包管理扩展。 | |
下载管道项目 DownloadPipelineArtifact@0 |
下载管道项目。 |
下载安全文件 DownloadSecureFile@1 |
将安全文件下载到生成或发布代理上的临时位置。 |
提取文件 ExtractFiles@1 |
提取各种存档和压缩文件,例如.7z、.rar、.tar.gz和 .zip。 |
FTP 上传 FtpUpload@1 |
FTP 上传。 |
安装 Apple 证书 InstallAppleCertificate@2 InstallAppleCertificate@1 InstallAppleCertificate@0 |
安装在 macOS 代理上生成的 Apple 证书。 |
安装 Apple 预配配置文件 InstallAppleProvisioningProfile@1 InstallAppleProvisioningProfile@0 |
安装在 macOS 代理上构建所需的 Apple 预配配置文件。 |
安装 SSH 密钥 InstallSSHKey@0 |
在生成或发布之前安装 SSH 密钥。 |
调用 Azure 函数 AzureFunction@1 AzureFunction@0 |
将 Azure 函数作为管道的一部分调用。 |
Jenkins 下载项目 JenkinsDownloadArtifacts@1 |
下载 Jenkins 作业生成的项目。 |
PowerShell PowerShell@2 PowerShell@1 |
在 Windows、macOS 或 Linux 上运行 PowerShell 脚本。 |
发布生成项目 PublishBuildArtifacts@1 |
将生成项目发布到 Azure Pipelines/TFS 或文件共享。 |
发布管道项目 PublishPipelineArtifact@0 |
发布管道项目。 |
发布到 Azure 服务总线 PublishToAzureServiceBus@1 PublishToAzureServiceBus@0 |
使用服务连接(无需代理)将消息发送到 Azure 服务总线。 |
Python 脚本 PythonScript@0 |
运行 Python 脚本。 |
查询 Azure Monitor 警报 AzureMonitor@0 |
观察为活动警报配置的 Azure Monitor 规则。 |
查询工作项 queryWorkItems@0 |
执行工作项查询并检查返回的项数。 |
Service Fabric PowerShell ServiceFabricPowerShell@1 |
在 Azure Service Fabric 群集连接的上下文中运行 PowerShell 脚本。 |
Shell 脚本 ShellScript@2 |
使用 bash 运行 shell 脚本。 |
更新 Service Fabric 应用版本 ServiceFabricUpdateAppVersions@1 |
自动更新打包的 Service Fabric 应用程序的版本。 |
更新 Service Fabric 清单 ServiceFabricUpdateManifests@2 |
自动更新打包的 Service Fabric 应用程序中应用程序和服务清单的某些部分。 |
Xamarin 许可证 XamarinLicense@1 |
[已弃用]升级到 Xamarin 的免费版本:https://store.xamarin.com。 |
开源
这些任务是 GitHub上的开源
常见问题
什么是任务输入别名?
任务输入由 label
、name
标识,可以包含一个或多个可选 aliases
。 以下示例摘录了 源代码已知主机条目InstallSSHKey@0 任务的输入。
{
"name": "hostName",
"aliases": [
"knownHostsEntry"
],
"label": "Known Hosts Entry"
...
}
在 2019 年引入 YAML 管道之前,使用基于 UI 的管道编辑器创建和编辑管道,并且管道作者仅使用 label
来引用任务输入。
2019 年引入 YAML 管道时,使用 YAML 的管道作者开始使用任务输入 name
来引用任务输入。 在某些情况下,任务输入名称没有描述性,因此添加了 aliases
来为任务输入提供其他描述性名称。
例如,InstallSSHKey@0
任务具有一个名为 的 hostName
输入,该输入需要 known_hosts 文件中的条目。 经典管道设计器中的“已知主机条目” 标签明确,但在 YAML 管道中使用 hostName
名称时并不明确。 引入了任务输入别名,以允许任务作者为其以前创作的任务提供解码名称,对于 InstallSSHKey@0
任务,knownHostsEntry
别名已添加到,同时保留原始 hostName
名称,以便与使用该名称的现有管道兼容。
任务输入 aliases
中的任何项都可与 YAML 管道中的 name
互换。 以下两个 YAML 代码片段在功能上是相同的,第一个示例使用 knownHostsEntry
别名,第二个示例使用 hostName
。
- task: InstallSSHKey@0
inputs:
# Using knownHostsEntry alias
knownHostsEntry: 'sample known hosts entry line'
# Remainder of task inputs omitted
- task: InstallSSHKey@0
inputs:
# Using hostName name
hostName: 'sample known hosts entry line'
# Remainder of task inputs omitted
从 Azure DevOps Server 2019.1 开始,YAML 管道编辑器已引入,它提供了 intellisense 类型功能。
YAML 管道编辑器使用 Yamlschema - 获取 REST API 来检索编辑器中用于验证的架构。 如果任务输入具有别名,架构会将别名提升为任务输入的主 YAML 名称,并且该别名由 intellisense 建议。
以下示例是 YAML 架构中 任务的 InstallSSHKey@0
任务输入,knownHostsEntry
列在 hostName
集合中的名称位置和 aliases
中。
"properties": {
"knownHostsEntry": {
"type": "string",
"description": "Known Hosts Entry",
"ignoreCase": "key",
"aliases": [
"hostName"
]
},
由于 YAML 管道编辑器中的 intellisense 显示 knownHostsEntry
,并且由 任务 助手生成的 YAML 在生成的 YAML 中使用 knownHostsEntry
,因此任务引用会将任务源代码中的 alias
显示为任务输入的 YAML 名称。 如果任务有多个别名(有几个别名有两个别名),则第一个别名用作名称。
为什么任务引用发生了更改?
Azure Pipelines 任务参考文档已移至其当前位置,以支持以下改进。
- 任务文章是使用 Azure Pipelines 任务开源存储库的任务源代码生成的。
- 任务输入名称和别名是从任务源生成的,因此它们始终是最新的。
- YAML 语法块是从任务源生成的,因此它们是最新的。
- 支持社区贡献与集成的用户内容,例如增强的任务输入说明、备注和示例。
- 为所有受支持的 Azure DevOps 版本提供任务覆盖范围。
- 更新了每个冲刺,以涵盖最新更新。
若要参与,请参阅 参与任务内容。
在哪里可以找到如何逐步构建应用?
是否可以添加自己的生成任务?
是:添加生成任务
什么是安装程序任务?
若要了解有关工具安装程序任务的详细信息,请参阅 工具安装程序。