[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