Timur
С кредами что-то
Timur
Или с адресом
Alex
нет, я специально потушил ES
Alex
чтобы проверить
Alex
выше два выхлопа с ansible 2.7 и 2.9
Balagur
pip -V покажи
pip 20.0.2 from /usr/lib/python2.7/site-packages/pip (python 2.7)
Tadeusz
нет
а откуда тогда pip берется в системе?
Timur
а откуда тогда pip берется в системе?
Возможно, там разные питоны стоят
Tadeusz
Возможно, там разные питоны стоят
по симлинкам видно будет ж да и по pip -V
Timur
И тот, к которому подключается ансибл, не совпадает с тем, который вызывается pip
Tadeusz
а, это легко)
Balagur
а как узнать какой вызывает ansible?
Tadeusz
pip freeze'ом глянуть в какой питон он встал)
Alex
А если параметр return_content добавить в модуль uri?
не помогло, с return_content: yes на 2.7 все так же фейлится
Tadeusz
да похороните вы уже этот 2.7... он EOL
Timur
не помогло, с return_content: yes на 2.7 все так же фейлится
Если сервис тупо лежит, то разумеется никакого контента он не вернет
Alex
да похороните вы уже этот 2.7... он EOL
угу, и питон 2.7 тоже, но его еще никто не хоронит ;)
Tadeusz
я про питон 2.7, да)
Alex
Если сервис тупо лежит, то разумеется никакого контента он не вернет
логично, но почему на 2.9 оно отрабатывает и применяется фильтр default(0)?
Timur
Timur
Тем более на 2.7
Alex
ну оно не настолько уж древнее ))
Timur
ну оно не настолько уж древнее ))
Если найдется желающий копаться в легаси - ради бога. Мне лень
Alex
Если найдется желающий копаться в легаси - ради бога. Мне лень
$ cat local.yml - name: Test hosts: localhost gather_facts: no vars: health_result: {} tasks: - name: Set fact set_fact: node_count: "{{ health_result.json['number_of_nodes'] | default(0) }}" - debug: msg="{{ node_count }}" самый простой пример
Alex
на 2.9 он выводит 0, на 2.7 фейлится
Timur
Сочувствую, бро
Alex
ну это просто какие то фундаментальные отличия
Sergey
$ cat local.yml - name: Test hosts: localhost gather_facts: no vars: health_result: {} tasks: - name: Set fact set_fact: node_count: "{{ health_result.json['number_of_nodes'] | default(0) }}" - debug: msg="{{ node_count }}" самый простой пример
Вообще всегда фейлилось на несуществующих ключах и нужно было сначала проверять их существование, это в 2.9 что-то починили, видимо.
Sergey
а разве default придумали не для таких ситуаций?
default придумали для отсутствующих переменных, а не ключей в словарях 😉 в Python это даже два разных исключения
Alex
ну тогда в 2.9 не очевидное поведение
Sergey
Alex
default придумали для отсутствующих переменных, а не ключей в словарях 😉 в Python это даже два разных исключения
а как красиво выставлять в таком случае значение - name: Set cluster node count set_fact: node_count: "{{ health_result.json['number_of_nodes'] }}" when: health_result.json is defined - name: Set cluster node count as failed set_fact: node_count: 0 when: health_result.json is not defined выглядит костыльно
Womchik
а есть ридмишка какая-нибудь на тему в каких случая стоит писать свой плагин?
Sergey
а есть ридмишка какая-нибудь на тему в каких случая стоит писать свой плагин?
Видос мой со Стачки выше по чату - как раз там эта тема затронута.
Sergey
А разве нет?
С утра не был.
ShadoWalkeR
А когда я на нем плейбук пишу, все равно получается ЯП 😃
Sergey
А когда я на нем плейбук пишу, все равно получается ЯП 😃
Тот вариант, когда и Ансибл разбил, и руки изрезал?
ShadoWalkeR
Тут же 2 стула - или ЯП или башсибл - и делай что хочешь
Vitalii
Подскажет может ктото. Есть ли возможность использовать в роли default для дикта? К примеру. у меня есть в extra vars dict: cases: name1: test name2: test2 products: name1: kolbasa name2: sir мне нужно поставить какой то дефолт для dict.grocery.name1 есть ли возмодность в роли как-то это сделать без {{ dict.grocery.name1 |default('pivo') }}
Sergey
А видос доступен отдельно?!
Видоса нет, ибо нефиг. Смысл теряется.
Отделение Bereke Bank
Видоса нет, ибо нефиг. Смысл теряется.
Ты же ещё хотел для Новосиба и восточнее повторить
Sergey
Ты же ещё хотел для Новосиба и восточнее повторить
Чессказать, я не уверен, что нужно. Переживал, что учётки не хватит - ну как же, 150 человек ответило, >100 собиралось прийти.
Sergey
Ну а пришло - ты сам видел.
Balagur
подскажите, пожалуйста, "delegate_to: localhost" на AWX должно работать?
Михаил
Да, работает
Hello
Всем привет, подскажите, пожалуйста, ответ на простой вопрос: как найти все папки в определенной папке? необходимо их сохранить, чтобы использовать в следующем таске. Через find нельзя же?
Alex
Для ключа в словаре, точнее говоря.
да, так будет точнее, но ТС вроде это и надо
Vladimir
Всем привет. Никто не создавал в openldap пользователей с помощью ansible ?
Андрей
Всем привет. Никто не создавал в openldap пользователей с помощью ansible ?
Если это можно создать руками, то можно и с помощью Ansible
Vladimir
Если это можно создать руками, то можно и с помощью Ansible
Эт понятно. Может у кого готовое лежит ?
Iwan
INI-инвентори в 2020? Штош
Подскажите пожалуйста, если говорите, что ini инветори не торт. А в каком виде, лучше держать инветори, возможно у вас есть хороший пример инвентори?
Отделение Bereke Bank
Подскажите пожалуйста, если говорите, что ini инветори не торт. А в каком виде, лучше держать инветори, возможно у вас есть хороший пример инвентори?
у меня ямл. там ничего сложного и вложенность групп удобнее читается но если у вас не 100500 хостов и нет кучи вложенных групп - имхо проще ini
Iwan
у меня ямл. там ничего сложного и вложенность групп удобнее читается но если у вас не 100500 хостов и нет кучи вложенных групп - имхо проще ini
у меня как раз таки, для дев среды один сервак :/ для демки два сервера, для теста тоже два сервара..
Андрей
У меня для прода примерно 800 хостов, как лучше инвентори сделать?:/
Андрей
Соответственно разные продукты, по 50-70 хостов на продукт
Отделение Bereke Bank
Соответственно разные продукты, по 50-70 хостов на продукт
у меня каждый продукт/проект - своя репа с инвентори, плейбуками и ролями (роли подключены как сабмодули). не претендую на правильность и фен-шуйность такого подхода, но мне удобно
Андрей
у меня каждый продукт/проект - своя репа с инвентори, плейбуками и ролями (роли подключены как сабмодули). не претендую на правильность и фен-шуйность такого подхода, но мне удобно
Вот я тоже так делю на данный момент, но может в один гигантский правильнее будет, пока не нашел беспрактис по такой инфре
Андрей
group_vars / all?
Отделение Bereke Bank
Вот я тоже так делю на данный момент, но может в один гигантский правильнее будет, пока не нашел беспрактис по такой инфре
У меня ранее была одна гигантская репа. Потом пришлось разделить, когда на стейдже ты хочешь выкатить одну версию роли, а на проде пока работать со старой
Gleb
group_vars / all?
в каждой репе это опять копипаста
Отделение Bereke Bank
Андрей
А ты представь сколько глобальных переменных будет скажем в 30-40 продуктах? там all будет просто чудовищный и без бутылки точно фиг чего не разберешь
Gleb
А ты представь сколько глобальных переменных будет скажем в 30-40 продуктах? там all будет просто чудовищный и без бутылки точно фиг чего не разберешь
те ты предлагаешь всегда помнить про то что у тебя где-то урл поменялся балансировщика или прокси и потом надо в 40 местах поменять?
Gleb
я не осуждаю, мне правда интересно