8 лучших инструментов DevOps для непрерывной интеграции
Непрерывная интеграция (НИ) объединяет все изменения и обновления программного кода в общий центральный репозиторий. НИ повышает эффективность команды и способствует продуктивности, устраняя дублирование и трудности с внесением изменений в код. Давайте посмотрим на 8 лучших инструментов для непрерывной интеграции:
1. Apache Gump
Apache Gump написан на Python. Он создает и компилирует программный код для последних версий проектов. Это позволяет Gump обнаруживать несовместимые модификации этого кода в течение короткого промежутка времени (несколько часов) после загрузки таких изменений в системы контроля версий.
2. Buildbot
Buildbot — это инструмент НИ с открытым исходным кодом, который автоматизирует процессы интеграции, сборки и тестирования программного обеспечения. Он написан на Python поверх некоторых библиотек. Buildbot позволяет запускать сборки в различных операционных системах, таких как Windows, Linux, BSD и OSX. Buildbot был создан как легкая замена проекту Mozilla Tinderbox. Он поддерживает интеграцию управления конфигурацией программного обеспечения с таким программным обеспечением, как SVN, CVS, Mercurial, Git, Monotone и BitKeeper.
3. Bamboo
Bamboo — это инструмент НИ, разработанный Atlassian. Bamboo доступен в двух версиях: облачной и серверной. Для облачной версии Atlassian предлагает разместить сервис с помощью учетной записи Amazon EC2. Для серверной версии необходимо сделать самостоятельный хостинг. Bamboo поддерживает хорошо известные продукты Atlassian, JIRA и BitBucket.
4. CircleCI
CircleCI — это инструмент НИ, размещенный только на GitHub. Он поддерживает несколько языков, включая Java, Python, Ruby / Rails, Node.js, PHP, Skala и Haskell. Предлагает услуги на базе контейнеров. CircleCI предлагает один контейнер бесплатно, и на нем можно построить любое количество проектов. Он предлагает до пяти уровней распараллеливания (1x, 4x, 8x, 12x и 16x). Таким образом, в одной сборке может быть достигнуто максимальное распараллеливание в 16 раз. CircleCI также поддерживает платформу Docker.
5. Draco.NET
Draco.NET — это приложение Windows, созданное для обеспечения непрерывной интеграции DevOps.
Draco.NET отслеживает репозиторий исходного кода, автоматически перестраивает проект, если происходят изменения, а затем отправляет по электронной почте результат сборки и список изменений с момента последней сборки.
Draco.NET может проверять репозитории системы контроля версий, такие как CVS, Visual SourceSafe, PVCS и SubVersion.
6. GitLab CI
GitLab CI размещается на бесплатном хостинге
GitLab.com и предлагает функцию управления репозиторием Git с такими функциями, как контроль доступа, отслеживание ошибок и проверка кода. GitLab CI полностью унифицирован с GitLab, и его можно легко использовать для связывания проектов с помощью GitLab API. Сборки процессов GitLab CI написаны на языке Go и могут работать с несколькими операционными системами, такими как Windows, Linux, Docker, OSX и FreeBSD.
7. Go CD
Go CD — это компьютерный интерфейс, разработанный компанией ThoughtWorks. Он доступен для операционных систем Windows, OSX и Linux. Go CD реализует концепцию конвейеров, которая помогает упростить сложные рабочие процессы сборки. Он разработан с нуля и, следовательно, поддерживает конвейеры и тем самым устраняет блокировки процесса сборки, обеспечивая параллельное выполнение задач.
8. Jenkins
Jenkins — это кроссплатформенный инструмент НИ с открытым исходным кодом, написанный на Java. Он предлагает настройку как через графический интерфейс, так и через консольные команды. Jenkins очень гибкий инструмент, поскольку он предлагает расширение функций с помощью плагинов. Его список плагинов исчерпывающий, и в этот список можно легко добавить свои собственные плагины. Кроме того, Jenkins может распространять сборки программного обеспечения и тестовые нагрузки на нескольких машинах.