[devel] Опять про сизиф

Alexey Tourbin at на altlinux.ru
Пн Июн 15 12:54:01 MSD 2009


On Mon, Jun 15, 2009 at 11:56:43AM +0400, Max Ivanov wrote:
> > Дело не только в этом.  Для "покетов" (в широком смысле) нет адекватной
> > модели данных, которая казалась бы мне, ну, правильной.  Поэтому я не
> > знаю, как это можно реализовать
> 
> Ну что ж, хоть к чему то пришли. Я вижу цель сообщества сейчас
> придумать модель данных, которая устроила бы математика at и тогда у
> нас могут появиться pocket'ы!

Инициатива наказуема.

> Как основа для обсуждения:
> 
> 1) пакет отправленный на сборку в карман собирается в hasher с
> подключенными репами sisyphys + current pocket, при этом версия
> sisyphus фиксируется на момент сборки первого пакета в карман, все
> последующие пакеты в нем собираются с этим архивным sisyphus

Как нам сделать "архивный sisyphus"?  Сейчас нет никакой инфраструктуры
типа copy-on-write, а единственная возможность -- брать лок на
реопзиторий.  Лок автоматически снижает возможности доступа к
репозиторию.  Даже для того, чтобы сделать hardlink-копию репозитария,
нужен лок.  Это целая теория transaction locks, как грамотно брать локи
без дергадации возможностей.  Но у нас-то всё это написано на шелле.

Тогда давайте опустимся.  Пусть карманы собираются не на текущем
репозитории, а на последней (вчерашней) копии репозитория.  Но тогда
к чему всё сводится?  Какие-то мужички где-то чево-то собирают.
Ну тогда какой мне интерес.  Люблю отчизну я но странною любовью,
ну а чем это всё это кончается Вы знаете.  Говор пьяных мужичков. Ж)

> 2) результат тестируется с учетом этих двух репозиториев (например
> символы ищутся и в сизифе и в кармане, если нет анметов, то след.
> пункт.)

С этим есть проблемы.  Чтобы выполнять проверки целостности репозитория,
нужно полностью сформировать новый репозиторий, выполнив все замещения
пакетов.  Целостность по схеме репозиторий + оверлей проврке не поддается.

> 3) результат сборки выкладывается в карман
> 4) карман выглядит для всех как обычный apt репозиторий, который
> необходимо подключить как дополнительный к сизифу.

С оверлеями есть некоторые проблемы, ну ладно.

> 5) администратор кармана может заказать полную пересборку кармана на
> последнем сизифе, если всё прошло успешно то новые пакеты в этом
> кармане будут собираться на нем.
> 6) в любой момент администратор кармана может отправить весь карман в
> сизиф, при этом всё содержимое кармана пересобирается на текущем
> сизифе как один большой task,  проходят все сизифные тесты и если всё
> ок пакеты оказываются в сизифе.  Если в сизифе в этом время пакет foo
> уехал по версии вперед, то в сизиф не попадет весь task (ну это и
> сейчас вроде есть).

В общем что такое task я понимаю, а что такое pocket я не понимаю.

> 7) проблемы пользователей при подключении двух карманов с общими
> пакетами не надо решать никаками способами (те. вводить новые тесты,
> ограничения и пр.), это исключительно проблемы пользователей и
> администраторов этих двух (и более карманов), сами договорятся и всё
> уладят.

> Вот как-то так.
> @at: покритикуйте, что вам не нравится, а мы подумаем как это исправить.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 197 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20090615/2788e141/attachment-0001.bin>


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