TravisCI: Запустите after_success на определенной ветке
Я хотел бы знать, как запустить after_success
script только для определенной ветки.
Я использую пользовательский script для развертывания приложения после проходов сборки. Я бы просто хотел запустить это, когда на ветке 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
Любые предложения?
Ответы
Ответ 1
Я решил это, написав простой script, используя переменную среды TRAVIS_BRANCH
и выполнил script в after_success
.travis.yml
after_success:
- ./deploy.sh
deploy.sh
#!/bin/bash
if [ "$TRAVIS_BRANCH" == "prod" ]; then
// do the deploy
fi
Ответ 2
Вы также можете сделать это, используя script поставщик на этапе развертывания вашей сборки. Этот подход немного чист, но позволяет только одну команду, в отличие от after_success
.
deploy:
provider: script
script: # some deployment script
on:
branch: prod