artb1sh
Кеш почисти
Timur
Параметр users_create undefined
Timur
А, ну и ещё депрекейтнутый способ инклуда тасков замечен
Timur
Yerlan
прогнал flush-cache, тщетно
Yerlan
Yerlan
поправил. Спасибо
Yerlan
The task includes an option with an undefined variable. The error was: 'dict object' has no attribute
Yerlan
dict_object - что может означать?
Terry
Timur
Timur
Неправильно вызывается какая-то переменная
Yerlan
---
- name: Add lines to pg_hba.conf
lineinfile:
path: "{{ postgres_home }}/pg_hba.conf"
insertafter: 'EOF'
line: "{{ item.line }}"
with_items:
- { 'host postgres barman ip_addr/32 md5' }
- { 'host postgres streaming_barman ip_addr/32 md5' }
Yerlan
что здесь может быть криминального?
Yerlan
Victor
В словаре item нету элемента line. Очевидно же
Victor
Конкретно в твоем случае убери фигурные скобки и item.line замени на просто item
Victor
Yerlan
при таком раскладе:
with_items:
- 'host postgres barman 172.28.5.196/32 md5'
- 'host postgres streaming_barman 172.28.5.196/32 md5'
The task includes an option with an undefined variable. The error was: 'ansible.utils.unsafe_proxy.AnsibleUnsafeText object' has no attribute
Victor
Лайн выкинул?
Yerlan
ептаааа
Yerlan
спасибо!!
Yerlan
заработало
Yerlan
Мозг чуть не вскипел
Yerlan
Странно однако, при просто вставке через lineinfile надо без фигурных скобок и item.line
А если замена строки то это ☝️ все надо
Александр
Sergey
Rushan
https://rndmh3ro.github.io/ вдруг кому интересно посмотреть на callback плагины в действии :)
Александр
Александр
Александр
И вот я не могу пересечь черту с объединением нескольких плейбуков в отдельный подкаталог, т.к. везде предлагается в основном только каталог roles
Александр
А некоторые переменные и файл hosts расположен в основном каталоге с плейбуками.
Yerlan
Подскажите как можно сделать так:
Есть роль по установке и настройке ПО на сервере, при ее отрабатывании на удаленных серверах надо еще дописать/изменить конфиги некоторые на локальной машине (откуда запущена роль на выполнение)
Yerlan
Возможно такое сделать?
Aleksey
Egor
delegate_to
Yerlan
спасибо, почитаю
Danis
Victor
Danis
Он ругается на внутренний item в файле.
Vadim
у меня возникла срочная необходимость попрограммировать на ямле, подскажите, как лучше всего реализовать "что-то упало, попробую собрать логи"?
Vadim
например, можно ли делать ignore_errors: true при импорте плейбука?
Sergey
Vadim
да и кастомерам придется писать troubleshoot доку - так что лучше побольше в вывод плейбука сложить
Timur
Timur
Timur
Например: https://docs.ansible.com/ansible/latest/plugins/callback/log_plays.html
Timur
Можно слать в сислог или логстеш
mertv0e
split в jinja умеет в несколькео разделителей?
ℭ𝔞𝔯𝔯𝔬𝔩
mertv0e
Есть выхлоп типа ipv4_1:192.168.0.1; ipv4_2:192...
mertv0e
Вот из этой строки выцепить чисто IP адреса
mertv0e
Сплитить по : и ;
mertv0e
Сама переменная в формате string
mertv0e
А точнее ansibleunsafetext
Victor
Сплитить по : и ;
А потом натравить ipaddr
https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters_ipaddr.html
xXxSPYxXx
Можно ли на ansible выполнить insert в mysql и перезагрузить сервис на другом хосте(сначало плейбук выполняется на другом). Если да, то подскажите как.
Danis
id: "{{ id }}"
mertv0e
Timur
Victor
Egor
Victor
Timur
Timur
- name: "Make sql job"
mysql_db:
name: mysql
state: import
target: /tmp/myrequest.sql
Timur
Как-то так
Victor
Окс.
Timur
Timur
Любой запрос можно импортнуть, если права есть
Victor
Ну формально сначала делаешь файл-патч с запросами, потом его импортишь.
Timur
Timur
У нас в роли так сброс рутового пароля делается при начальной установке
Victor
Я к тому что это три таска вместо одного для одного инсерта и, возможно, немного страдающая очевидность происходящего.
Не призываю к башзиблу, если че. И в целом ряде случаев mysql_db будет явно лучше.