Packaging Automation/Embedded Language/Repocop: различия между версиями
Нет описания правки |
Нет описания правки |
||
Строка 1: | Строка 1: | ||
[[Категория:Справочники]] | [[Категория:Справочники]] | ||
[[Категория:Repocop]] | |||
{{Category navigation|title=Автоматизация работы с пакетами|category=Packaging Automation}} | {{Category navigation|title=Автоматизация работы с пакетами|category=Packaging Automation}} | ||
Текущая версия от 18:50, 10 ноября 2011
repocop fixscripts
Скрипты для repocop необходимо называть как <имя теста>.pl. Скрипты ищутся в ./fixscripts/<имя теста>.pl и /usr/share/repocop/fixscripts/<имя теста>.pl
repocop fixscripts syntax
Скрипты для repocop пишутся точно так же, как общие скрипты для RPM::Source::Editor, описанные в Packaging Automation/Embedded Language. В частности, общие скрипты для RPM::Source::Editor можно напрямую использовать в качестве скриптов для repocop. Специфика скриптов для repocop в том, что в качестве третьего аргумента в скрипт передается имя подпакета, на который сработал тест. Скрипт может использовать третий аргумент с именем подпакета для того, чтобы ограничить свои изменения только указанным подпакетом.
push @SPECHOOKS, sub { my ($spec, $parent, $pkg) = @_; };
При желании можно писать универсальные скрипты,работающие и для repocop, и совместно с другими утилитами, которые проверяют, определен ли третий аргумент, и в зависимости от этого редактируют либо указанный подпакет, либо все подпакеты.
packaging
скрипт, связанный с тестом, должен быть назван по имени теста и упакован как
/usr/share/repocop/fixscripts/<имя теста>.pl