TravisCI:运行 after_success 在特定分支上
TravisCI: Run after_success on a specific branch
我想知道如何为特定分支运行编写after_success
脚本。
我正在使用自定义脚本在构建通过后部署应用程序。我只想在 prod
分支上 运行 这个。
到目前为止,我尝试了以下方法:
#1
after_success:
- # some deployment script
on: prod
#2
branches:
only:
- prod
after_success:
- # some deployment script
#3
after_success:
branches:
only:
- prod
- # some deployment script
有什么建议吗?
我通过使用 TRAVIS_BRANCH
environment variable 编写一个简单的脚本解决了这个问题,并在 after_success
中执行了脚本
.travis.yml
after_success:
- ./deploy.sh
deploy.sh
#!/bin/bash
if [ "$TRAVIS_BRANCH" == "prod" ]; then
// do the deploy
fi
您也可以在构建的部署阶段使用 script provider 来完成此操作。与 after_success
.
不同,这种方法更简洁但只允许一个命令
deploy:
provider: script
script: # some deployment script
on:
branch: prod
我想知道如何为特定分支运行编写after_success
脚本。
我正在使用自定义脚本在构建通过后部署应用程序。我只想在 prod
分支上 运行 这个。
到目前为止,我尝试了以下方法:
#1
after_success:
- # some deployment script
on: prod
#2
branches:
only:
- prod
after_success:
- # some deployment script
#3
after_success:
branches:
only:
- prod
- # some deployment script
有什么建议吗?
我通过使用 TRAVIS_BRANCH
environment variable 编写一个简单的脚本解决了这个问题,并在 after_success
.travis.yml
after_success:
- ./deploy.sh
deploy.sh
#!/bin/bash
if [ "$TRAVIS_BRANCH" == "prod" ]; then
// do the deploy
fi
您也可以在构建的部署阶段使用 script provider 来完成此操作。与 after_success
.
deploy:
provider: script
script: # some deployment script
on:
branch: prod