Constantin
cent
Constantin
Проблема: если использовать loop или with_items в таске, то в лог выводится содержимое каждого item. В item лежат чувствительные данные, которые не хочется палить в консоль или лог-файл.
Как решение, которое я нашел: добавить к таску loop_control.label: 'Ok' — в таком случае, вместо содержимого item Ansible выплюнет в лог Ok, для каждого элемента списка + сервера в группе
cent
Даня
Boris 🦍
Ребят, подскажите. Можно ли как-то заново зарегистрировать(перечитать) переменные из host_vars , если имя хоста определется модулем 'register' и совпадает с именем хоста в host_vars ?
Boris 🦍
Т.е в плейбуке, к примеру я регистрирую имена хотов так
- name: "Get inventory name by cron name"
local_action: 'command ls /tmp/hosts'
register: dst_hosts
Boris 🦍
dst_host у меня зарегался как myserver.com
Boris 🦍
в host_vars есть такой сервер со всеми нужными переменными, как-то могу их использовать?
Boris 🦍
Nikita
Всем привет, подскажите пожалуйста, если я хочу использовать callback, то мне надо скопировать его допустим в ~/.ansible/plugins/callback?
Fedor
You can activate a custom callback by either dropping it into a callback_plugins directory adjacent to your play, inside a role, or by putting it in one of the callback directory sources configured in ansible.cfg.
Fedor
https://docs.ansible.com/ansible/2.6/plugins/callback.html
manefesto
а что это такое вообще за колбэки ?
Nikita
а что это такое вообще за колбэки ?
Точно определение не дам, но я использовал callback foreman, чтобы при запуске плейбуков или команд он все факты о хосте писал в foreman
manefesto
это типа сборка фактов ?
Nikita
Мне просто надо в foreman добавить инфу о паре сотен виртуалок, чтобы он после этого стал inventory для ansible
Denis
это типа сборка фактов ?
Мне кажется что это передача данных в другой какой-то сервис, чтобы он мог работать с ними. мое предположение)
Nikita
Callback plugins enable adding new behaviors to Ansible when responding to events. By default, callback plugins control most of the output you see when running the command line programs, but can also be used to add additional output, integrate with other tools and marshall the events to a storage backend.
Nikita
Собственно из доки
Denis
Собственно из доки
Не совсем понятно. Тебе получается с помощью ansible нужно собирать данные о нодах и передавать их в foreman
Nikita
manefesto
о ВМ достаточно собрать факты, разве нет ?
manefesto
ладно, раз оно мне не надо, то я и разбираться не буду =)
Nikita
Sergey
Есть, к примеру, плагин коллбэка, который всё-вё кидает в эластик.
Sergey
https://github.com/enginyoyen/ansible-elasticsearch-callback
Sergey
или в логстэш - https://github.com/ujenmr/ansible-logstash-callback
Sergey
ну или уже зрелый логгер в syslog - https://docs.ansible.com/ansible/2.6/plugins/callback/syslog_json.html
Nklya
А в заббикс есть?))
Sergey
не видел, если найдёшь - предлагаю спрятать и никому не показывать, чтобы люди пальцами не тыкали на улице ;-)
manefesto
Забикс становится каким то архаизмом
Fedor
Как винпрокси в организациях 😁
Sergey
Fedor
Не
Fedor
WinProxy 😁
manefesto
UserGate =)
Fedor
Дадада)))
Sergey
Тьфу, вон оно чего.
Fedor
Из той же оперы
manefesto
ZverCD
manefesto
я нашел
manefesto
https://windows64.net/windows-10-x64-skachat-torrent/sborki/142-windows-10-zver-enterprise-ltsb-x64-dvd-2018.html
Nikita
https://docs.ansible.com/ansible/2.5/modules/zabbix_host_module.html у модуля заббикс есть параметр inventory_zabbix
Nikita
Add Facts for a zabbix inventory (e.g. Tag) (see example below).
Please review the interface documentation for more information on the supported properties
https://www.zabbix.com/documentation/3.2/manual/api/reference/host/object#host_inventory
simplemice.eth
что то вы зафлудились
Constantin
Доброе утро всем!
Подскажите, как в цикле Jinga получить индекс?
r9
https://stackoverflow.com/questions/12145434/how-to-output-loop-counter-in-python-jinja-template
Constantin
Ilya
Всем привет! Добавляю строчку в xml конфиг Tomcat'a, хочу добиться вот такой строчки: <user username="tomcat" password="tomcat" roles="admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status"/>
Делаю так:
- name: Add user to tomcat-users.xml
xml:
path: "{{ current_deploy_dir }}/conf/tomcat-users.xml"
xpath: "/tomcat-users/user[@username=\"{{ item.username }}\" password=\"{{ item.password }}\" roles=\"{{ item.roles }}\"]"
with_items:
- { username: 'tomcat', password: 'tomcat', roles: 'admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status' }
Проблема в том, что экранирование двойных кавычек не работает толком. Работает только вот в таком виде: xpath: "/tomcat-users/user[@username=\"{{ item.username }} password={{ item.password }} roles={{ item.roles }}\"]", а кавычки нужны после каждой переменной((
Ilya
Может кто сталкивался с таким?
Alexander
А почему не темплейтом?
Ilya
Есть потребность не использовать темплейт
Ilya
С темплейтом все было бы намного тривиальнее
Nklya
потому что мы не ищем легких путей))
Alexander
Ну теоретически можно передавать строку как base64 и так декодить и забыть про кавычки...
Alexander
Тоже неплохой костыль
Sergey
@balyko - https://docs.ansible.com/ansible/2.4/xml_module.html
Constantin
Всем привет! Добавляю строчку в xml конфиг Tomcat'a, хочу добиться вот такой строчки: <user username="tomcat" password="tomcat" roles="admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status"/>
Делаю так:
- name: Add user to tomcat-users.xml
xml:
path: "{{ current_deploy_dir }}/conf/tomcat-users.xml"
xpath: "/tomcat-users/user[@username=\"{{ item.username }}\" password=\"{{ item.password }}\" roles=\"{{ item.roles }}\"]"
with_items:
- { username: 'tomcat', password: 'tomcat', roles: 'admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status' }
Проблема в том, что экранирование двойных кавычек не работает толком. Работает только вот в таком виде: xpath: "/tomcat-users/user[@username=\"{{ item.username }} password={{ item.password }} roles={{ item.roles }}\"]", а кавычки нужны после каждой переменной((
Воспользуйтесь одинарными кавычками
Constantin
- name: Add user to tomcat-users.xml
psxml:
path: "{{ current_deploy_dir }}/conf/tomcat-users.xml"
xpath: '/tomcat-users/user[@username="{{ item.username }}" password="{{ item.password }}" roles="{{ item.roles }}"]'
with_items:
- { username: 'tomcat', password: 'tomcat', roles: 'admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status' }
Ilya
Constantin
Ilya
Syntax error in xpath expression: /tomcat-users/user[@username="tomcat" password="tomcat" roles="admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status"] (Invalid predicate)
manefesto
Ilya
Сорян, это обычный модуль xml
Ilya
Опечатка просто
Constantin
Ilya
В итоге решение такое: xpath: '/tomcat-users/user[@username="tomcat" and @password="tomcat" and @roles="admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status"]'
/warn
Привет ребят!
Есть вопрос.
Такой вот плейбук который стартует модуль на питоне.
Если стартовать из консоли, и давать параметры через - -extra-vars то все работает.
А если стартовать с Ansible Tower и передавать параметры через surway то выдаёт синтаксическую ошибку.
В чем может быть проблема?
Спасибо.
/warn
manefesto
модуль то лежит рядом с плейбуком ?