用途:在修改 build/azure-pipelines/ 下的 Azure DevOps YAML 后,用 Azure CLI 在本地验证流水线改动,避免推送后等待 CI 的慢反馈。
前置条件:先检查 Azure CLI 是否安装(az --version),未安装时按平台安装(macOS 用 brew install azure-cli,Windows 用 winget install Microsoft.AzureCLI,Linux Debian/Ubuntu 用 curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash)。再确认 DevOps 扩展已装:az extension show --name azure-devops,未装则 az extension add --name azure-devops。随后认证并配置默认:az login、az devops configure --defaults organization=https://dev.azure.com/monacotools project=Monaco。
流水线信息:主构建流水线组织 monacotools,项目 Monaco,定义 ID 111;Insider 定时构建约 CET 7:00 与 19:00,使用同一定义但运行在 main 分支。
主要能力:排队构建 node .github/skills/azure-pipelines/azure-pipeline.ts queue,可用 --branch 指定分支、--parameter 传 KEY=value(值含空格时用它)、--parameters 传空格分隔参数、--dry-run 仅打印命令。查看状态用 status,支持 --build-id、--branch、--reason、--definition、--watch [秒]、--download-log、--download-artifact、--json。取消构建用 cancel --build-id <id>,支持 --dry-run。
产品构建参数包括 VSCODE_QUALITY、VSCODE_BUILD_TYPE、NPM_REGISTRY、CARGO_REGISTRY,以及 VSCODE_BUILD_WIN32、VSCODE_BUILD_LINUX、VSCODE_BUILD_MACOS 等各平台开关、VSCODE_BUILD_WEB、VSCODE_PUBLISH、VSCODE_RELEASE、VSCODE_STEP_ON_IT 等。
使用方式:改 YAML 后提交并推送,查状态并取消同分支不再需要的构建,再排队并用 --watch 或循环轮询(每 60 秒检查 --json 中 status 是否为 completed)直到完成;也可用示例参数组合减少发布/发布副作用做快速验证。
限制与排障:排队前建议取消同分支旧构建以释放代理;遇认证问题可 az logout 后重新 az login,扩展问题用 az extension add --name azure-devops --upgrade,限流时增大间隔。