Travis CI:运行分支条件脚本

时间:2019-10-06 10:21:38

标签: yaml travis-ci

我正在.NET Core项目中工作。我有以下.travis.yml文件。效果很好,但是我想要一个https://dev.mysite.co.uk环境。

所有合并到develop分支中的内容,我都想以https://dev.mysite.co.uk结尾,但是任何合并到master分支中的内容,我都希望部署到https://www.mysite.co.uk

language: csharp
mono: none
sudo: required
dist: xenial
dotnet: 2.2
branches:
only:
    - master
    - develop
before_script:
- chmod -R a+x scripts
script:
- "./scripts/docker-publish-travis.sh"
after_success:
- "./scripts/after-success.sh"
notifications:
email:
    on_success: never
    on_failure: always

如何为上面的.travis.yml文件添加条件,以便如果分支为develop,则运行其他脚本?

开发分支

script:
    - "./scripts/docker-publish-travis-develop.sh"

主分支

script:
    - "./scripts/docker-publish-travis-master.sh"

我在文档中做了find this,但是我不确定如果不使用舞台的话该怎么办。

1 个答案:

答案 0 :(得分:1)

我相信您所引用的页面可能会使您不必要的复杂化。

您是否考虑过为两个(./scripts/docker-publish-travis.sh)调用相同的脚本,并且让该脚本根据$TRAVIS_BRANCH环境变量(或any other)执行其他操作?

if [[ "$TRAVIS_BRANCH" == "master" ]]; then
  # Publish production here
else
  # Publish develop here
fi