Packaging Automation/Преобразование Пакетов: различия между версиями

Материал из ALT Linux Wiki
мНет описания правки
Нет описания правки
Строка 1: Строка 1:
[[Категория:Справочники]]
{{Category navigation|title=Автоматизация работы с пакетами|category=Packaging Automation}}
__TOC__
__TOC__


=== Введение. ===
=== Введение. ===
Строка 45: Строка 41:
Каждый плагин  
Каждый плагин  


buildroot2files
=== Базовый набор плагинов ===
 
{| class="standard sortable"
|-
!Плагин||Назначение||Опции
|-
|Ячейка 1*1||Ячейка 2*1||Ячейка 3*1
|}
 
=== Базовые утилиты ===
 
==== hashertarbuild =====
 
hashertarbuild
hashertarbuild
==== srpmnmu, srpmtool ====
srpmnmu
srpmnmu
srpmtool
srpmtool
==== buildroot2files ====
buildroot2files
[[Категория:Справочники]]
{{Category navigation|title=Автоматизация работы с пакетами|category=Packaging Automation}}

Версия от 13:07, 11 октября 2016

Введение.

В системах автоматизации за преобразование пакетов отвечают утилиты, использующие библиотеку RPM::Source::Transform (сейчас в пакете perl-RPM-Source-Editor).

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

  • различные операции по редактированию пакета,
  • импорт пакета в формате другого диалекта rpm (fedora, mageia, suse, pld, ...)
  • импорт пакета в формате deb из Debian/Ubuntu (в планах).

Принципы работы библиотеки

В библиотеке имеется контейнер ресурсов, контейнер фабрик преобразований, и объекты, имеющие роли READER, PLAYER, WRITER.

Загружаемые плагины добавляют свои объекты в контейнер ресурсов и(ли) контейнер фабрик преобразований, и при необходимости переопределяют объекты для ролей READER, PLAYER, WRITER.

При запуске

  • библиотека осуществляет инициализацию объектов из контейнера ресурсов,

контейнера фабрик преобразований, текущих READER, PLAYER, WRITER.

  • для каждого входящего аргумента
    • READER возвращает объект преобразуемого пакета (класс RPM::Source::Editor).
    • библиотека опрашивает объекты из контейнера фабрик преобразований, которые в ответ генерируют и возвращают объекты преобразований.
    • Библиотека создает объект шины обмена сообщений и передает объект преобразуемого пакета, контейнер ресурсов, шину обмена сообщений и набор объектов преобразований в текущий объект PLAYER.
    • PLAYER последовательно применяет к преобразуемому пакету каждый из объектов преобразований в порядке, отсортированными по приоритету, а с одинаковым приоритетом -- по порядку загрузки плагинов.
    • WRITER сохраняет изменения.

Каждый плагин

Базовый набор плагинов

Плагин Назначение Опции
Ячейка 1*1 Ячейка 2*1 Ячейка 3*1

Базовые утилиты

hashertarbuild =

hashertarbuild

srpmnmu, srpmtool

srpmnmu srpmtool

buildroot2files

buildroot2files