Max
я знаю, эти способности приходят с огромным 30тилетним опытом....
inqfen
inqfen
принт забыл в коде, который еще при написании нужен был
inqfen
а ансибл, если где-то в процессе выполнения получает stdout рассматривает это как fail
Max
Антон
Народ, подскажите пожалуйста про when. У меня есть задача делать/не делать определенный шаг в зависимости от пройденной проверки. Я сделал, но у меня при не прохождении проверки скипаются все остальные шаги. Что я делаю не так?
Ансибл 2.8
inqfen
Причём ночью я полчаса проблему искал после того как модуль написал, сейчас сел за комп и нашёл после 2х минут просмотра кода
inqfen
inqfen
When применяется только к тому таску, где он описан
inqfen
Если ты там с meta не накрутил что-то
Антон
Ага, спасибо, буду курить дальше. Спасибо :)
Отделение Bereke Bank
подскажите по openssl модулям. как поведет себя ансибл, если файл, указанный в path с нужными параметрами уже есть? Он пересоздаст его или выдаст ok и оставит как есть?
Переделываю башсибл, в свое время порожденный этим https://github.com/ansible/ansible/issues/34054
Timur
Отделение Bereke Bank
Окей, спасибо 👍🏽
Anonymous
@haxxor1337 будет жить. Поприветствуем!
Anonymous
@mysabien будет жить. Поприветствуем!
V
ребят подскажите как можно решить так
мне нужно указать переменную version
а дальше эту перменную использовать в других переменных (url так формируется)
подскажите как это правильно сделать ?
Alex
А в чем проблема?
Alex
Объявляй в vars или через set_facts
Vladislav 👻
version: "12.34.56"
link: "https://example.org/{{version}}/omg.tar.gz
Timur
V
Timur
Конкретно в этом случае да - "http://my.cool.url/somepackage-{{ version }}.tar.gz"
V
V
version: 1.0
url: helloworld/{{ version}}
V
я так думал сделать
Timur
Угу. Не работает?
Timur
Должно вроде
V
V
в самом tasks работает а в vars
V
нет
Timur
Я с телефона сейчас, не смогу проверить, но по идее работать должно. Или мое представление об ansible отличается от реальности, такое тоже возможно :)
Timur
V
Вау спвсибо за сайт, окей я ещё раз пересмотрю
Timur
Я просто его нагуглил, я не ручаюсь за его правильность :)
V
а инклюды надеюсь можно с when statement в vars?
Timur
V
чтобы разный набор для раной os
Sergey
simplemice.eth
Ansible треннинги - https://github.com/ansible/workshops Доступны и презентации, и непосредственно лабы для разных платформ.
#ansible #redhat #github
Alex
> я имел ввиду такое в файле vars/main.yml
а зачем такое делать именно в vars? Что мешает подключать нужный набор переменных из main.yml ? Например
- include_tasks: "{{ ansible_distribution | lower }}.yml"
Alex
ну или include_vars, если чисто переменные подключить
Alex
в самих vars никто не запрещает использовать jinja2, но если переменных много, то будет неудобно, имхо
var1: "{% if db_version is version_compare(10, '>=') %}{{ var2 }}{% else %}{{ var3 }}{% endif %}"
var2: new_engine
var3: old_engine
simplemice.eth
а еще есть функция в ТГ - Ответить/Reply
Sergey
Oleg
Комрадз!
Необходимо удалить из файла строку которая начинается с опр значения, это значение является в плэйбуке переменной, делаю так:
`
lineinfile:
path: '/path_/to_/file'
state: absent
regexp: "^'{{host}}'"
`но результата нет. Как правильно оформить regexp? Спасибо!
Vladislav 👻
Одинарные кавычки не нужны
Vladislav 👻
Уже все в двойных
Oleg
Alex
а кто то использует https://github.com/ansible/molecule для тестирования плейбуков? Как оно?
inqfen
Оно норм
time
куча проектов
Lev
а кто то использует https://github.com/ansible/molecule для тестирования плейбуков? Как оно?
до кучи тогда:
* 2019 что я узнал протестировав 200 000 строк инфраструктурного кода
* 2018 5 Lessons Learned From Writing Over 300,000 Lines of Infrastructure Code
* 2018 Integrating Infrastructure as Code into a Continuous Delivery Pipeline
* 2018 Эффективная разработка и сопровождение Ansible-ролей
* 2018 Ansible — это вам не bash!
* 2015 Тестируем инфраструктуру как код
George
Lev
отличные ссылки! добавить бы в фак
http://www.goncharov.xyz/iac я тут схораниваю(там же ссылки на текстовые версии), но все руки не дойдут написать рассшифровку своего выступления..
George
Timur
Timur
На 2.7 работает стабильно
Артём
А для чего брать в кавычки переменные, в которых не происходит никаких подстановок?
platforms:
- name: "Ubuntu"
versions:
- "trusty"
Alex
Артём
И в каком случае это может помешать? В частности, в файле meta?
Timur
Anonymous
@dburm будет жить. Поприветствуем!
Dmitry
Всем привет. Такой вопрос
ansible v2.8.2, пустая вмка с ubuntu trusty
Плейбук: ставим docker, ставим python-pip, делаем pip install docker, делаем pip freeze (видим строку docker==4.0.2),
пытаемся применить модуль docker_container - получаем фейл "Failed to import the required Python library (Docker SDK for Python...)
При повторном прогоне плейбука контейнер успешно стартует.
Пробовал заменить pip install docker на apt install python-docker - результат аналогичный
Собственно, вопрос - как заставить ансибл увидеть python-docker с первого раза?
Timur
Dmitry
там дофига... попробую скомпоновать в один ямл
Alex
Dmitry
да. фриз я воткнул, просто чтобы убедиться, что модуль на самом деле есть
Dmitry
https://pastebin.com/PNrApq5N плейбук
да, ubuntu xenial
но, думаю, это не очень принципиально
Timur
Dmitry
это вариант с apt install python-docker
могу накидать вариант с пипом
проблема не в этом
Dmitry
в обоих случаях плейбук проходит только со второго раза
Timur
Покажите вариант с pip. И выхлоп при первом запуске
inqfen
Dmitry
Так, вопрос снимается. Когда заменил роль geerlingguy.pip на прямое использование pip - всё запустилось с первого раза.
Всем спасибо и прошу прощения за беспокойство