Timur
json и yaml - нативные форматы для ансибла
Timur
Чтобы читать переменные из файлов в этом формате не нужны никакие дополнительные телодвижения
Timur
И уж точно не нужен башсибл
Yusif
Ну так-то это указано в документации и мне над понять как это работает и как применяется на практике
Yusif
Задача: Понять что это такое и как это применять
Timur
Задача: Понять что это такое и как это применять
Это применяется в пайплайнах, когда некоторые модули выдают результат в json и нужно его сразу преобразовать во что-то другое
Yusif
Понял, спасибо
Timur
Если нужно просто считать объекты в формате json из файла - никаких фильтров не нужно. Можно считывать напрямую через include_vars
Yusif
Т.е. from_json в основном применятеся для output?
Yusif
Для читебельности, так сказать
inqfen
Т.е. from_json в основном применятеся для output?
Не обязательно, иногда тебе нужно для чего-то имеет именно yaml
Yusif
inqfen
У тебя он и в переменной может валяться, а передать её чему-то нужно в ямле например
inqfen
В общем раз пока не понимаешь зачем оно - думаю тебе это не надо. Как встретишься сам, так и будут кейсы
Timur
Двойные кавычки отличаются от одинарных обработкой спецсимволов
Timur
В двойных - \ - спецсимвол
Timur
В одинарных - нет
inqfen
В том-то и проблема, что спецсимволов не было
Timur
А их может быть не видно :)
Timur
Спецсимволы бывают и непечатными :)
inqfen
Но с двойными парсер падал, а с одмнарными нет
inqfen
строку в студию
Не за компом пока, как приеду в офис скину темплейт
inqfen
Вообще да, надо было начать с этого конечно)
Отделение Bereke Bank
кто нибудь сталкивался с такой штукой при установке AWX? {"changed": false, "errors": [], "module_stderr": "Starting awx_web ... \r\nNo handlers could be found for logger \"compose.service\"\n\r\u001b[1B", "module_stdout": "", "msg": "Error starting project unknown cause"}
Отделение Bereke Bank
с unknown cause ору конечно
Oleg
товарищи! какой мудуль использовать для выполнения работ с командой DD ? забить нулями и создать раздел
Dmitriy
shell\command ? вроде больше вариантов нет, но это не точно
[IPT] Dmitry
https://docs.ansible.com/ansible/latest/modules/raw_module.html
Dmitriy
ну да, или он.
[IPT] Dmitry
https://docs.ansible.com/ansible/latest/modules/filesystem_module.html
Lamobot
shell\command ? вроде больше вариантов нет, но это не точно
https://docs.ansible.com/ansible/latest/modules/parted_module.html потом filesystem модуль как уже указали
Dmitriy
https://docs.ansible.com/ansible/latest/modules/parted_module.html потом filesystem модуль как уже указали
ну да, это уже когда ты забил нулями и создаешь раздел. Тут согласен, шеллом городить не надо
inqfen
строку в студию
{%- for zone in dns_zones -%} --- apiVersion: cert-manager.io/v1alpha2 kind: Certificate metadata: name: '{{ zone["certificate_name"] }}' namespace: '{{ namespace }}' spec: secretName: '{{ zone["secret_name"] }}' keyEncoding: pkcs8 dnsNames: - '{{ zone["dns_names"] }}' issuerRef: name: 'letsencrypt' kind: 'ClusterIssuer' {% endfor %}
inqfen
Изначально ключи словаря были в одинарных кавычках, а переменные в двойных
inqfen
Так парсер ломался
inqfen
Да, каждый серт отдельный документ
Sergey
Cписком не можно?
inqfen
>Ключи в словарях точно в двойных кавычках не нужно, одиночныйх достаточно там вся строка уже в одиночных
inqfen
Cписком не можно?
парсеру куба не понравится
Sergey
Ну и всё равно странное. Можно нагенерить нужную структуру в Jinja, а потом выгрузить в шаблоне.
inqfen
- name: "certificates creation" k8s: definition: "{{ lookup('template', 'certificate.yml') }}" loop: "{{ namespaces }}" loop_control: loop_var: namespace ```
inqfen
Выше было как раз содержимое certificate.yml
Aleks
Доброго времени суток. Кто-то сталкивался с проблемой перенаправления http на https при настройке awx? Установил nginx прописал сервер лисен 80, сервер лисен 443 и строки перенаправления, но при старте ругатется (bind() to 0.0.0.0:80 failed (98 Address already in use)). Как я понимаю связано это с тем,что на 80 порте слушает docker-proxy. Но теперь я не могу понять как заставить перенаправлять запросы.
Yusif
Переткнуть порты?
Aleks
Переткнуть порты?
А каким образом организовать?
Yusif
ну, если я правильно понял твою проблему, то решением будет изменить листенинг порт нгинкс или же докер-прокси
manefesto
как стандартным модулей yum установить пакет с опцией --replacepkgs
Oleg
а как создать файлик и забить его нулями через /dev/zero? без модуля command/shell
manefesto
truncate ?
Павел П.
А каким образом организовать?
докер прокси на 8080 (например) нжинкс слушающий 80 на него проксипасит
Павел П.
Кстати там внутрях 9 awx'а уже 2.9 ансибл?
Sergey
как стандартным модулей yum установить пакет с опцией --replacepkgs
Это же делается через плагин. Стандартно никак.
Павел П.
Кстати там внутрях 9 awx'а уже 2.9 ансибл?
ченджлог у них уж очень длинный
Sergey
типа самом писать ?
Типа свой модуль-обёртка вокруг yum.
manefesto
Типа свой модуль-обёртка вокруг yum.
можешь пруф кинуть чтобы почитал ?
Sergey
можешь пруф кинуть чтобы почитал ?
В доке просмотри список опций модуля yum. Ну и вот - https://www.google.com/search?q=yum-plugin-replace
manefesto
В доке просмотри список опций модуля yum. Ну и вот - https://www.google.com/search?q=yum-plugin-replace
ну про yum понятно, я думал есть дока по написанию модулей
manefesto
https://docs.ansible.com/ansible/latest/dev_guide/developing_modules_general.html
Sergey
А, вон чего. Видос в чате есть, я рассказывал на митапе 😊
manefesto
тут почитаю
Sergey
тоже норм
manefesto
Это не идемпотентная операция же
противоречит принципам ?
Timur
противоречит принципам ?
Принципам идемпотентности - да
Aleks
докер прокси на 8080 (например) нжинкс слушающий 80 на него проксипасит
А команду изменения порта докер прокси не подскажешь?