Sergey
где роль?
Timur
Не путаем роль с плейбуком, ага
inqfen
Он и ищет относительно плейбука
Stefan
блин че прям в папку таскс упасть?
inqfen
А ты как плейбук таск запускаешь
Stefan
блин...
Sergey
блин че прям в папку таскс упасть?
Ты же хочешь, чтобы у тебя в подкаталоге templates роли искало?
inqfen
блин че прям в папку таскс упасть?
Нет, читать доки ещё раз
Stefan
Нет, читать доки ещё раз
понял о чем речь
Timur
блин че прям в папку таскс упасть?
Если используешь роль, то просто вызываешь роль
Timur
В папку tasks напрямую из плейбуки лезть не нужно
Sergey
понял о чем речь
https://stackoverflow.com/questions/24559125/why-ansible-doesnt-read-the-templates-in-relative-path вот прям тика в сику твоя проблема, только пятилетней давности :-D
Timur
ansible-inventory в корне не согласен, но да ладно
Вот тут почитайте: https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html#using-multiple-inventory-sources
Timur
Объявить в каждом инвентори в группе all переменную с нужной строкой
Если в разных инвенторях будет одна и та же переменная, то просто более позднее значение из инвентаря перезапишет более ранние, вот и все
Andor
нет
Timur
нет
Я так и думал. Пустословие детектед
Andor
Я так и думал. Пустословие детектед
нет, просто не вижу смысла тебе что-то объяснять
Andor
это не то же самое
Andor
но ты конечно же можешь считать это "пустословием", если тебе так комфортнее
Timur
нет, просто не вижу смысла тебе что-то объяснять
Может, вам вообще тогда не стоит сюда писать? Тем более в такой манере
Andor
Может, вам вообще тогда не стоит сюда писать? Тем более в такой манере
если тебе будет комфортнее то конечно же ты можешь меня забанить
Timur
но ты конечно же можешь считать это "пустословием", если тебе так комфортнее
Это не зависит от того, что я считаю. Ты заявил, что мои слова расходятся с документацией ансибла. На вопрос показать, что именно и где расходится, ответить не смог. Вывод: пустословие в виде безосновательных голословных обвинений.
Andor
как скажешь
Timur
если тебе будет комфортнее то конечно же ты можешь меня забанить
При повторении подобного вполне возможно, что так и произойдет. Не стоит тащить сюда подобную деструктивную манеру общения.
Andor
сказал человек, любимое слово которого - #странное, когда его мнение расходится с желаниями людей, пришедших в чят за помощью
Andor
а деструктивная манера общения после этого разумеется у меня
Timur
сказал человек, любимое слово которого - #странное, когда его мнение расходится с желаниями людей, пришедших в чят за помощью
Свое понимание того, что именно странное и почему, я внятно обосновываю, в отличие от
inqfen
Давайте принесём в чат хрыча и срач сам окончится
Stefan
всем спасибо за помощь, совсем уже позабыл про inventory
Andor
блин, тогда переменная не проканает 🙁
это не обязательно должна быть одна и та же переменная
Timur
Поясните конкретнее задачу - попробуем подсказать более корректный вариант, чем пытаться логику инвентори навешивать
Vladislav 👻
катаю конфиг прометеусу, мы льем в один сервер прод и дев, хочу лейблы проставить для хостов
Vladislav 👻
задача вот
Timur
катаю конфиг прометеусу, мы льем в один сервер прод и дев, хочу лейблы проставить для хостов
И в чем проблема? Задавайте для каждого хоста нужный набор переменных
Vladislav 👻
да я с ума сойду для каждого хоста это делать
Vladislav 👻
Можно вот так конечно сделать, но решение явно топорное: inventory_dir.split('/')[-2]
Denis
Тогда можно создать в каждом инвентори по группе с уникальным именем, и в их групповых переменных добавить нужную
Denis
Типа prometheus_label
Vladislav 👻
будет геморой на позднем этапе с переинициализацией
Andor
@gecube возвращаясь к вчерашнему вопросу: я придумал как для моего кейса замёржить дикты, но это будет закат солнца вручную: в group_vars делаю дикт с именем типа my_nginx_hosts: ..., в моей кастом роли делаю include_role ... vars: "{{ my_nginx_hosts | combine(some_default_hosts) }}" и вроде должно сработать
Vladislav 👻
Какого рода геморой?
множество групп, надо будет контролить что куда входит и не терять
Denis
множество групп, надо будет контролить что куда входит и не терять
Тогда вариант еще проще и по докам - переменную оставить в all, но не запускать ничего на оба инвентори сразу
Vladislav 👻
и в один момент времени пром будет контролить только один инвентори
Denis
и в один момент времени пром будет контролить только один инвентори
Там есть способы независимо добавлять конфиги для двух наборов хостов
Andor
Timur
да я с ума сойду для каждого хоста это делать
Можно по группам разносить, если для нескольких хостов одинаковые
Vladislav 👻
группы совпадают же
Denis
От blockinfile до static_config (кажется)
Vladislav 👻
там вроде как логика как с all будет
Andor
blockinfile все поддерживают)
править ямль с помощью blockinfile - best practice?
Timur
группы совпадают же
Если группы в разных инвентарях совпадают, то очевидно, что инвентари нельзя использовать вместе
Timur
Или просто последние будут все оверрайдить
Denis
править ямль с помощью blockinfile - best practice?
Может и не бест, но тоже возможно
Vladislav 👻
нафиг надо
Vladislav 👻
у меня темплейт генерит конфиг файл
Timur
нет, они объединяются
Мы о чем именно? Я о переменных групп
Vladislav 👻
но так как несколько инвентори запускаются только для структуры, то это не драма
Vladislav 👻
хотя сейчас меня осенило, что я чуть не выстрелил себе в ногу
Timur
но так как несколько инвентори запускаются только для структуры, то это не драма
Если запускаете их одновременно, они должны быть согласованы между собой
Timur
Иначе могут быть непредсказуемые результаты
Vladislav 👻
да да, это учитываю
Timur
Если инвентари согласованы по переменным, то и проблемы определения инвентаря быть не должно
Timur
Просто на нужные хосты, которые группируются по какому-то признаку, вешается нужная группа
Timur
А в группу кладутся нужные переменные