[devel] Q: gear-push-build

Alexey I. Froloff =?iso-8859-1?q?raorn_=CE=C1_immo=2Eru?=
Пн Ноя 27 00:07:04 MSK 2006


* Alexey Gladkov <legion@> [061121 13:01]:
> Транзакций при обработке очереди не предусматривается. Поэтому все
> пакеты, отправленные в очередь, будут "видеть" друг друга. Таким
> образом порядок выполнения тобой команд gear-push-build будет
> определять порядок сборки.
А можно это как-то поподробней описать?  Я при такой формулировке
вижу один вариант:

Мантейнер отправляет пакеты на сборку, на сервере они
складываются в очередь.  В один прекрасный момент N пакетов из
очереди (N может быть 1 или sizeof(очередь)) поочерёдно
собираются в одном хашере с уникальным для каждого мантейнера
--repo.  В какой-то момент этот repo мержится в сизиф и
обнуляется.  Условие сидимости сохраняется

При таком подходе есть несколько недостатков (в засисимости от
реализации):

1. Нельзя сказать когда начинать сборку.  Например, я хочу
собрать N пакетов, но сборка стартовала после заливки M пакетов
(не применимо если сборка начинается сразу после "заливки"
пакета).  Теоретически, тут ничего не ломается, но придётся ждать
следующего разбора очереди.

2. Нельзя указать когда переносить все собранные пакеты в Сизиф.
Я заливаю пакеты libfoo и пересобранные с ним bar и baz.
Единственный случай несоздания unmet'ов - перенос всех трёх
пересобраных пакетов.

3. Если перенос пакетов в Сизиф наступает только после того как
очередь полностью будет разобрана - есть шанс устроить "запор"
большими пакетами.


Ещё вопрос - будут ли эти личные repo (тот самый персональный
Daedalus) доступны простым смертным?  Необходимость этого зависит
от способов разбора очереди и слияния repo с Сизифом.


И главное - как будут обрабатываться ошибки?  Например неудачная
сборка libfoo - что будет с bar и baz?  Я не хочу писать жёсткие
buildrequires :-/

-- 
Regards,
Sir Raorn.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: Digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20061127/cb8af6ae/attachment-0001.bin>


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