Пытаюсь прикрутить Ansible к проекту, чтобы упростить деплой.
Для обновления кода на VPS надо выполнить следующие действия:
- ./stop.sh
- git pull origin master
- ./eslint.sh
- ./build.sh
- ./builddocs.sh
- ./updatekey.sh
- ./start.sh
Ну и само собой если какой-то скрипт завершился неудачно, например eslint не прошел, то прерываем процесс и уведомляем меня )))
Пока вот что есть:
---
- hosts: production
tasks:
- name: Stop app
shell: ./stop.sh
- name: Start git pull
git: repo=git@bitbucket.org:repo/projectname.git version=master dest=/home/user/projects/projectname
sudo: yes
sudo_user: user
notify:
- Start eslint
handlers:
- name: Start eslint
shell: ./eslint.sh
notify:
- Start build
- name: Start build
shell: ./build.sh
notify:
- Start builddocs
- name: Start builddocs
shell: ./builddocs.sh
notify:
- Start updatekey
- name: Start updatekey
shell: ./updatekey.sh
notify:
- Start app
- name: Start app
shell: ./start.sh
Не запускал, ибо боюсь )))
Все правильно или что-то надо добавить?
А если дадите ссылку на описание структуры файла playbook на русском - буду признателен очень сильно.