Fidelina
наверное что-то простое...
inqfen
Либо что-то не там меняешь, либо результат в dest совпадает с предыдущим
inqfen
Кстати учти, что темплейты есть в роли и в плейбуке
Fidelina
точно не совпадает )
inqfen
Может не там меняешь
inqfen
force в template по дефолту, так что если результат отличается - он его переписывает
Fidelina
100% результат отличается
inqfen
Ну значит не отличается исходник, смотри почему
Антон
напрод, у меня тут есть задача делать шаг если в массиве есть совпадения с переменной, но проблема в том что это не простой list, поэтому простого
when: var in list
не катит
попробовал вот так:
when: >
{% for OneRes in secret_data.results %}
{% if OneRes.status == "404" %}
true
{% endif %}
{% endfor %}
не воспринимает
Антон
может кто сталкивался? с такой проблемой?
Timur
Lamobot
Timur
Антон
Спасибо
Timur
А что за задача, если не секрет?
Timur
Часто бывает, что при внимательном рассмотрении подобные вещи оказываются ненужными, т.к. гораздо легче решаются другими встроенными средствами
Dmitriy
Всем привет, автоматизирую обнову при помощи ansible. Есть задачи запуска джобов jenkins, почитал доку, именно запуска джобов там не обнаружил, верно смотрел ? Если запусков нет, то можно ли заставить ansible вывести вместо таска что то вроде "накати такой то джоб и нажми any key" ?
𝔹𝕠𝕣𝕚𝕤
Timur
Alexander
Всегда можно использовать uri модуль для этого. Но сам факт такого выглядит странно
Dmitriy
Timur
Зачем запускать ансиблом джобы дженкинса? 🤔
Timur
Alexander
Так а ансибл зачем?)
Timur
Скорее вопрос - зачем тогда дженкинс?
Vladimir
𝔹𝕠𝕣𝕚𝕤
Как на счёт смоук тестов после деплоя?
Старый
ну может ему интерфейс дженкинса не нравится
Timur
Timur
Timur
Антон
А что за задача, если не секрет?
Не секрет. Хочу автоматизировать и центролизировать процесс обновления сертов на машинах.
Есть варсы со списком именованных групп и списком доменов внутри них
Сейчас задача сделать проверку:
1. Что вообще есть серт по этой группе (хранение в хашиволте)
2. Что нет изменения в списке доменов
Первое проверяю просто запросом - 404 - нет группы
Второе планирую проверять перебором доменов из варсов и сравнивать со списком из врлта
Антон
Вот для этого и надо, ибо я не знаю способа сделать по другому
Антон
Кстати вопрос, если в loop сделать include - он будет делаться для каждой итерации?
Timur
Timur
Антон
Потому что в группу доменов могут добавить еще доменное имя и нужно будет перегенирить серт и раскидать его по машинам
Timur
Делайте просто идемпотентный код по генерации сертов - вот и все
Антон
Да, для каждой
Отлично, это решает мою задачу как раз (первую часть)
Антон
Да и вторую в общем то тоже
Антон
Спасибо большое, чатик как всегда помог =))))
Timur
Антон
𝔹𝕠𝕣𝕚𝕤
𝔹𝕠𝕣𝕚𝕤
Но лучше так не делать)
Dmitriy
Вы делаете откровенную дичь
ну это я понял, по сути все это должно решаться чем то одним. Но что есть то есть. В любом случае спасибо )
Timur
Потому что это разного уровня инструменты. Ансибл - для автоматизации простых задач и создания ролей. А дженкинс - для сложных многоуровневых и многоступенчатых задач с различными интеграциями. Запускать дженкинс-джобы ансиблом - это как приделывать к компьютеру систему из рычагов и блоков для нажатия нужной комбинации клавиш для запуска нужной вам задачи. Вполне осуществимо, но практический смысл равен нулю.
Timur
Управление дженкинсом с помощью ансибла - это натуральное "хвост виляет собакой"
Timur
Dmitriy
Антон
Ааааа... про дичь было не мне XDDDDD
Антон
Я то уж думаю что не так с идеей :)))
Антон
𝔹𝕠𝕣𝕚𝕤
Почему?
По идее, правильнее в дженкинсе одним шагом запустить ансибл, а следующим сделать то что вам надо. Ну или тригернуть другой джоб
Антон
Alex
а у модуля yum как то можно получить аналог команды rpm -ivh --replacepkgs <packagefile> ? В документации что то не нашел
Антон
Антон
Антон
в общем я пошел дальше и сделал вот так - {{ secret_data | json_query('results[*].{name: item.name, status: status}' ) }}
Антон
получил на выходе:
- name: name1
status: 200
- name: name2
status: 404
- name: name3
status: 404
Sergey
Dmitriy
а никто не подскажет, например надо мне запустить shell скрипт, но он основан на переменных профиля пользователя, если делаю по доке, то получается переменные недоступны, become_metod: sudo. А можно ли sudo указать с какими ключами стартовать ( ключик i в sudo мне как раз и нужен)
Sergei
привет, вопросик, (Docker SDK for Python: docker (Python >= 2.7) or docker-py (Python 2.6)) какой все таки пакет нынче актуален?
Антон
а можно как-то из этого:
- name: name1
status: 200
- name: name2
status: 404
- name: name3
status: 404
получить
- name1: 200
- name2: 404
- name3: 404
Sergey
Антон
о! пойду попробую
Антон
спасибо
Антон
Антон
в итоге у меня получается все сделать прямо красиво )))
Timur
Alex