首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据cron语法调度具有两个不同参数的Azure DevpOs管道

根据cron语法调度具有两个不同参数的Azure DevpOs管道
EN

Stack Overflow用户
提问于 2021-03-13 07:31:28
回答 2查看 1.6K关注 0票数 1

我正在研究Azure DevOps管道,根据cron语法,在不同的日子安排一个具有两个不同参数的管道。

查看触发器、条件,调度触发器和管道触发器似乎都不允许传递参数值。以下是我的参数。通常,用户会使用自己选择的环境触发管道;这没有任何问题。

代码语言:javascript
复制
parameters:
  - name: environment
    displayName: Select the Suite to execute
    default: Test
    values:
    - Test
    - Dev
    - QA

如何在带有参数的计划中向管道添加参数?

代码语言:javascript
复制
schedules:
- cron: "0 1 10-15 * sat"
  displayName: 7PM CST - SAT
  branches:
    include:
    - feature
- cron: "0 3 25-31 * sat"
  displayName: 9PM CST - SAT
  branches:
    include:
    - feature

还检查了策略选项,该策略不能满足我的需要,因为如果我指定了作业/任务不会触发的这些条件,那么就不能有一个新的作业来按照下面的参数运行计划,因为用户需要根据环境选择来触发这个管道。

代码语言:javascript
复制
pool:
  vmImage: '**'
strategy:
  matrix:
    Run1:
      myvar: 12
    Run2:
      myvar: 14
    Run3:
      myvar: 16
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-17 16:04:09

我能够从API调用触发管道传递参数(浏览器、环境),如下所示

curl -L -X POST 'https://dev.azure.com/Org/project/_apis/build/builds?definitionId-**&api-version=6.1-preview.6‘-H’授权:$(ADO__AUTH)‘-H’内容-类型: application/json‘-数据

{“定义”:{

“身份证”:825

},“资源”:{

代码语言:javascript
复制
   "repositories": {

    "self": {

    "refName": "refs/heads/develop"

     }
   }
},

  "templateParameters": {

            "browser":"chrome",

            "environment": "Test"

}‘

票数 0
EN

Stack Overflow用户

发布于 2021-03-15 08:54:48

在管道运行期间,我们似乎没有自动和动态地更改参数值的方法。

作为解决办法,您可以尝试设置以前的作业,并在此作业中添加以下步骤:

(triggerInfo.scheduleName).执行API "",如果构建运行由计划好的触发器触发,则可以从API调用的响应中获得计划触发器

  • 的名称。在您的例子中,名称不是“7 7PM CST - SAT”,就是“9 7PM CST -”。

根据API调用返回的'scheduleName‘,可以使用日志记录命令"“设置输出变量,并将其设置为environment.。

然后,在依赖于前一个作业的后续作业中,

  1. 可以使用输出变量。有关更多细节,您可以看到"".
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66611080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档