如何根据条件取消/不执行Bitbucket Pipelines构建?

时间:2018-11-05 12:46:19

标签: bash yaml bitbucket bitbucket-pipelines

我想更新yml文件以忽略某些用户的提交。这可能吗?有没有类似的解决方案?理想情况下,我什至根本不想触发构建。

yml文件的伪代码示例(忽略语法,我只是在展示我想做的事情)

user: git show -s --format='%ae' $BITBUCKET_COMMIT
unwantedUser: "person@mail.com"

pipelines:
  tags:
    '**' && user != unwantedUser: # any tags by wanted users
      - step:
          script:
            (...)

实现该目标的实际语法是什么?

2 个答案:

答案 0 :(得分:0)

我最终在提交消息中包含了[skip ci]字符串,以避免触发管道。

来自documentation

  

我可以提交而不触发管道吗?是。如果你不想   在通常会触发提交的提交上运行管道,您可以   在您提交的提交消息中的任意位置包括[skip ci]或[ci skip]   HEAD提交。任何在提交中包含[skip ci]或[ci skip]的提交   消息会被管道忽略。

答案 1 :(得分:0)

或者,如果您想手动触发管道,则可以使用“自定义”标签。

documentation

pipelines:
  custom: # Pipelines that can only be triggered manually
    sonar:
      - step:
          script:
            - echo "Manual triggers for Sonar are awesome!"

自定义管道不会在提交分支时自动运行。您可以使用提交视图页面或分支视图页面运行管道。