Vladimir ⚪️🔵⚪️
Хм, как бы объяснить
Vladimir ⚪️🔵⚪️
Вот используется у меня какой-то модуль встроенный
Vladimir ⚪️🔵⚪️
Мне нужно получить то, что именно он выполняет
Timur
а модно ссылочку?
https://github.com/lean-delivery
Антон
https://github.com/lean-delivery
спасибо большое =)
Vladimir ⚪️🔵⚪️
То есть, он же в любом случае это конвертирует в некую комманду для shell
Timur
Мне нужно получить то, что именно он выполняет
Код всех модулей открыт и лежит на гитхабе
Lev
а модно ссылочку?
Я роди девелоплю в таком окружение https://github.com/ultral/ansible_devenv оно по факту состоит из одной роли https://github.com/ultral/ansible_development в ней можно глянуть поимер с circle
Vladimir ⚪️🔵⚪️
Ну, то есть встроенной опции типа generate или dry-run у ansible нет, верно?
Vladimir ⚪️🔵⚪️
Как у многих других инструментов
Антон
есть опция -vvvvv и он показывает очень много всякого
Lev
Ну, то есть встроенной опции типа generate или dry-run у ansible нет, верно?
Не пользуй драй ран. Если кратко. Если длинно то есть смысл глянуть ссылки выше про тестировпние ансибла
Антон
попробуйте, может этого будет достаточно
Vladimir ⚪️🔵⚪️
есть опция -vvvvv и он показывает очень много всякого
Она приведет к исполнению 🙂 А мне интересно скорее посмотреть на то, во что он сгенерируется
Lev
Я роди девелоплю в таком окружение https://github.com/ultral/ansible_devenv оно по факту состоит из одной роли https://github.com/ultral/ansible_development в ней можно глянуть поимер с circle
То что в circle сделано у меня это скорее для душевного спокойствия что бы было. Так jenkins больше умеет и больше нравится. Олег из клаудби грозился что будет публичный механизм для прогона билдов интегрированный с гитхабом, мож туда получится переехать
Vladimir ⚪️🔵⚪️
Спасибо
Denis
Приветсвую! Подскажите пожалуйста в чем может быть проблема? Имею defaults/main.yml следующие переменные: ssl: enabled: false cert: /usr/src/go/tls/tls.crt key: /usr/src/go/tls/tls.key В tasks/main.yml есть следующас конструкция: {% if ssl.enabled is defined and ssl.enabled is sameas true %} - name: SSL_CRT value: {{ ssl.cert }} - name: SSL_KEY value: {{ ssl.key }} {% endif %} При запуске плейбука выдает ошибку: ScannerError: mapping values are not allowed here in "<unicode string>", line 64, column 23: - name: SSL_CRT ^ fatal: [localhost]: FAILED! => { "msg": "Unexpected failure during module execution.", "stdout": "" Что делаю не так?
Denis
А чего хотите сделать?
Если ssl.enabled: true, то вставляем определенный кусок в ямл. Кажется разобрался. Забыл true обернуть в кавычки
Denis
Минут 30 наверное сидел тупил:)
Lamobot
Не уверен, что вставки if работают в файлах, где таски задаются. Что касается условия, то достаточно: {% if ssl.enabled is defined and ssl.enabled %}
Oleg
Подскажите плиз. Есть необходимость вводить ссылку как переменная, но можно ли как то в случае неверно введённой ссылки или неработающей ссылки что бы ансибл использовал дефолтную (которая точно и всегда будет работать)? Спасибо.
Lamobot
Подскажите плиз. Есть необходимость вводить ссылку как переменная, но можно ли как то в случае неверно введённой ссылки или неработающей ссылки что бы ансибл использовал дефолтную (которая точно и всегда будет работать)? Спасибо.
Как вариант, запускаете таск, в котором используется ссылка с ignore errors. Регистрируете результат. Если таск не выполнился успешно по результату, то запускаете другой с дефолтной ссылкой. У модулей uri и get_url есть в результате status запроса
Denis
Подскажите в --exstra-vars можно скормить yaml файл, а не json?
Denis
Можно
Я правильно понимаю, что содержимые vars в этом файле будут иметь наивысший приоритет в плейбуке?
Denis
Спасибо. Так и сделаю.
Denis
Не уверен, что вставки if работают в файлах, где таски задаются. Что касается условия, то достаточно: {% if ssl.enabled is defined and ssl.enabled %}
Ошибся, оказалось что не сработало. Решил от сюда взять примиер https://jinja.palletsprojects.com/en/2.10.x/templates/#defined Делаю: variable: test И проверку: https://jinja.palletsprojects.com/en/2.10.x/templates/#defined В итоге получаю туже самою ошибку
Denis
Вы хотите странного. В файлах с тасками джинджи быть не должно
Я может не правильно выразился. У меня jinja в templates. Так есть я пытаюсь сделать темплейтинг файла, и там прописываю конструкции jinja
Denis
Что за файл темплейтится?
Темплейтится yaml спецификация для kubernetes. Называется deployment.yml.j2.
Timur
- name: SSL_CRT value: {{ ssl.cert }} Это неверный синтаксис
Timur
Вы с форматом yaml хорошо знакомы?
Denis
Вы с форматом yaml хорошо знакомы?
Знаком нормально. Это у меня форматирвоание сбилось сообщения, когда вставлял в телеграм.
Timur
В телеграме есть поддержка текста без форматирования
Timur
Пока наиболее вероятная причина - неправильное форматирование yaml
Denis
Пока наиболее вероятная причина - неправильное форматирование yaml
Все остальное работает, а вот эта конструкция не хочет
Denis
У меня тоже было подозрение. Вообще это рабочий yaml 100% говорю.
Denis
Пока наиболее вероятная причина - неправильное форматирование yaml
strategy: type: {{ strategy.type }} {% if strategy.type == "RollingUpdate" %} rollingUpdate: maxSurge: {{ strategy.max_surge }} maxUnavailable: {{ strategy.max_unavailable }} {% endif %} Причем выше такая консруткция работает как надо
Timur
А в исходном примере явно неправильное форматирование.
Denis
Oleg
А как ансибл сказать что бы делал что либо когда (when) в register предыдущей задачи в поле msg есть определенное слово?
inqfen
when: "slovo" in registred_var['msg']
Lev
https://agenda.fest.ansible.com/sessions а ни у кого ссылки на трансляцию отсюда не найдется?
Timur
Кому интересно, у нас обновилась наша самая популярная роль :) https://galaxy.ansible.com/lean_delivery/java
George
типа #lean_delivery
George
потом будет легко искать по треду )
Timur
https://github.com/lean-delivery/ansible-role-java/releases/tag/5.0.0 #lean_delivery
Timur
Можно посмотреть, как работают verify тесты на Windows
fs
Привет всем, кто подскажет, есть набор тасков в yml файле, я выполняю его инклюд в разные плейбуки через include_tasks, кто подскажет, как в этот файл добавить handlers-ы? ибо ansible упорно отказывается там хавать хендлеры...
Anatoliy
кто-нибудь поделитесь стандартными S.M.A.R.T алертами для прометея
Anatoliy
благодарю. а то у меня похоже гугл сломался :)
George
от экспортера зависит
George
+1
Nikita
Привет, подскажите пожалуйста, как в requirements.yml передать переменную из окружения? Через lookup?
Anatoliy
пожалуйста, подскажите название канала
Anatoliy
спасибо
Damir
Привет, подскажите пожалуйста, как в requirements.yml передать переменную из окружения? Через lookup?
Отдельным таском прогнать через башсинбл, что-то вроде pip freeze > requirements.txt, а после обрабатывать пакеты через with_items
Alexander
Подскажите, как правильно обращаться к JSON переменной, полученной GET'ом через uri. Все сохраняется в переменную ports Через debug var вывожу массив ports.json.ports Как правильно дальше обращаться к этой переменной уже по индексам? Т.е. {{ports}}.json.ports[0] или как правильно?
Aleksandr
{{ports.json.ports[0]}}
Damir
Только это файл с ролями.
Ну я к тому, что в любом случаи нужно перменное окружение привести в словарь и на него уже ссылаться в виде with_items через аргументы
Alexander
{{ports.json.ports[0]}}
Сработало, спасибо!