Vladimir
ваши рассказы о том что в какой-нибудь незначительной версии всё ломается явно не безосновательны :(
Aleksey
ну хз у меня за 2 года плотной дружбы и года среднеплотной дружбы с ансиблом, именно ансибл не был виноват ниразу.
Aleksey
при этом у меня довольно много ролей.
Serge
Aleksey
я с учетом родных модулей
button
+1, единственный вред за все время чужие роли и отсутствие тестов в них
Dmitry
а ктото ваще юзает из гелакси роли?
Dmitry
вот прямо as is
Tadeusz
/me ваще никогда гелекси не юзал)
Dmitry
я сколько раз пробовал - ни разу не заводилось с первого тычка
Serge
@versusbassz
Serge
Dmitry
тут больше охуеваешь от количества пр
Serge
я с учетом родных модулей
видимо, ты не пользовался aws-овскими.
может у тебя еще и на Python 3 Ansible нормально работает?
Serge
Dmitry
Dmitry
вполне себе работал, пока я в докер не полез
Dmitry
Dmitry
оно более или менее стабильно
Serge
Dmitry
все таки, кмк, лчше разделять провижн обьектов инфры и пост-сетап
Dmitry
Serge
Dmitry
а, вы прямо по уши в амазоне
Dmitry
ясно
Serge
а, вы прямо по уши в амазоне
не обязательно. всё относительно не зависит от амазона. переделать формирование задач на другой кластер и полетит на другом
Aleksey
нет у меня питон 2 и я не пользовался авсовскими ролями
Aleksey
вот после всей этой возни с galaxy мне понятно как приезжают роли, но не понятно как приезжает library, lookup_plugins и в особенности файл с плейбуком
Alex
никак? оно же для ролей онли не?
Aleksey
ну вот идеологически непонятно
Aleksey
либо процесс сломан либо я что то не знаю
Nklya
куда кто и зачем должен приезжать?
Aleksey
ну логика такая. я хочу задеплоить вот эту штуку https://github.com/geerlingguy/ansible-role-gitlab
Aleksey
роль у меня есть. теперь мне надо плейбук и инвентори.
Aleksey
откуда они возьмутся :) ?
Denis
Возьми и напиши. ;)
Aleksey
не проблема в написать.
Nklya
У тебя есть инфраструктурная репа. Например такая https://github.com/cndies/ansible-repo-example
В ней хранятся енвайроменты, плейбуки и проч.
Роль ты прописываешь в requirements и тащить их при выполнении
Aleksey
проблема в том что если оно уже есть и написано как по мнению авторов ансибла оно материализуется ?
Aleksey
Nklya
Ну и в чем тогда вопрос?
Aleksey
how to use отвечает на вопрос именно таким образом как я боялся
Aleksey
за ссылку спасибо да
Nklya
При этом роли можно не хранить в самой репе, а в requirements привязывать к тегам, хешам или веткам.
Получается что-то типа berksfile шефовского
Aleksey
ну тоесть процесс в сумме выгляит как то так
* есть репа с плейбуком и всякими доп питонячими модулями
* есть доп репы
* клонируется первая репа
* пускается ansible-galaxy install —force -r req.yml
всё. теперь у нас есть плейбук пригодный для запуска.
Nklya
примерно так.
Nklya
Если не нужно версионировать роли, то можно все роли впихнуть в инфраструктурную репу и не использовать галакси
Aleksey
нет. хочется что то придумать с инфраструктурной репой.
Aleksey
хочется что бы её не было :)
Nklya
Ну тогда генерь Ее налету из шаблонов если очень хочется
Aleksey
нет. хочется что бы она была. но н ехочется придумывать ее скачивание.
Aleksey
и вообще странно что либрари и лукапы не привязаны к роли а привязаны к плейбуку
Aleksey
а не. там тоже можно
Nklya
то, что относится к роли, должно быть в роли
Serge
хочется что бы её не было :)
так не будет. никто не знает как запускать твои роли. даже не важно роли это или что. есть много generic кода, но только в твоей репе он получает частное применение к твоей инфраструктуре. чтобы было "infrastructure as a code", этот код должен где-то лежать. если его нет, нет и твоей инфраструктуры.
Aleksey
Это всё понятно. Но я не хочу решать вопрос доставки инфраструктурной репы на хост с ролями. Я хочу его делегировать
Aleksey
Галакси в этом случае решает вопрос с доставкой ролей. Из чо попало мест
Aleksey
Но не решает вопрос доставки самого плейбука и обвязки
Serge
Но не решает вопрос доставки самого плейбука и обвязки
ну, для этого есть git и сетап твоей репы, типа с galaxy. собственно с terraform точно так же. т.е. приносишь код своей инфраструктуры, сетапишь нужное окружение по зависимостям и работаешь.
я правда стал всё собирать в один контейнер теперь и запускаю докером вместе с зависимостями уже и нужными версиями всего
Aleksey
Serge
Serge
можно сделать git archive и залить архив
Aleksey
Тгз в директории сорс
Serge
Aleksey
И докер нет возможности
Aleksey
Все мои страдания сейчас связаны с тем что у питона нет библиотеки которая бы добывала файлы
Aleksey
Serge
Serge
Нет. Можно флешку
собери все зависимости нужные в образ любимой оси и сделай загрузочную флешку
Aleksey
Aleksey
Dennis
Запускаю плейбук
ansible-playbook playbook.yml -l host1,host2,host3
Как обычно выполняется параллельно
Подскажите как запустить последовательно ?
ЗЫ понятно что можно запускать по очереди 😃
Aleksey
Но они говорят что мы консольная тулза и импорты из нас ансаппортед