【问题标题】:"Run this job" when sourceFolder contains a folder in Azure Release Pipeline当 sourceFolder 包含 Azure 发布管道中的文件夹时“运行此作业”
【发布时间】:2020-11-11 04:53:42
【问题描述】:

我有 Azure 管道,当 sourceFolder 不包含特定文件夹时,我需要停止管道。

例如:如果我的 sourceFolder 包含 /home/vsts/work/1/s/projectName/src/app/pos - 管道应该运行

如果我的 sourceFolder 包含 /home/vsts/work/1/s/projectName/src/app/ecomm - 管道不应运行

如何在 Azure 管道需求/自定义条件中提及条件?

【问题讨论】:

  • 无法获取您的最新信息,该解决方法对您有帮助吗?如果有帮助,您可以Accept it as an Answer,这样它可以帮助遇到同样问题的其他社区成员,我们可以存档这个帖子。或者,如果您有任何疑虑,请随时在此处分享。谢谢。

标签: azure azure-devops azure-pipelines-release-pipeline azure-pipelines-release-task


【解决方案1】:

作为一种解决方法,您可以先创建一个值为False 的自定义变量(RunPipeline)。然后添加一个新的代理作业,在这个作业中添加一个powershell任务,在powershell任务中,通过脚本遍历源文件夹,如果有文件夹名为pos,将variable的值改为True

示例内联脚本:

Get-ChildItem –Path "$(System.DefaultWorkingDirectory)" |

Foreach-Object {​  
  if($_.Name --eq 'pos'){​ Write-Host "##vso[task.setvariable variable=runPipeline;isOutput=true]True" }​
}​

然后在下一个作业的Additional options中添加自定义条件,例如:eq(variables['RunPipeline'], 'True')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-20
    • 1970-01-01
    • 2023-03-15
    • 2021-10-16
    • 1970-01-01
    • 2021-06-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多