Никита
lда я уже раскурил, что это работает не так, как бы мне хотелось
Timur
Доку прочли? :)
Anonymous
можно ссылку на issues
Никита
можно ссылку на issues
https://github.com/ansible/ansible/issues/34196
Anonymous
спс
Anonymous
- include_tasks: file: whatever.yml apply: tags: - tag_for_included_tasks tags: - tag_for_include
Anonymous
мило
Anonymous
извращение, но мило
Sergey
получается теги нормально только в консоли работают?
А какой глубинный смвсл в смешивании тегов и групп?
Никита
А какой глубинный смвсл в смешивании тегов и групп?
уже перепилил роль, теперь он сам определяет ОС и другие важные элементы окружения и запускается что нужно, через when
Anonymous
там где when, там недалеко и block, include_tasks ;)
Дмитрий Харитонов
Кто-нибудь знает как можно через командную строку передать многострочный сгенерённый контент перендать на удалённую машину
George
скомпонуй контент в base64, передай, а потом распакуй )
George
base64 всегда ОДНА строка ))))
Дмитрий Харитонов
что-то вроде ansible host -m copy=контент path=/tmp/test1
Дмитрий Харитонов
George
🤷‍♂
George
А ещё можно в ямле многострочники в переменную фигачить )0
Anonymous
Наверняка
To work with Base64 encoded strings: {{ encoded | b64decode }} {{ decoded | b64encode }}
George
Выглядит, конечно, по-уродски и приводит к ошибкам
Warrax
через blockinfile как-то можно дописать в строку после первого совпадения regex от начала файла?
Дмитрий Харитонов
через командную строку многострочную переменную передать нельзя
Дмитрий Харитонов
andor@titude:~$ echo " > hello > dima" hello dima
Это всё понятно, но в случае с ansible не работает
Anonymous
через командную строку многострочную переменную передать нельзя
https://docs.ansible.com/ansible/latest/reference_appendices/general_precedence.html нет?
Warrax
странное желание. обычно через marker все вполне красиво
там нет маркеров нужно smart relay host в текущих sendmail.cf прописать модули ansible не помогут, возвращаться к sed?
Anonymous
ссылка что-то не работает...
Anonymous
а, понял
Anonymous
template, replace
Anonymous
Anonymous
хоть бинарники в base64
Warrax
template, replace
не подходит, все уже развернуто, разных версий (без всякой IaC) нужно именно в текущих конфигурационных файлах одну строчку заменить DS на DS<smtpfqdn> не вижу как это можно сделать через blockinfile, lineinfile... нужно именно первое совпадение от начала файла, а в модулях наоборот...
Anonymous
там нет маркеров нужно smart relay host в текущих sendmail.cf прописать модули ansible не помогут, возвращаться к sed?
не совсем понял почему нет? у тебя в конфиге есть секция, которая исправляется только ansible. Все ручные правки вне этой секции остаются.
Warrax
replace
он меняет все совпадения, нужно только одно первое буквы DS не в одном месте встречаются
Anonymous
regexp нарисуй
Anonymous
- name: Replace after the expression till the end of the file (requires Ansible >= 2.4) replace: path: /etc/apache2/sites-available/default.conf after: 'NameVirtualHost [*]' regexp: '^(.+)$' replace: '# \1'
Anonymous
примеры же есть
Anonymous
есть опция backup
Anonymous
на всякий случай
Anonymous
^^ это более правильно
Anonymous
хотя, не уверен
Anonymous
частный случай regexp
Lamobot
частный случай regexp
regex: '^DS' не подходит?
Anonymous
мне это не известно (что там внутри, какие текстовые данные). вопрос от Warrax
AlexShmel🐝
Привет. подскажите такую штуку. У меня ансибл плейбук применяеться на один хост. айпишник которого всё время разный (через терраформ передаю) Как мне записать этот айпишник в переменную средствами ансибла ? Или может такая переменная уже есть ? Нужно для последующеё записи в dns конфиг файлы
Sem
бери из фактов его
Warrax
Там есть параметр firstmatch https://docs.ansible.com/ansible/latest/modules/lineinfile_module.html
а черт, я его когда раньше с insertafter пробовал - вероятно в регекспе ошибся и он в конец все равно добавлял а сейчас вроде получилось всем спасибо
AlexShmel🐝
Кто может по синтаксису подсказать. delegate_to: "{{lookup('file', '{{ repo_local_dir }}/dns') }}" такая конструкция будет работать ?
AlexShmel🐝
запустить проверить не могу, всё в процессе разработки
Sergey
delegate_to: "{{lookup('file', repo_local_dir ~'/dns') }}"
AlexShmel🐝
delegate_to: "{{lookup('file', repo_local_dir ~'/dns') }}"
Ухты как хитро.а что тильда значит ?
Sergey
Сцепление строк
AlexShmel🐝
Спасибо!
Sergey
Спасибо!
всегда пожалуйста
Vladislav 👻
Да
Vladislav 👻
В фильтрах вроде было
Vladislav 👻
Я на сегодня все, поэтому не покажу
Lamobot
https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html#set-theory-filters
Lamobot
Поправил ссылку
Vladislav 👻
Да, оно
Vladislav 👻
👍🏻
Vladislav 👻
Вопрос был про "что-то подобное", а не все конструкции...
Vladislav 👻
Не удивило, я ожидал этого...
Vladislav 👻
Просто ответил как есть
Vladislav 👻
Озвучь задачу, напиши свой модуль, подумай, а точно ли тебе нужны такие методы в ансибле
Vladislav 👻
К последнему я больше всего склоняюсь
Vladislav 👻
Это не задача