Комментарии 3
Для ускорения обратной связи, можно попробовать bolt, им можно например запускать puppet agent -t на машинах из ci. Он хорошо интегрируется в экосистему puppet, например список целей для выполнения задачи может брать из puppetdb, выполнять задачи, которые описаны в модулях puppet и многое другое.
+3
Да, на bolt смотрели, но как инструмент для выполнения ad-hoc задач. Но что-то пока развития этот инструмент у нас не получил и мы пользуемся ansible и pdsh. А решение триггерить запуск агентов на CI интересное, в эту сторону тоже думали. Там надо только не одновременно все агенты запускать, потому что таких количествах нод мастеру явно станет плохо.
0
Не обязательно на всех нодах, можно цеплять по запросам из puppetdb, например:
bolt command run '/opt/puppetlabs/bin/puppet agent -t' -q "nodes {facts { name = 'group' and value = 'group-name'}}"
или
bolt command run '/opt/puppetlabs/bin/puppet agent -t' -q "nodes { certname ~ '^group.*' }"
Запросы к puppetdb можно строить довольно сложные, и разной степени гибкости
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Инфраструктура как код в Авито: уроки, которые мы извлекли