Написали свежий Ansible-плейбук? Отлично. Осталось-то всего ничего, ровно самая малость: установить нужные Python-зависимости на целевые хосты. Именно такой путь предлагается авторами инструмента. Но является ли он единственно возможным, или есть варианты?
Вы когда-нибудь пробовали разобраться в том, что же происходит внутри ansible-vault? А ещё лучше - не только разобраться, но и что-то сделать на основе полученных знаний? Так вот, статья именно об этом: разбираем исходники ansible, а потом пишем свой расшифровщик для ansible-vault.
Язык для написания расшифровщика был выбран по принципу "я - автор статьи, выбираю что хочу язык под задачу, исходя из технических требований". Результат компилируется за 0.6 секунд в исполняемый файл размером 800Кб, который не требует внешних библиотек.
Вам интересно подключить всю мощь Python в свою программу на C? Отлично: в статье содержится минимальный крэш-курс по подключению интерпретатора Python, загрузке своего кода и взаимодействию с ним из программы на C.
Написать эту статью меня побудила публикация «Интернет-магазин как черная дыра в бюджете». На мой личный взгляд, сумма, которая там выведена, отвечает только личным представлениям автора и произвольному набору допущений, озвученных в статье, поэтому решил поделиться своим опытом.
Ни для кого не секрет, что с настройками «по умолчанию» Ansible может делать своё дело не слишком быстро. В статье я укажу на несколько причин этого и предложу полезный минимум настроек, которые, вполне возможно, реально увеличат скорость работы вашего проекта.
[Этот материал представляет собой перевод серии твитов Майкла ДеХана, одного из создателей популярного движка автоматизации Ansible — прим.перев.]
Итак, у opsmop — та же проблема с графиком принятия и вовлечения, что и у vespene_io, и я также не вижу смысла продолжать. Я упорно верю в саму идею, но думаю, что целый мир IT с открытыми исходниками выгорел, а я устал пытаться заинтересовать людей.
При внедрении DevOps-процесса в компании одним из возможных вариантов хранилища артефактов сборки может стать rpm-репозиторий. По существу — это просто веб-сервер, раздающий определённым образом организованное содержимое. Есть, конечно, коммерческие варианты maven-репозиториев, которые имеют плагины для поддержки rpm, но мы же не ищем лёгких путей?
Задача
Написать сервис, который будет принимать готовые rpm-пакеты по протоколу HTTP, парсить их метаданные, раскладывать файлы пакетов по каталогам в соответствии с внутренней структурой репозитория и обновлять метаданные репозитория после обработки очередного пакета. Что из этого получилось — описано под катом.
Гуглил информацию по Ansible, наткнулся на статью на Хабре. Прочитал и сильно удивился: ведь можно сделать красивее! Если вы заинтересованы — добро пожаловать под кат!