[devel] пакеты копировать нельзя

Alexey Tourbin =?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Вт Фев 17 12:01:27 MSK 2009


On Tue, Feb 17, 2009 at 11:03:32AM +0300, Evgeny Sinelnikov wrote:
> А доступен ли извне task, как временный тестовый репозиторий? Я думаю,
> что именно это его сейчас отличает от понятия box. Если нет такого

Задания выкладываются в git.altlinux.org, и задания содержат собранные
пакеты.  Например, http://git.altlinux.org/tasks/1108/build/1/i586/rpms/

То есть apt/hasher репозитария в задании нет, но это относительно
несложно сделать самому.  Можно делать и в задании.  Это сейчас не
делается по определенной причине: два репозитария, Sisyphus + RPMS.hasher,
это не то же самое, что новый репозитарий Sisyphus, в котором были
корректно обновлены пакеты RPMS.hasher.  То есть некоторый класс проблем
нельзя обнаружить, используя RPMS.hasher-оверлей поверх текущего сизифа,
а можно только обнаружить, целиком сформировав новый репозитарий (без
дупов и т.д.).

> временного аналога Deadalus, то я не понимаю как протестировать пакет
> кроме как локально... А ведь, в ряде случаев, в его тестировании
> заинтересован не только сам мейнтейнер...

Вы хотите сначала залить пакет, чтобы его собрали и поместили во
временный репозитарий.  Далее вы хотите его локально протестировать,
и дать добро на перенос пакета в основной репозитарий.

Кажется, Дмитрий добавил в girar-task какой-то manual режим, который
делает примерно это (выполняет все стадии сборки и тестирования, но не
выполняет стадии "коммитов").  Я ещё не понял, как им пользоваться.

Но, строго говоря, нельзя полагаться на то, что в сизиф пойдут именно
те пакеты, которые сейчас лежат в tasks/$id/build/ и которые Вы
протестировали.  Когда Вы дадите добро на перемещение протестированных
пакетов в сизиф, girar-builder по своим внутренним соображениям может
пересобрать эти пакеты ещё раз (на новом репозитарии).  Тогда у Вас
в системе будут стоять не те же самые пакеты, которые попадут в Сизиф.
И dist-upgrade работать не будет, потому что EVR останется прежним.

[Внутреннее соображение у girar-builder может быть только одно:
если на свежем репозитарии содержимое сборочной среды C изменилось,
то girar-builder имеет право заново пересобрать соответствующие исходные
пакеты S.]

В принципе, если так устраивает (без гарантии, что пройдут именно эти
пакеты), то нужно разобраться, как пользоваться manual режимом.

> > [И ещё, к счастью, сериализация заданий -- это головная боль отдельно
> > взятого человека.]
> 
> К сожалению, мы пока не пробовали обновить таким образом, например
> boost, и не встречались с задачей починить все пакеты, которые
> сломались или протестировать пакеты, которые могли сломаться силами
> тех, кто в этом заинтересован. А головная боль, при этом, всё равно
> остаётся, если даже проверить нельзя будущую сборку пакета, от
> которого зависят другие, пока все они разом не соберутся... Можно все,
> конечно, локально собрать, но это ведь не то, что стоит повторять для
> проверки...

Частная головная боль в любом случае никуда не денется: если проблемы
с пакетами возникают, то их нужно решать, и никакая автоматическая
система не сможет решить их автоматически.

Зато мы можем декларировать принцип: репозитарий можно переводить только
из одного целостного состояние в другое целостное (точнее, не менее
целостное) состояние, определяемое по ряду формальных признаков (грубо
говоря, формальных признаков всего два: устанавливаемость пакетов и
пересобираемость пакетов).  Значит, мы всегда имеем репозитарий по
крайней мере в формально неплохом состоянии.  А это решает часть
проблем, которые мы до сих пор имеем.

> А вот как протестированные пакеты попадут репозиторий, когда все
> проверки пройдут, уже действительно не важно... Собрать их в общем
> последовательно потоке, видимо, верный вариант, не противоречащий
> целостности истории репозитория.
> 
> Возникло предложение. А действительно, можно ли организовать
> доступность извне task'ов, как временных тестовых репозиториев?

Можно.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?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/20090217/3a9d80ee/attachment.bin>


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