manefesto
точно кто-то рекламу канала запустил
manefesto
а есть best practices по названию ролей и блейбуков ?
manefesto
я использую что то типа {{action}}_{{type}}_{{group}}
то есть update_db_production
manefesto
или deploy_test
manefesto
Role Naming Conventions
Role names - Terse, one word if possible, use underscores if necessary.
Role task names - Terse, descriptive, spaces are OK and should be prefixed with the role name.
Me
Господа
Подскажите все таки как импотироваить роль со всеми переменными?
Ievgen
А короче в шоке, пора открывать issue "да вы ебанулись 2"
Ievgen
Ievgen
Ievgen
ну вот как так?
Ievgen
2 абсолютно разных модуля, с абсолютно разным назначением и параметрами
Ievgen
при этом в changelog ни слова об этом
Nklya
Ievgen
не, отбой, походу с докуемнтацией косякнули
Mike
ребят, а можно как-то без delegate_to в модуле syncronize задать пусть на ремоут хосте? типа
synchronize:
mode: pull
src: "ip_host:/tmp/test"
dest: "tmp/test"
просто если так делаю, то естественно он не находить сурс, а делать delegate_to на сорс хост не вариант, потому что впн и назад он не пушит данные... вариант только юзать shell: rsync?
manefesto
Укажи через rsync
manefesto
Src: rsync://
manefesto
Я так делаю
manefesto
Говорят можно даже через ssh прикрутить
Mike
через rsync:// тоже пробовал возвращает
nrsync: did not see server greeting\nrsync error: error starting client-server protocol (code 5)
Mike
я ж так понял тогда надо rsync демон сам поднять?
manefesto
Поставь значит rsync ну или включи его
manefesto
Какая ос?
Mike
центос 7
Dorian
И вообще хранить переменные в инвентори это так себе идея ?
Sergey
нормальная идея
Sergey
в инвентори живёт всё то, чем конкретный инвентори отличается от другого такого же
manefesto
центос 7
ну можешь тогда поверх ssh, что-то типа rsync -e "ssh"
manefesto
но, правильнее поставить туда rsync
Dorian
manefesto
а причем переменные и роли ?
Nklya
Sergey
manefesto
это как ?
manefesto
для какого кейса такой изврат нужен ?
Sergey
Dorian
Например выполняется роль www, нужно вызвать выполнение роли haproxy на этих же хостах.
Это решается import_role.
Dorian
Кейс простой, переиспользование плейбуков
Vadim
мы часто юзаем import_role и УМВР с переменными
Vadim
часть в инвентори, часть в group_vars
Sergey
manefesto
children я так понимаю
Dorian
manefesto
- host: webservers[all]
- roles:
- http
- hosts: webservers[balancer]
- roles:
- haproxy
Sergey
manefesto
беспрактис гласит что нужно хосты по группа разбивать
manefesto
лимит не то
manefesto
и не торт
manefesto
- hosts: bd
roles:
- backup_db
- hosts: master
roles:
- update_master
- hosts: slaves
roles:
- update_slave
manefesto
я так делаю
Dorian
У меня так же
manefesto
тогда нахер лимиты, просто переосмыслить и сделать правильно
manefesto
может я не прав
Dorian
manefesto
ты в один плейбук всё пихаешь ?
Dorian
manefesto
тебя сейчас тапками закидают
Dorian
В смысле в один ?
manefesto
тэги как бы моветон
manefesto
почитай про блоки
Dorian
Блоки есть
Dorian
Использую их активно
Dorian
Тэги нужны для обновления конфигурации.
Nklya
нано))
manefesto
я например в плейбуке использую несколько ролей, без тегов
то есть плейбук update_prod у меня вызывает две роли
- backup_db
- update_prod
первая бэкапить БД
вторая бэкапит исходники и собирает мой софт
тэги вообще не использую
manefesto
типа лучше иметь 10 плейбуков чем 10 ключей у одного плейбука
manefesto
я всё это дело вкорячил в awx и отдал на откуп прогерам
Dorian
А как дизастер рековери?
manefesto
что это такое, слова низвестные
Dorian
Будешь 10 плейбуков на проект запускать ?
manefesto
зачем ?
Dorian
Это когда все наебнулось
manefesto
ну наебнулось, но через теги импортить роли меня как то не радует совсем
manefesto
создам роль "restore_from_hell"
Dorian
Я стараюсь придерживаться универсальности в плейбуках. Чтобы можно были и конфигурить и деплоить
manefesto
jq