如果是travis-ci中的主分支,如何运行命令?

Lua*_*eca 5 python sh fabric travis-ci

我有一个开源项目,我想部署代码只是代码在主分支,我已经尝试了很多方法,如:

- if [[ $TRAVIS_BRANCH == 'master' ]]; then fab deploy; fi
Run Code Online (Sandbox Code Playgroud)

或类似的东西:

BRANCH = "master"

def _get_local_branch():
    return local("git rev-parse --abbrev-ref HEAD", capture=True)

def deploy():
    local_branch = _get_local_branch()
    if local_branch == BRANCH:
        print green("Deploy succefully done!")

    print yellow("Deploy allowed just in the master branch.")
Run Code Online (Sandbox Code Playgroud)

但这不起作用,即使在其他民族的分支机构中,fab deploy命令也被触发了.

Dom*_*oin 7

我不确定为什么你的第一种方法不起作用,但我建议deploy:在.travis.yml文件中使用带有这样的自定义部署脚本的指令:

deploy:
  provider: script
  script: scripts/deploy.sh
  on:
    branch: master
Run Code Online (Sandbox Code Playgroud)

这是文档.

希望这可以帮助.