Ivan
AlexShmel🐝
Подскажите по поводу написания тестов на ansible, какие бестпрактис и пути ? нужно проверить условно связность хостов, работоспособность фаервола и всякого по мелочи
sbog
AlexShmel🐝
вагрант для виртуалок ?
sbog
Угу. Если надо несколько нод и проверять связность, то только так, имхо
AlexShmel🐝
у меня и так всё в клаудах крутицо
AlexShmel🐝
но там конечно могут быть проблемы связности на уровне клауда
AlexShmel🐝
хотя такое редко бывает
sbog
Ну ты же не на проде будешь тестить, а на CI, условно
Руслан
здравствуйте. Скажите пожалуйста, есть возможность эти переменные прописать в основном инвентори файле для каждого хоста отдельно?
Руслан
и чтобы это было не в строчку, а в красивом структурированном виде
Lamobot
Руслан
Руслан
точнее, он у меня называется иначе
Руслан
я передаю название инвентори файла плейбуку при запуске
Руслан
в зависимости от того, с какой площадкой нужно иметь дело, меняется название инвентори файла, которое передаю
Lamobot
да
У инвентаря есть формат yaml, можно там.
Или же писать в host_vars/<ansible_hostname> файл для каждого хоста
Руслан
Lamobot
Руслан
Руслан
yaml - выход?
Lamobot
Если много хостов, то он будет неудобочитаемым.
https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html#assigning-a-variable-to-one-machine-host-variables
Руслан
Lamobot
Тогда просто делайте инвентарь в yaml формате вместо ini
Руслан
попробую, спасибо большое
Vitaly
Немного не теме но горячая новость: https://twitter.com/AntNesterov/status/1205086129504104460
Tadeusz
да бля, во всех чатах это уже...
Gleb
Logan
Tadeusz
все во всех чатах
Sergey
Sergey
Ivan
Vitaly
Скорее N и поверху решетка тюремная :)
Max
Вообще нихрена не весело конечно
Руслан
господа, а yaml инвентори файлам можно передавать значения в виде переменных? Я не смог сформулировать запрос для гугла
Руслан
так, я сделал, спасибо)
Гайрат
Пришёл, запостил, решил
Отделение Bereke Bank
И да. #странное
Timur
Отделение Bereke Bank
Никита
такое ощущение, ему $label не нравится
Timur
Отделение Bereke Bank
Отделение Bereke Bank
Попробуйте !unsafe как вариант
В общем добавил !unsafe, убрал {{ '{{' }} и {{ '}}' }} - теперь все работает как надо. Спасибо 👍🏽
Отделение Bereke Bank
А вот AWX при синхронизации инвентори игнорит unsafe 😊
Lev
Подскажите по поводу написания тестов на ansible, какие бестпрактис и пути ? нужно проверить условно связность хостов, работоспособность фаервола и всякого по мелочи
есть тут у меня подборочка что есть по теме тестирования IaC почитать\посмотреть:
2019 что я узнал протестировав 200 000 строк инфраструктурного кода
2019 Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
2019 Infrastructure as Code for Software Engineers
2019 Practical Ansible testing with molecule
2019 Code together: mob-programming
2019 Better Ansible Network Automation with Roles and Custom Modules
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!
2018 Test me if you can. Do YML developers Dream of testing ansible?
2018 Everything as Code
2018 Ansible идемпотентный
2018 Integrating Infrastructure as Code into a Continuous Delivery Pipeline
2018 How to Be an Ansible Contributor
2017 Ansible modules examples
2017 How-to test your own OS distribution
2015 Тестируем инфраструктуру как код
Valeriy
Оказывается грабли известные, мне помогло это http://willthames.github.io/2018/07/01/connection-local-vs-delegate_to-localhost.html
Valeriy
Есть нюансы с предидущим решением , если у вас есть delegate to можете нарваться вот на такой баг https://github.com/ansible/ansible/issues/63180 шагаем по граблям дальше
Отделение Bereke Bank
AlexShmel🐝
Nikita
Добрый день, кто-нибудь использует galaxy self hosted?
Nikita
Вопрос такой, он работает с гитлабом?
Timur
ну я полагаю, что в пайплайн интегрировать можно
Timur
коммит делаешь - он тебе роль пушит в galaxy
Timur
а у вас уже поднято? Поделитесь подводными камнями
Nikita
Не, композом на ноуте поднял, с джангой надо разобраться. Я просто хотел понять принцип. То есть он сам к себя код хранит ?
Nikita
А версионость есть как в гите?
Nikita
Чтобы биндится на конкретные версии
Timur
из документации:
"Galaxy imports content from repositories on GitHub, and as part of the import process, it scans the repository’s git tags, looking for any that match the Semantic Version format. Tags that match the format are considered to be versions and imported, and those that don’t are skipped."
Nikita
Хм...все таки интересно больше с гитлабом. Ладно, буду разбираться
Andor
а подскажите, как мне передать в lookup hashi_vault параметр с пробелом?
Andor
там для парсинга параметров используется тупое .split()
Andor
https://github.com/ansible/ansible/blob/devel/lib/ansible/plugins/lookup/hashi_vault.py#L280
Andor
конкретнее - я хочу туда передать публичный ssh-ключ
Andor
https://www.vaultproject.io/api/secret/ssh/index.html#sample-payload-7
API ожидает прямо контент с пробелами и всем остальным
@andreyus
написать свой скрипт для взаимодействия с vault, как вариант.
Andor
ну я могу и внешнюю команду vault подёргать, это не отвечает на мой вопрос
Timur
Andor
не ююкать а именно base64?
Timur
заююкай мне нетмылом на бекбон
Timur
вьетнамские флэшбеки :)