Travis CI构建引发了两次

时间:2018-01-13 15:44:33

标签: git github travis-ci

我正在使用以下配置。

before_install:
  - "sudo apt-get update"
  - "sudo apt-get install --no-install-recommends texlive-full"
script:
  - pdflatex file.tex
deploy:
  provider: releases
  file:
    - file.pdf
  api_key:
    secure: "MY_API_KEY"
  skip_cleanup: true

当我git push origin master --tags时,它会在Travis中创建两个版本。一个用于主分支,另一个用于标记。 我想只在标签存在时构建和部署。所以我在第1行添加了条件如下:

if: tag IS present
before_install:
  - "sudo apt-get update"
  - "sudo apt-get install --no-install-recommends texlive-full"
script:
  - pdflatex file.tex
deploy:
  provider: releases
  file:
    - file.pdf
  api_key:
    secure: "MY_API_KEY"
  skip_cleanup: true

但是现在它构建正常,只有当标签存在但它没有部署时。给出以下警告:

Skipping a deployment with the releases provider because this branch is not permitted

1 个答案:

答案 0 :(得分:1)

您需要在tags: true部分on下添加deploy以触发标记部署。您也可以通过添加branch: <branch-name>来指定分支。

这是一个示例.travis.yml文件,用于触发master分支上的标记部署:

deploy:
  provider: ...
  api_key:  ...
  on:
    tags:   true
    branch: master

希望有所帮助!