i4l
например мы устанавливаем факт, там у нас {{ что-то + что-то}}
i4l
как вот это отформатировать читаемо
i4l
как в баше с \
i4l
что бы глядя в плейбук глаза не истекали кровью
George
debug: msg={{ 'Item\:\ %02d'|format(item|int) }}
George
Format фильтр ?
George
И \n ?
i4l
нет, я о читаемости написанного
i4l
у меня есть set fact, в который я набираю лист из словарей
i4l
и он длиной визуально - километр
i4l
я хочу его записать с переносом строк, в теле плейбука
i4l
что бы после меня никто не тронулся
i4l
{{ 'Item\:\ %02d'|format(item|int) }}
i4l
вот этот контент, как разнести визуально построчно в ямлах?
i4l
не на этапе отработки плейбука
i4l
а на этапе записи и форматирования текста, которым мы его пишем
George
Так лист словарей засунь в цикл и делай луп по нему, а потом клей, нет ?
i4l
я просто уже не знаю как сформулировать-то
George
а на этапе записи и форматирования текста, которым мы его пишем
На этапе формирования values - ты можешь в ямл мультистрок пихать в ключи, это да
i4l
>- ?
i4l
это я и так знаю
i4l
| > - + вот это вот всё, да?
George
Ну, да, я просто проблему пока не осознал
i4l
а проблема в том, что если у нас длинная переменная "{{}}"
i4l
то сделав например >-
i4l
мы на выхлопе плейбука после отработки имеем форматирование уже другое
i4l
может я не так понимаю принцип, поэтому пришёл спросить вот
i4l
мне просто в несколько строк записать чисто переменную надо, что бы это не заафектило результат её "работы"
i4l
там на дебаге всплывают странные вещи с >-
i4l
"из ниоткуда" берётся \
i4l
1 штука в начале
i4l
и такое вот
i4l
может ансибл не предполагает таких длинных комплексных манипуляций просто?
i4l
точнее их вменяемой записи
George
Я думаю, что одно дело - визуализация переменных, а совсем другое - их внутреннее представление
i4l
есть очень длинная строка
i4l
"{{ smth | default([]) + [{1,2,3}] }}"
i4l
как правильно перенести это по строкам, так, что бы debug msg выглядел одинаково
i4l
мне просто контент из пар в 1, 2, 3 и прочих оставить отдельными строками визуально
i4l
что бы люди потом списочком редактировали, если что сломается
i4l
луп это потом, автоматом набрать эти пары под 1,2 и 3 условно не получится, там надо выставлять default() конвертить в стринг и такое всякое
i4l
в общем, это я просто мудак, всё получилось
i4l
somefact: >- {{ smth | default([]) + [{ 'a': b, 'c': d, 'd': e }] }}
i4l
ну примерно там, без усов ""
Aleksey
somefact: >- {{ smth | default([]) + [{ 'a': b, 'c': d, 'd': e }] }}
Конкретно в таком виде читается очень не очень. Надеюсь в реале получилось лучше
i4l
Там просто длинные и много а б словари
Aleksey
Я вынес в переменные и поджоилил через ~
Aleksey
вот такая у меня была конструкция - name: retrieve secret set_fact: secret: | {{ lookup('hashi_vault', 'auth_method=approle url=' ~ vault_url ~ ' role_id=' ~ vault_target_role_id ~ ' secret_id=' ~ vault_target_secret_id ~ ' secret=' ~ vault_target_path ~ ' namespace=' ~ vault_namespace) }} не верх читаемости, но тут уж ничего не попишешь
i4l
Спасибо вам
енот
а ансибль можно из под винды но не WSL запускать?
енот
Александр
windows 10 2004
А это что такое??
inqfen
Вангую он хочет из psh
енот
Вангую он хочет из psh
я хз что такое psh, но питон есть, openssh клиент под виндой нативный есть, так что решил на всякий случай спросить, вдруг можно.
inqfen
Повершелл
енот
А модулей нужных ансиблу нет
короткий ответ меня удовлетворил, в принципе.
енот
о, под cygwin можно? это же он с виндовым гитом идёт в комплекте?
Андрей
Привет, знатоки, снова нужна ваша помощь Есть задача: нужно подставлять значение переменной в ключ словаря. Причем значение будет не ключом, а частью ключа. По-простому не получается: labels: "{{ var }}": value Получилось сделать "через Ж" с combine фильтром: labels: "{{ {'traefik.enable': 'true'} | combine({ 'traefik.http.routers.app-' ~ var ~ '.entrypoints': 'websecure', 'traefik.http.routers.app-' ~ var ~ '.rule': 'Host(`localhost`)', 'traefik.http.routers.app-' ~ var ~ '.tls': 'true' }) }}" Может есть получше способы?
енот
как правильно рулить mariadb? я пытаюсь через это https://github.com/geerlingguy/ansible-role-mysql но есть проблема fatal: [kali]: FAILED! => {"changed": false, "msg": "unable to connect to database, check login_user and login_password are correct or /root/.my.cnf has the credentials. Exception message: (1698, u\"Access denied for user 'root'@'localhost'\")"} Роль ожидает login_user login_password а mysql клиент ожидает user password что делать?
енот
https://gist.github.com/chemax/06f37844720de0ee71beb422f1b35499
енот
а, я понял, это встроенный модуль лажает, а не роль
енот
а как развернуть схему в базу то?
Roman
Как сделать так чтобы ансибл не запрашивал passphrase?
Гайрат
Заюзать ssh-agent
Oleg
Привет. парни. Подскажите плиз, может ли ансибл сначала по vpn прыгнуть на машину, а потом с этой машины по локалке на другие?
George
может
George
точнее ты можешь это сделать вне ансибла ) я не совсем понимаю какую задачу ты решаешь
checkdiff
Бастион это еще называется вроде как
Oleg
точнее ты можешь это сделать вне ансибла ) я не совсем понимаю какую задачу ты решаешь
настраиваю автоматизацию. Подключение к серверам по vpn, и есть один сервер, на который можно зайти, только пругнув по впн на один из сервером и потом уже по локалке зайти на него, т.к. у этого сервера нет доступа в интернет.
George
ну, нет варианта поднимать впн вне ансибла - пускай будет постоянно ?
George
а чего непонятного-то
George
proxyjump это вообще не проблема