步骤定义
步骤是构成作业的线性作序列。
steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # Steps are a linear sequence of operations that make up a job.
引用此定义的定义:管道、jobs.job、preDeployHook、deployHook、routeTrafficHook、postRouteTrafficHook、onFailureHook、onSuccessHook
列表类型
类型 | 说明 |
---|---|
steps.task | 运行任务。 |
steps.script | 在其他平台上使用 cmd.exe 和 Bash 运行脚本。 |
steps.powershell | 使用 Windows PowerShell(在 Windows 上)或 pwsh(Linux 和 macOS)运行脚本。 |
steps.pwsh | 在 Windows、macOS 和 Linux 上的 PowerShell Core 中运行脚本。 |
steps.bash | 在 Windows、macOS 和 Linux 上的 Bash 中运行脚本。 |
steps.checkout | 配置管道签出源代码的方式。 |
steps.download | 从作为管道资源关联的另一个 Azure Pipeline 下载与当前运行关联的项目。 |
steps.downloadBuild | 下载生成项目。 |
steps.getPackage | 从 Azure Artifacts 或 Azure DevOps Server 中的包管理源下载包。 |
steps.publish | 将文件或文件夹发布为其他作业和管道可以使用的管道项目。 |
steps.template | 在一个文件中定义一组步骤,并在另一个文件中多次使用它。 |
steps.reviewApp | 下载会在部署阶段提供程序下动态创建资源。 |
注解
每个步骤在其自己的进程中在代理上运行,并有权访问本地硬盘驱动器上的管道工作区。 此行为意味着不会在步骤之间保留环境变量,但文件系统更改是。
除了任务或步骤特定的属性之外,所有任务和步骤都支持一组通用属性,例如 enabled
和 env
。 有关配置这些属性的详细信息,请参阅 任务控制选项 和 任务环境变量。
例子
steps:
- script: echo This runs in the default shell on any machine
- bash: |
echo This multiline script always runs in Bash.
echo Even on Windows machines!
- pwsh: |
Write-Host "This multiline script always runs in PowerShell Core."
Write-Host "Even on non-Windows machines!"