[sisyphus] Re: [POLICY] Sisyphus - альфа , бета , гамма

info =?iso-8859-1?q?5740_=CE=C1_mail=2Eru?=
Пт Янв 30 18:59:37 MSK 2004


30 Январь 2004 17:55, Денис Смирнов написал:
> On Fri, Jan 30, 2004 at 04:16:08PM +0300, info wrote:
>  > Все материальные ресурсы сводятся к нескольким гигам на
>  > диске ALT-овского сервера...
>
> Если бы это было так, то вся команда ALT хором тебе ответила
> бы "Делай!". Увы, это не так. И сложностей много. Хотя
> большинство и решаемо. Токльво вот их _решать_ надо.

Что-то с рассылкой, кое-какие письма прочел только на 
http://www.altlinux.ru/pipermail/sisyphus/, а до меня они пока 
не дошли.

Так что отвечаю сразу всем.

Я представляю себе работу с тройкой "альфа-бета-гамма" так.

1.
Упаковщик заливает новый пакет (или совокупность пакетов) в 
"альфу" - и _только_ в альфу. Фактически, упаковщик работает с 
"альфой" как с нынешним сизифом (как и что улучшать здесь - 
отдельная песня, ее мы сейчас трогать не будем, чтобы не уплыть 
в частности).

Дальше происходит "системное тестирование" - пакеты проверяются 
на зависимость, устанавливаемость, непротиворечивость, вносятся 
исправления и т.п. Это точно та же работа, что и сейчас с 
Сизифом. Появляются сборки ...alt1, ...alt2 - ну и так далее, 
пока кто-то (сам упаковщик, инкомингер, автоматический скрипт - 
пока не важно кто, об этом потом) не сочнет, что "системное 
тестирование" пройдено.

2. Дальше пакет или совокупность пакетов перемещаются в "бету". 
Никакого использования каналов здесь не нужно, это "cp" внутри 
сервера. 
Вопрос, как организовать перемещение - это снова отдельная 
песня, опять-таки мы ее пока не трогаем. Пока скажу, что мне 
видятся два пути:

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

- либо отсутствие квантование, и перемещение в "бету" 
определенных "отттестированных" совокупностей (цепочек) пакетов 
- это удобнее для упаковщиков, не требует от них ни малейшей 
дисциплины, но существенно сложнее в алгоритмическом плане.

3. Итак, имеем заполненную "бету". С нее обновляют свои машины 
те, кто тестирует приложения на функциональность. И если я, 
например, вижу, что после очередного обновления KDE не работает 
noatun - я вешаю на это дело багу. И если noatun мне критически 
важен - откатываюсь на предыдущую версию (каковая должна 
сохраняться на сервере, а не быть канутой в Лету, как ныне).

4. Получив эту багу, уважаемый Sergey V Turchin 
<zerg на altlinux.org> берет в руки ... ну, свой любимый 
инструмент, исправляет ее (когда сможет), исправляет и 
дополняет еще что там нужно, и заливает очередной пакет снова 
_в_альфу_!!! А не в бету.
 Пользователи "беты" в это время спокойно ждут: дело в том, что 
для таких как я,  задержка с исправлением даже и в месяц, и 
более совершенно не важна - особенно если есть возможность 
откатиться обратно. Сейчас я, например, работаю на ноябрьском 
KDE, хотя в сизифе уже лежит более свежая версия. Обновление у 
меня будет... ну, не думаю, что не раньше конца марта.

5. Попав снова в "альфу", исправленный пакет тем же маршрутом 
("cp") попадает в "бету". Я вижу новую версию в "бете" - 
понимаю, что замеченные баги исправлены - обновляюсь. Смотрю 
следующие баги...

6. И вот если за определенный промежуток времени функциональных 
(не системных) багов больше не появилось, пакет (или 
совокупность пакетов) уходит в "гамму". Опять-таки командой cp 
внутри сервера.

А теперь мне скажите, какие другие материальные ресурсы, кроме 
нескольких дополнительных гигов для хранения "беты" и "гаммы", 
тут нужны? Ну, немного - очень немного - возрастет исходящий с 
Альта трафик на зеркала. (где-то раз в неделю - обновление 
зеркал "беты", и где-то раз в месяц-другой - обновление зеркал 
"гаммы"). И это всё.

Ну, и, конечно потребуются сначала /dev/head чтобы всё как 
следует продумать, а потом /dev/hand чтобы все продуманное 
сделать. Но это - ресурсы не материальные...

P.S.
 
Кстати, здесь звучала мысль держать "альфу" в виде cvs. Не знаю 
как с чисто технической точки зрения и удобства для 
упаковщиков, но с моей точки зрения этот способ - еще и "защита 
от дураков". Ни один не шибко квалифицированный пользователь не 
рискнет обновляться с cvs. Да и не сумеет...


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