Вход:  Пароль:  
FreeSource: AlexeyGladkov ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |
Это старая версия AlexeyGladkov за 2008-06-10 14:28:45..

giter-factory


Мысль следующая: я подумал о том как бы можно было реализовать сборку и параллелизм пересборки зависимых пакетов. Мне подумалось, что в этой задаче можно задействовать make.


Что для этого потребуется: нужно сгенерировать правила для make по всем _бинарным_ пакетам в сизифе. Получится достаточно много целей, но одновременно они задействованы не будут. Плюс к тому, на make возлагается функция только обхода дерева.


Алгоритм примерно такой:

  1. поступающий srpm пакет собирается.
  2. из получившегося RPMS.hasher генерируем правила для make (и другую метоинформацию). Эта метаинформация будет добавлена в правила репозитория если пакет будет опубликован.
  3. запускаем пересборку всего зависящего от пакетов RPMS.hasher согласно правилам make.
  4. при успешной пересборки можно пробовать добавить этот пакет в репозиторий.

Камни которые тут будут:

  1. Разные зависимости для разных платформ. Это решается двумя путями. Первый, мы берём надмножество т.е. все пакеты в buildrequires. Второй, для каждой архитектуры можно сделать разные правила.
  2. Файловые зависимости. Их придётся преобразовывать в имена пакетов, когда будут генерироваться правила.
  3. Виртуальные зависимости. ???
  4. Циклы. Можно использовать tsort или другой инструмент, который будет рвать циклы при генерации правил.

 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]