Max
Voldemort...
Timur
Как вариант для асинхронки - можно разбить плей на разные и ту же strategy: free заюзать
Max
Nikita
Max
нас счас Гандальф заколдует.
Timur
Max
🤣
Anton
помогите разобраться с кондишенами, когда применяется loop и в нем кверя.
есть вот такой пример:
debug:
msg: "{{ task_out }}"
loop: "{{ pre_tasks_output | json_query('results[].stdout_lines') }}"
loop_control:
loop_var: task_out
when: type == "site""
этот таск выполняется всегда, незавимо от того что написано в when и ошибка такого плана:
Invalid data passed to 'loop', it requires a list, got this instead: .
т.е. он начинает работать c loop, хотя вроде бы не должен
Rasim
Всем привет. Подскажите, пожалуйста,
есть список серверов. Мне надо, з в зависимости от их hostname, запускать task с разным значением переменной.
я описал массив
vars:
hostname1: var1
hostname2: var2 и тд
получаю через gather_facts ansible_hostname. Но как получить из ansible_hostname значение var?
Rasim
host_vars вроде
Timur
Timur
Timur
Надо просто хостам через инвентори дать разные значения одной и той же переменной
Timur
См. доку по hostvars и group_vars
Rasim
Anton
Timur
Anton
потому что формируется выхлоп вот таким образом
Anton
win_command: "{{ pre_task.command }}"
register: pre_tasks_output
loop: "{{ options.pre_tasks }}"
loop_control:
loop_var: pre_task
Anton
Зачем для этого луп?
я не могу без loop просматривать results.stdout для элментов, которые были сформированы через loop
Timur
Timur
results общий
Anton
а stdout нет
Anton
Timur
Тогда делается loop по pre_tasks_output.results
Timur
debug:
msg: "{{ item.stdout }}"
loop: "{{ pre_tasks_output.results }}"
Anton
не сработает
Anton
я с этого и начинал
Timur
Почему?
Anton
нет атрибута, он глубже
Anton
msg: "{{ item.0.stdout }}" - так сработает
Timur
Так, момент
Timur
pre_tasks_output.results можете вывести дебагом?
Anton
да, сейчас
Artëm
Работает?
нашел я проблему - это знаменитое виндовое админ не является админом.
https://docs.ansible.com/ansible/latest/modules/psexec_module.html#notes
Vladislav 👻
greydjin
подскажет кто чатик по Chef?
Timur
greydjin
Ilia
Коллеги, на всякий случай, для тех, кто использует модуль win_chocolatey.
С 0.10.12 в chocolatey внесены изменения в выполнение команд search/list/info (https://github.com/chocolatey/choco/wiki/ReleaseNotes#breaking-changes).
Таким образом - вызываемая модулем команда <path_to_exe_choco> list --local-only --exact вместо result code 0 - возвращает result code 2. В итоге проверка наличия пакета на локальном хосте не отрабатывает корректно (в posh скрипте идет проверка на вовзрат 0 кода).
Для исправления ситуации нужно вызвать: <path_to_exe_choco> feature disable --name="'useEnhancedExitCodes'", что в статье описано
Проверено под ansible 2.7.9
Спасибо за внимание!
Timur
Timur
Мы специальное обновление ролей, использующих винду, делали
Timur
Там дополнительный шаг приходится делать по отключению этой фичи
Timur
Ilia
Ооо, было бы отлично если бы поделились. Я немного не допёр - как нормально сделать в разрезе проверки версии
Ilia
Пришлось poshsible включать
Timur
- name: disable enhanced exit codes
win_chocolatey_feature:
name: useEnhancedExitCodes
state: disabled
Timur
Версию проверять не нужно
Ilia
А проверку версии как-нибудь делаете? Или на старых версиях без ошибок проходит?
Ilia
Правда вы только что нивелировали 2 часа костыляния =)
Sergey
Всем привет, сразу нубский вопрос, кто-нибудь делал такое, из системд нужкн оутпут в ансибл, из сислога, как это реализовать? Если есть пример, киньте)
Nikolay
из stdout чтоль чтение?
Sergey
Типа того, но при фейле тоесть when: failed
Nikolay
https://stackoverflow.com/questions/36059804/ansible-store-commands-stdout-in-new-variable вот пример
Sergey
Ооо, четко спасибо, проблема у меня в юните)) остальное все так-же)
Sergey
Denis
всем привет
Denis
кто нибудь поджскажет как правильно в when засунуть jinja2 template
Denis
а именно мне if надо там
checkdiff
Через if
Denis
не пашет так
Andrey
Denis
пояни... я новичок просто может я что то не знаю
Denis
что можно просто указать таски иф и все?
Denis
- name: Test list debug
debug: var=iten_list
{% if .....%}{%endif%}
Sergey
Denis
и будет так рабоать!?
Andrey
Sergey
Не надо там ничего писать больше
Andrey
А в конфиге оно само подтягивается
Andrey
А то что не относится, будет пустое