[devel] I: контроль целостности подсистемы средствами repocop.

Igor Vlasenko vlasenko на imath.kiev.ua
Пт Мар 30 18:30:40 MSK 2012


Хозяйке на заметку.
-------------------

Контроль целостности подсистемы средствами repocop.
---------------------------------------------------

Если в рамках какой-то подстистемы между пакетами 
возникают зависимости, то нужен их контроль.
Надо формализовать requires/provides, и проверить,
нет ли unmets среди этих requires/provides.

Во многих случаях удается спихнуть эту бухгалтерию
на rpm. Создаем rpm-build-подсистема с 
подсистема.findreq / подсистема.findprov,
и транслируем наши зависимости в пакетные зависимости rpm.

Однако так получается сделать не всегда.

Например, зависимости неоднозначные. rpm вытягивал бы тогда 
при сборке или установке сразу несколько пакетов,
что ломало либо портило бы сборку/установку.

Либо пакеты чужие и особо нет прав что-то с ними делать.
Например, хотим проконтролировать файлы для systemd.

Repocop to the rescue.
----------------------
Чем может помочь в такой ситуации repocop?

1) автоматически собирать и поддерживать 
в актуальном состоянии БД специальных зависимостей.

Для этого надо сделать пакет repocop-collector-подсистема.
Примитивный коллектор просто выкусывает из пакетов и собирает
нужные нам файлы; продвинутый сразу обрабатывает их и хранит 
в базе sqlite уже обработанные данные.
В этой части достаточно ТЗ, с написанием пакета 
repocop-collector-подсистема я помогу.

2) автоматически выявлять проблемы и предавать их гласности.

При наличии продвинутого коллектора чтобы выявить проблемы 
достаточно одного SQL запроса; далее при желании 
этот запрос можно оформить как тест repocop и с его помощью
автоматически оповещать майнтайнеров о проблемах.


-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine



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