目前,我有一种情况,我希望我的travis构建在提交直接推送到开发分支或PR合并到开发分支时触发部署。到目前为止,我还无法使用 Travis 的环境变量来实现这一点。
到目前为止,我已经尝试了 2 件事
-
使用部署作业。这样做的问题是,当 PR 合并到开发中时,它不会触发,因为生成的构建是部署不适用于
Pull Request Build
。 -
将
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