Sander
поэтому под каждый проект я не делаю плейбук
Igor
Симлинки на плейбуки?)
Sander
я просто пишу переменные в group_vars
```
platform__phpfpm: "wordpress"
platform__webserver: "nginx"
platform__database: "mariadb"
```
Igor
В разных окружениях?
Igor
Ааа
Sander
если platform__phpfpm: false, то он контейнер не поставит
Sander
я не уверен что я все хорошо делаю
Sander
но вариант, городить под каждый проект свой плейбук все токи не лучшая идея, они одинаковые будут (практически)
Igor
Мне кажется надо использовать hosts_vars и group_vars и роли
Igor
И запускать плейбук с ивентори из нужного окружения
Sander
у меня получается все в group_vars, но наверное там лучше хранить что-то общее
Sander
на host_vars, хранить если что-то индивидуальное будет
Sander
и roles тоже использую
Sander
куда без них
Igor
У меня одни плейбуки и разные переменные в host_vars/group_vars
Sander
посмотреть бы
Pavel
Sander
я просто долго сидел, и у меня все равно вышло так, что я параметров больше делал и логику небольшую
Pavel
так параметры только те что разные
Pavel
а 100500 ролей, как по мне еще хуже
Sander
у кого-нибудь есть хороший пример ansible, с мультисайтовостью
Sander
🤔
Pavel
Sander
можешь показать
Sander
а я свой покажу
Sander
😊
Pavel
щас меряться начнем ))
Igor
Как по мне, разбивка задач по ролям офигенна
Pavel
Pavel
скомбинировал роли в плкейбуке - получил что угодно на сервере
Igor
для меня тоже
Igor
я в main.yml указываю роли
Igor
а по inventories/enviromets/hosts решаю где выполнять и с какими переменными
Igor
пароли ip и прочее
Igor
*inventories/enviroments/{hosts,group_vars/group,hosts_vars/host}
Igor
есть каждая роль - это сервис
Igor
а в /roles/name/tasks/main.yml указывается hosts: группа хостов
Igor
на которой роль выполнять
Igor
из inventory файла
Igor
и все
Igor
при выполнении плейбука каждая роль применяется на нужную группу хостов, каждая группа описана в нужном hosts в нужном iventories со своими переменными
Igor
т.е. делаем ansible-playbook -i inentories/enviroments/hosts main.yml
Igor
Вжух - и у тебя есть готовое окружение ))
Igor
Почему вы против этого не понятно
Igor
против ролей т.е.
Igor
100500
Pavel
Pavel
ну 10, ну 20....
Pavel
у меня еще и 10 нет
Pavel
Igor
Igor
пример из жизни можно
Pavel
например nginx-балансировщик и nginx-прокси можно сделать 2 роли, а можно 1, параметризовав в хост-варс
и в зависмости что написано в перемнных накатит нужное
Pavel
я делаю 1 потому что nginx - сервис, а не прокси-сервис и балансировщик-сервис
Igor
ну конечно надо юзать переменные к группе хостов и групп
Igor
не понятно при чём тут роли
Igor
роли используют те переменные, которые есть в группе хостов или в хостах определённого окружения
Igor
не понятна проблематика
Igor
Igor
и поясните проблематику
Pavel
ну мне не нравится плодить роли на 90% одинаковые, только копи-пастить.... (те 2 роль nginx)
Igor
Igor
при выполнении прейбука укажите нужный файл хостов в нужном окружении
Igor
откуда из окружения подцепятся правильные переменные
Pavel
Igor
тогда не понимаю почему надо плодить 2 роли на nginx
Pavel
так я и говорию, что не надо 100500 ролей
Igor
если все переменные описываются в окружениях и их {host,group}_ars
Igor
ааааа
Sander
😪
Pavel
надо параметризовать их в переменных
Pavel
Igor
я интерпретировал как необходимость писать 100500 ролей, но это хуже, чем их не писать
Pavel
👏 разобрались
Igor
👍