You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何禁用及重新启用Azure WebApp的Azure Pipeline自动部署功能

对应需求的实现方案

1. 使用Azure DevOps CLI 启停流水线

首先安装Azure DevOps扩展:
az extension add --name azure-devops
先配置默认的组织和项目参数,避免每次执行命令重复传入:
az devops configure --defaults organization=https://dev.azure.com/你的组织名 project=你的项目名

  • 禁用指定流水线命令:
    az pipelines update --id 你的流水线ID --enabled false
  • 重新启用流水线命令:
    az pipelines update --id 你的流水线ID --enabled true
    如果你不知道对应流水线的ID,可执行az pipelines list查询所有流水线的ID、名称等信息。
    你可以把上述两个命令配置到定时任务(比如Azure Automation Runbook、本地定时脚本等)中,即可实现特定时间段自动禁用、恢复流水线部署。

2. 内置时间窗口判断(无需启停整个流水线)

如果你不想直接停用整个流水线,仅需要跳过特定时间段的部署步骤,可以直接在流水线YAML中增加时间判断逻辑,示例如下:

# 定义变量判断当前是否处于允许部署的时间段,示例为排除每日1:00-3:00的时间段
variables:
  allowDeploy: ${{ not(and(greaterOrEqual(format('{0:HH}', pipeline.startTime), '01'), lessOrEqual(format('{0:HH}', pipeline.startTime), '03'))) }}

# 在部署到Azure WebApp的任务上添加条件判断
- task: AzureWebApp@1
  inputs:
    azureSubscription: '你的服务连接名'
    appName: '你的WebApp名称'
    package: '$(System.DefaultWorkingDirectory)/**/*.zip'
  condition: eq(variables.allowDeploy, true)

配置完成后,即使流水线在禁止时间段被触发,部署步骤也会自动跳过,不会影响你的运维操作。

3. 可视化配置计划触发器排除时段

如果你的流水线使用计划触发器自动触发部署,可以直接在流水线的编辑界面的触发器设置中,可视化添加排除的时间段,无需编写代码或执行命令。

内容的提问来源于stack exchange,提问作者Akash paul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 05:57:03