在 Travis 上,识别由推送和 PR 合并到其中触发的分支上的构建的最简单方法是什么?



目前,我有一种情况,我希望我的travis构建在提交直接推送到开发分支或PR合并到开发分支时触发部署。到目前为止,我还无法使用 Travis 的环境变量来实现这一点。

到目前为止,我已经尝试了 2 件事

  1. 使用部署作业。这样做的问题是,当 PR 合并到开发中时,它不会触发,因为生成的构建是部署不适用于Pull Request Build

  2. after_success 作业与条件一起使用,该条件检查它是否为 PR 以及 PR 的基本分支是否为开发

if [ "$TRAVIS_PULL_REQUEST" ] && [ "$TRAVIS_BRANCH" = "AC-6810" ]; then
    # do deploy
fi;

这不是一个计划,因为即使是对开发的开放公关也会导致这种情况成立。仅当 PR 合并时,它才应为真。

这里欢迎任何帮助,给出的环境变量似乎没有给我检查这一点的能力。

事实证明,我用来确定何时进行部署的条件不正确,它应该是

if [ "$TRAVIS_PULL_REQUEST" = "false" ] && [ "$TRAVIS_BRANCH" = "AC-6810" ]; then
    # do deploy
fi;
这样,我们将# do deploy何时将提交推送到 AC-6810

或何时将 PR 合并到 AC-6810

最新更新