Сборочная среда ABF — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
м
Строка 50: Строка 50:
 
Помимо перечисленного функционала, ABF поддерживает в экспериментальном режиме сборку пакета с учетом его обратных зависимостей. Данный механизм позволяет проверить при обновлении пакета отсутствие нарушений сборки во всем множестве зависимых от него пакетов путем построения согласованной иерархии сборочных контейнеров.
 
Помимо перечисленного функционала, ABF поддерживает в экспериментальном режиме сборку пакета с учетом его обратных зависимостей. Данный механизм позволяет проверить при обновлении пакета отсутствие нарушений сборки во всем множестве зависимых от него пакетов путем построения согласованной иерархии сборочных контейнеров.
  
ABF разработан в компании РОСА полностью «с нуля» и реализован на Python и Ruby on Rails. Работа с ABF может производиться через веб-интерфейс, через REST API, а также посредством консольного клиента.
+
ABF разработан в компании РОСА полностью «с нуля» и реализован на Python и Ruby on Rails. Работа с ABF может производиться через веб-интерфейс, через REST API, а также посредством [[Консольный_клиент_ABF|консольного клиента]].
  
 
== Ссылки: ==
 
== Ссылки: ==
Строка 58: Строка 58:
  
  
{{Навигационная полоса|Документация по теме «Сборочная среда ABF»|[[Краткое руководство по работе в сборочной среде ABF]] • [[Сборочная среда ABF]] • [[Сборочная среда ABF: сборка пакета с учётом его обратных зависимостей]] • [[Сборочный сервер: механизм работы]] • [[Создание собственных сборочных клиентов для АБФ]]}}
+
{{Навигационная полоса|Документация по теме «Сборочная среда ABF»|[[Краткое руководство по работе в сборочной среде ABF]] • [[Сборочная среда ABF]] • [[Сборочная среда ABF: сборка пакета с учётом его обратных зависимостей]] • [[Сборочный сервер: механизм работы]] • [[Создание собственных сборочных клиентов для АБФ]] • [[Консольный клиент ABF]]}}
  
 
[[en:ABF]]
 
[[en:ABF]]

Версия 17:46, 20 февраля 2014

ABF (Automatic Build Farm) – это распределенная среда непрерывной разработки дистрибутивов СПО и прикладных программ для них на основе системы управления версиями Git. ABF спроектирован как структурный фасад для частных (дистрибутиво-зависимых) технических процессов. Данный подход позволяет с минимальным порогом входа, без масштабных изменений в пакетных базах и технологиях сборки, добавлять в ABF дистрибутивы на различных пакетных базах. Единая внешняя логика, поддерживаемая ABF, предоставляет возможность быстрого обмена функционалом между группами разработчиков из базовых и производных дистрибутивов и между разными базовыми дистрибутивами, а также ускоряет появление в дистрибутивах нового прикладного функционала от внешних поставщиков.

Функционал ABF

Для разработчика:

  • git-репозиторий;
  • легковесный проектный трекер задач;
  • проектная вики;
  • возможность редактирования файлов в веб-интерфейсе;
  • гибкое управление правами доступа к проекту, включая группы;
  • проект может быть публичным, доступным для чтения всем пользователям, или приватным, доступный только ограниченному кругу лиц и невидимый остальным;
  • возможность комментировать сделанные изменения(коммиты);
  • возможность сравнения(diff), просмотра истории изменений(log), аннотация файла(blame) в веб-интерфейсе;
  • возможность клонировать (fork) исходного кода любого публичного проекта ABF.

Для майтейнера:

  • импорт исходного кода из src.rpm через веб-интерфейс;
  • возможность собирать в свой частный репозиторий, доступный всем пользователям ABF;
  • удобный мониторинг задач, позволяющий увидеть состояние ваших, связанных с вами или всех доступных сборочных заданий;
  • подробный лог сборки;
  • возможность установить для тестирования собравшийся пакет (контейнер сборки, представляющим собой полноценный репозиторий) до выкладывания его в общий репозиторий;
  • возможность одновременной сборки под несколько архитектур и платформ одновременно;
  • возможность выбора, какие репозитории платформы будут подключены для сборки, индивидуально для каждой платформы;
  • возможность отмены задания на сборку;
  • легкое подключение частного репозитория(генерирует команду для подключения);
  • чистая и безопасная сборка на распределенном множестве сборочных узлов.

Для владельцев и участников платформ:

  • поддержка собственного дистрибутива в рамках ABF;
  • возможность управление репозиториями(включение/исключение проектов);
  • возможность сборки продуктов(ISO образов).

Для администраторов:

  • управление пользователями(в том числе и блокировка);
  • ведение журнала операций и возможность полного аудита событий в системе.

Для всех:

  • удобный, понятный и легкий веб-интерфейс;
  • возможность создавать и участвовать в различных группах и проектах;
  • гибкая настраиваемая почтовая система оповещений о различных событиях в системе;
  • лента активности, позволяющая быть в курсе последних событий в ваших проектах в веб-интерфейсе;
  • публичный профиль участника, где показаны его контактные данные, а также список его публичных проектов.

Помимо перечисленного функционала, ABF поддерживает в экспериментальном режиме сборку пакета с учетом его обратных зависимостей. Данный механизм позволяет проверить при обновлении пакета отсутствие нарушений сборки во всем множестве зависимых от него пакетов путем построения согласованной иерархии сборочных контейнеров.

ABF разработан в компании РОСА полностью «с нуля» и реализован на Python и Ruby on Rails. Работа с ABF может производиться через веб-интерфейс, через REST API, а также посредством консольного клиента.

Ссылки:

Веб-интерфейс публичной системы ABF
Форум проекта
Комментарий по НПП от R&D ЗАО "РОСА"


Документация по теме «Сборочная среда ABF»