bogdan_uman
@bogdan_uman
шлЫмазл неукЪ-поцЪ

Деплой в зависимости от ветки?

Здравствуйте. Подскажите пожалуйста. У меня сейчас настроен в Travis деплой по ssh с ветки Master, все работает отлично. Но вот возникла потребность, уже сначала деплоить на сервер для тестов, вот например при коммите в ветки Development что бы деплоило на один сервер, при коммите в ветки Master на другой сервер.

Вот к примеру у меня сейчас такой файл.

.travis.yml

language: node_js

env:
  SSH_USER: root
  DEPLOY_PATH: /root/coffee/coffee
  SERVICE_NAME: coffee

sudo: false

node_js:
  - node

git:
  depth: false

branches:
  only:
    - master

cache:
  directories:
    - node_modules

before_install:
  - openssl aes-256-cbc -K $encrypted_<key>_key -iv $encrypted_<key>_iv -in ./.travis/id_rsa.enc -out ./.travis/id_rsa -d
  - eval "$(ssh-agent -s)"
  - chmod 600 ./.travis/id_rsa
  - echo -e "Host $SSH_HOST\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
  - ssh-keyscan $SSH_HOST >> ~/.ssh/known_hosts
  - ssh-add ./.travis/id_rsa

install:
  - npm install

script:
  - echo "npm test temporarily disabled"
  - npm run build

deploy:
  provider: script
  skip_cleanup: true
  script: bash -c '
    rsync --recursive --quiet --delete-after dist/* $SSH_USER@$SSH_HOST:$DEPLOY_PATH
    && ssh root@$SSH_HOST "systemctl restart $SERVICE_NAME"'
  on:
    branch: master
  • Вопрос задан
  • 49 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы