[devel] FAILED srpm=exiv2-0.18-alt1.src.rpm
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Пт Фев 20 11:38:27 MSK 2009
On Thu, Feb 19, 2009 at 12:44:30PM +0200, Igor Vlasenko wrote:
> On Thu, Feb 19, 2009 at 10:09:26AM +0300, Alexey Tourbin wrote:
> > Вы хотите оставить репозитарий в разломанном состоянии "на честном
> > слове", что со временем пойдут какие-то многоступенчатые процессы,
> > и низшая углеродная фракция реактивного двигателя со временем отпадёт,
> > как глазьевская партия "Родина", как несмысленные галаты, которые отпали
> > от благодати.
> >
> > Но в этом же самое время репозитарием пользуются другие люди (а также
> > на нём собираются пакеты).
> >
> > Задача состоит в том, чтобы не допускать разлома репозитария вообще,
> > то есть допускать только транзакционные обновления пакетов, при которых
> > сохраняется целостность репозитария.
> Хороший репозитарий = мертвый репозитарий :(
Отчасти -- да. Поэтому некоторые предпочитают сидеть на бранче,
и даже агитируют демагогию про стабильность и нестабильность. Как бы
избавиться от "стабильности" (хм, то есть от "проблемы стабильности")
и прикрыть пространство для демагогии altogether?
> Я повторю, есть опасность вместе с анметами душить инновации.
Запретив анметы, мы даем взамен механизм заданий и транзакций.
Этого механизма раньше не было, и некоторые анметы были неизбежны.
А теперь всё изменилось.
В задании могут находиться несколько пакетов. Промежуточные анметы
(напр. между сборкой первого и второго пакета) никого не волнуют.
Играет роль только начальное состояние и конечное состояние. Задание
применяется транзакционно. Конечное состояние должно быть не хуже
начального.
По-моему, это решает "проблему стабильности" (по крайней мере,
на уровне формальных характеристик репозитария).
Локальные/промежуточные разломы допустимы, глобальные -- нет.
Про бутстрап отдельный разговор. Сейчас в задание нельзя добавлять
два одинаковых пакета (по имени, и вообще пересекающихся). Вообще,
условия добавления пакетов в задание могут быть более или менее
жесткими. Я изначально планировал довольно жесткие условия (можно
только добавлять новые пакеты), но Дмитрий разрешил удалять пакеты
из задания. В какой-то степени семантику сборки задания можно ещё
немного ослабить.
Но сематнику заданий нельзя совсем ослабить, не нарушив некоторых
базовых условий. Базовые условия связаны с явным отслеживанием
взаимного влияния между пакетами.
В общем бутстрап и базовые условия -- это очень головоломная тема.
Если оставить бутстрап в стороне, то всё остальное в принципе решается
с помощью обычных заданий.
> Например, я не готов пока переезжать на gear.
> У меня обьем работы удается сделать только за счет
> тотальной автоматизации всех рутинных процессов.
> Адаптировать инфраструктуру под git
> (почему это дожна быть приоритетная задача?)
> это полгода а то и полтора.
Заливайте N пакетов поряд. Это будет задание. Если задание
обламывается, тогда чините что сломалось, и заливайте N+1 пакет,
N пакетов заново и один новый. В принципе это будет уже другое задание,
но это эквивалентно добавлению нового gear-репозитария в "нормальное"
задание. И так пока всё не починится.
> > Робота будет обмануть сложнее, когда тестовая пересборка пакетов
> > станет обязательным условием.
>
> Гм. IMHO, хотя бы наладить еженедельную пересборку,
> очень уж она ежемесячной выглядит.
>
> И вот допустим до этого времени возникла потребность
> что-то обновить. Робот уперся.
> И что тогда? Выбрасывать java-пакеты из Сизифа?
> В ручном режиме сопровождать больше 100-200 пакетов я не потяну :(
Зачем надо выбрасывать java-пакеты из Сизифа? Посмотрите на ситуацию
симметрично: кто-то пытается разломать сборку Джавы. Из-за этого
его пакеты не прходят, а Джава продолжает нормально собираться.
То есть, когда ситуация наладится, верно будет следующее. В текущем
состоянии S_k все пакеты устанавливаются и пересобираются. Каждая
транзакция на основе текущего состояния S_k готовит новое состояние
S_{k+1}. В новом состоянии все пакеты должны устанавливаться и
пересобираться, иначе транзакция не проходит.
> Альтернативно, "заморозить" репозиторий?
> Так сказать, трупное окоченение.
>
> Кому нужен стабильный протухший репозитарий?
А кому нужен репозитарий, в котором пакеты не устанавливаются
и не пересобираются? Это уже не репозитарий, а набор файлов
с расширением *.rpm.
> Кому нужен, тот найдет в загашниках запылившийся
> Mandrake Russian Edition Spring 2001.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20090220/ea490699/attachment.bin>
Подробная информация о списке рассылки Devel