Timur
Если вам нужен алгоритм для ансибла, вы явно делаете что-то не то
Grisha
можно. подготовить для генерации переменные в удобном для ансибла виде
в целом это и есть то что нужно, гланое это готовить в период вызова плейбука)
Timur
или вам нужно перейти на шеф )
Кому «нам»? Всему чату по ансиблу
Timur
Мы подумаем над этим
Oleksandr
в целом это и есть то что нужно, гланое это готовить в период вызова плейбука)
как я понимаю вопрос в переводе инфраструктуры из салта в ансибл
Grisha
да, но пока частично
Oleksandr
частично - это поддерживать 2 системы оркестрации
Grisha
я юзеров для mysql наливаю салтом, но юзеров для proxysql хочу наливать через ansible
Oleksandr
в параллели
Grisha
и чтобы следовать DRY не хочу дублировать файл с одинаковым почти содержимым
Дмитрий
Кому «нам»? Всему чату по ансиблу
всем кому надо программировать в ансибле
Oleksandr
и чтобы следовать DRY не хочу дублировать файл с одинаковым почти содержимым
я б рекомендовал не убивать время на адаптацию ансибла под салт
Grisha
ах, не все от меня зависит, салт юзают много человек, а ансибл начал юзать только я
Oleksandr
может просто не нужен ансибл а таком случае?
Grisha
и то из за нативной поддержки proxysql, которой в salt нет даже с помощью модулей
Oleksandr
ну или писать импортеры
Павел П.
ignore_unreachable=true
Разве это не дефолтное поведение?
Grisha
та мне кажется можно yaml он везде yaml, просто мне нужно понять как его распарсить на лету и всунуть в нужные переменные
Grisha
я вообще фанат puppet, там на рубях можно набросать любое гавно какое хочешь)
Grisha
ключевое - распарсить. у вас немного не тот инструмент применяется
чего? ансибля же умеет циклы и по суди при использовании шаблонов вы всегда парсите
Timur
Разве это не дефолтное поведение?
Нет, емнип. Более того, до версии 2.7 этого параметра вообще не было
Oleksandr
чего? ансибля же умеет циклы и по суди при использовании шаблонов вы всегда парсите
Гриша, еще раз перечитайте чат. Если у вас такое мнение и желание - вы можете это делать.
Timur
Но делать это не стоит
Grisha
Альтернативы в моем случае какие? держать 2 файла? а как обеспечить консистетность?
Oleksandr
Альтернативы в моем случае какие? держать 2 файла? а как обеспечить консистетность?
об этом тоже выше написано. у вас есть салт, и вы хотите ансибл. сядьте и спокойно набросайте что для этого необходимо сделать
Gleb
всем кому надо программировать в ансибле
на ансибле программировать приходится когда лень писать модуль на питоне и тут надо очень хорошо понимать что будет адекватнее в данном случае. Заниматься отладкой той же джинджи такое себе удовольствие
Oleksandr
Альтернативы в моем случае какие? держать 2 файла? а как обеспечить консистетность?
один из вариантов может быть держать все в хранилище, которое умеет и салт и ансибл
Oleksandr
например?
например хранить ваши переменные во внешнем KV-хранилище
Oleksandr
которое умеют ваши оба средства оркестрации
Grisha
мне честно говоря представлялось что yaml умеют они оба)
Oleksandr
мне честно говоря представлялось что yaml умеют они оба)
вам задачка: научите салт читать ямли от ансибла
Oleksandr
;)
ℭ𝔞𝔯𝔯𝔬𝔩
мне честно говоря представлялось что yaml умеют они оба)
Солт и ансибль по разному работают с группами и переменными
Grisha
попробую чуток заняться сексом с созданием переменных из файла в вид понятный ансиблу, не выйдет за пару часов, буду искать альтернативу
Oleksandr
вот поэтому и выше "вброс" был про научи салт работать с ямлями ансибла
Oleksandr
то есть, есть 2 средства, которые не совместимы из коробки на уровне конфигов
Oleksandr
но "хочу" ведь "умеет"
ℭ𝔞𝔯𝔯𝔬𝔩
🤦‍♂
Max
всем привет, такой вопрос: сейчас у меня один репозиторий ансибла, в котором плейбуки и переменные для нескольких приложений, планирую разделить на разные. В каждом репозитории будет несколько инвентори (stage/prod), и в этих инвентори будут общие переменные для разных репозиториев (в основом переменные с настройками подключения, ну и еще по мелочи). То есть stage окружение для разных проектов в разных репозиториях может иметь (и скорее всего будет) какой-то набор одинаковых параметров. Хочется избежать дублирования этих данных в каждый репозиторий. На данный момент придумал вынести эти общие переменные в гит сабмодуль, положить куда-нибудь в .../ansible/vars/common_vars и делать симлинки из inventory на нужные папки. На сколько это нормальный вариант, и есть ли альтернативы получше?
получше, если существует динамическое управление инвентарем.
Timur
получше, если существует динамическое управление инвентарем.
Динамический инвентарь нужен далеко не всегда
Gleb
типа веселой отладки
Oleksandr
стоп
Oleksandr
я про работу с ансиблом
Max
списог длинн и долог.
Oleksandr
мне функционал формана ясен
Oleksandr
меня интересует взаимодействие форман-ансибл
Max
ок.
Max
меня тоже.
Oleksandr
динамическая инвентаризация ж?
Oleksandr
пайтон который бегает в форман за хостами к примеру
Oleksandr
вроде так было
Max
в свое время вызывались классы спланированные под паппет.... было страшно и воняло
Oleksandr
работало плагинами
Oleksandr
и коллбеками
Oleksandr
пару лет назад точно
Oleksandr
сейчас не в теме
Max
понятно. т.е. сегодня можно поднять формана без настроек паппета в ui/api?
Max
без атавизмов?
Max
буду посмотреть.
Max
понятно. на фиг.
Oleksandr
может уже и полносью выпилили
Max
я говорил с автором (не раз) об этом. изначально проект намечался как "наш ответ puppet enterprise". с момента появления satellite выпил паппета вообще выпал из вариантов.
Timur
Это точно чат про ансибл? 🤔
ℭ𝔞𝔯𝔯𝔬𝔩
Кстати, AWX или polemarch ?
ℭ𝔞𝔯𝔯𝔬𝔩
Что удобнее для периодического запуска заданий или запуска по webhook?
Grisha
tasks: - debug: msg: "{{ item.key }} " with_dict: "{{ mysql.servers.users }}" вот такая конструкция отвечает на мой вопрос и я достаю все что мне необходимл
Grisha
если вдруг кому нужна очень простая интеграция
Sergey
Господа, прошу прекратить меряться. Это оффтоп.
Sergey
Равно как и обсуждение паппета, кстати.