Packaging Automation/Embedded Language/Repocop: различия между версиями
(Новая страница: «Категория:Справочники {{Category navigation|title=Автоматизация работы с пакетами|category=Packaging Automation}}...») |
|||
Строка 5: | Строка 5: | ||
== repocop fixscripts == | == repocop fixscripts == | ||
=== repocop fixscripts syntax === | |||
Скрипты для repocop пишутся точно так же, как общие скрипты для RPM::Source::Editor, описанные в [[Packaging Automation/Embedded Language]]. | |||
В частности, общие скрипты для RPM::Source::Editor можно напрямую использовать в качестве скриптов для repocop. | |||
Специфика скриптов для repocop в том, что в качестве третьего аргумента в скрипт передается имя подпакета, | |||
на который сработал тест. Скрипт может использовать третий аргумент с именем подпакета для того, чтобы ограничить свои изменения только указанным подпакетом. | |||
push @SPECHOOKS, | push @SPECHOOKS, | ||
Строка 13: | Строка 17: | ||
}; | }; | ||
При желании можно писать универсальные скрипты,работающие и для repocop, и совместно с другими утилитами, которые проверяют, определен ли третий аргумент, и в зависимости от этого редактируют либо указанный подпакет, либо все подпакеты. | |||
=== packaging === | === packaging === |
Версия от 22:12, 9 ноября 2011
repocop fixscripts
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