[devel] git.alt build architecture

Alexey Tourbin at на altlinux.ru
Пн Май 18 13:11:23 MSD 2009


On Mon, May 18, 2009 at 11:37:37AM +0300, Kirill A. Shutemov wrote:
> 2009/5/18 Alexey Tourbin <at на altlinux.ru>:
> > On Mon, May 18, 2009 at 03:11:59AM +0300, Kirill A. Shutemov wrote:
> >> Насколько я понимаю, архитектура сборки с использованием git.alt уже более-менее
> >> устоялась. К сожалению, никакой документации описывающую эту архитектуру я не
> >> нашёл. Может ли кто-либо из разработчиков, сделать обзор архитектуры сборочницы.
> >> В частности, интересует какие компоненты вовлечены в процесс и как они
> >> взаимодействуют между собой.
> >
> > Есть два главных компонента системы: girar и girar-builder.
> > girar это то что обслуживает ssh доступ к git.altlinux.org.
> > girar формирует задания для сборки.  Далее эти задания
> > забирает на сборку girar-builder.
> >
> > Задание -- это каталог со специальной структурой (ближайшая аналогия --
> > каталог /proc/$pid).  Структура каталога описана в файле
> > girar-builder/TASK.  Описание может быть неполным или неточным,
> > но оно дает правильное первоначальное представление.
> >
> > Процедура сборки задания находится girar-builder/gb-run-task.
> > Задание состоит из нескольких стадий, которые выполняются в режиме
> > 'sh -e' (то есть, когда одна из стадий завершается с ошибкой, остальные
> > стадии не выполняются).  Последние стадии задания -- это копирование
> > собранных пакетов в репозитарий и перегенерация репозитария.
> 
> Я так понимаю, что сборка на разных архитектурах сейчас сильно связана
> по времени. Т.е. имея одну медленную архитектуру(ARM, например), мы
> будем тормозить сборку в целом. Даже отключение отдельных ресурсоёмких
> проверок на медленной архитектуре не поможет, если время сборки rpm-ок
> будет существенно отличаться.

Да.  Самым ресурсоемким следует считать сборку пакетов, а girar-builder
дает почти что константный оверхед (в районе пяти минут на задание).
Сейчас неконстантно много ресурсов жрёт проверка с --whatprovides,
но она будет переделана.

> Возможно ли с этим что-нибудь сделать? Т.е возможно ли сделать
> распараллеливание по архитектурам на болле высоком уровне, чем это
> происходит сейчас, что бы сделать архитектуры менее синхронными.

Я не вижу такой возможности.  Мы реализуем жесткую синхронизацию
архитектур, и в некоторых случаях она объективно необходима (например,
для пакетов с noarch подпакетами).  Одной из первых стадий задания
является сборка пакетов на всех архитектурах.  Значит, пока все пакеты
не соберутся, ничего предпринимать нельзя.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 197 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20090518/1771b434/attachment-0001.bin>


Подробная информация о списке рассылки Devel