Source: Серверы непрерывной интеграции
← Renderedmarkdown source:
---
description: Серверы непрерывной интеграции
tags: cicd
title: Серверы непрерывной интеграции
---
Предназначены для непрерывного тестирования на разных версиях ПО. Есть два типа - для локального развертывания и для SaaS. Первый вариант используется, когда код не должен покидать конткур (к примеру для пром.предприятия).
[[jenkins]] - наиболее популярный локальный сервер НИ. Написан на #java под лицензией #MIT
Другие проекты:
- [buildboot](https://buildbot.net/) на #python
- [CruiseControl](http://cruisecontrol.sourceforge.net/)
С закрытым исходным кодом - TeamCity (JetBrains), Bamboo (Atlassian).
В сфере облачных решений популярен Travis CL, интегрирующийся с #github. Код Travis открыт.
## Как устроена работа
ПО непрерывной серверной интеграции обычно имеет центральный серверный компонент, который мониторит репозитории, регулярно выполняя опрос. Как только он видит изменеения, запускаются задания. Задания можно хранить вместе с сервером интеграции или в репозитории с исходным кодом.
Выяснив какие тесты и в каких окружениях следует выполнить. работа делегируется рабочим узлам. Рабочие узлы возвращают результат обратно на сервер, а тот отображает в веб-интерфейсе.
[jenkins]: jenkins "Jenkins"