Hasher/vm-run: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 15: Строка 15:
   vm-run "''команды запуска тестов...''"
   vm-run "''команды запуска тестов...''"


=== Как включить в hasher поддержку kvm? ===
=== Включение kvm ===
См. [[Hasher/FAQ#%D0%9A%D0%B0%D0%BA_%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D1%82%D0%B8%D1%82%D1%8C_%D0%B2_%D1%85%D1%8D%D1%88%D0%B5%D1%80%D0%B5_qemu_%D1%81_%D0%BF%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%BA%D0%BE%D0%B9_kvm?|Hasher/FAQ: Как запустить в хэшере qemu с поддержкой kvm]]. Поддержка kvm есть на всех основых архитектурах, кроме armh.
Для ускорения работы тестов полезно настроить kvm в hasher. См. [[Hasher/FAQ#%D0%9A%D0%B0%D0%BA_%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D1%82%D0%B8%D1%82%D1%8C_%D0%B2_%D1%85%D1%8D%D1%88%D0%B5%D1%80%D0%B5_qemu_%D1%81_%D0%BF%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%BA%D0%BE%D0%B9_kvm?|Hasher/FAQ: Как запустить в хэшере qemu с поддержкой kvm]]. Поддержка kvm есть на всех основых архитектурах, кроме ''armh''.






{{Category navigation|title=hasher|category=hasher|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=hasher|category=hasher|sortkey={{SUBPAGENAME}}}}

Версия от 22:53, 2 апреля 2021

Иногда для запуска тестов в секции %check требуются рутовые привилегии, чтоб обойти это ограничение есть пакет rpm-build-vm (анонс), который позволяет запустить произвольную команду под qemu с псевдо-рутовыми привилегиями. Он работает по аналогии с virtme, eudyptula-boot, vido и т.д. — бутится Linux ядро, где корень файловой системы предоставлен внутрь qemu по протоколу 9p, а init запускает вашу команду.

Пример, что нужно добавить в spec для обычного userspace пакета (не ядра и не модуля ядра), если пакету нужен запуск make check под рутом:

 BuildRequires: rpm-build-vm
 ...
 %check
 vm-run make check

Установка rpm-build-vm автоматически доставляет ядро kernel-image-un-def в hasher, что может быть излишне при сборке ядра или ядерного модуля, поэтому есть пакет rpm-build-vm-run, который не имеет зависимостей к ядру. Пример использования, для ядра или модуля:

 BuildRequires: rpm-build-vm-run
 ...
 %check
 vm-run "команды запуска тестов..."

Включение kvm

Для ускорения работы тестов полезно настроить kvm в hasher. См. Hasher/FAQ: Как запустить в хэшере qemu с поддержкой kvm. Поддержка kvm есть на всех основых архитектурах, кроме armh.