Экспортируйте chroot-логи из сборки pbuilder-dist
Я использую pbuilder-dist
проверить сборку на соответствие определенной версии и архитектуре Ubuntu. Когда я собираю SiLK 3.10.2 для i386 14.04 (верный), один из тестов make не пройден:
make [5]: вход в каталог `/tmp/buildd/silk-3.10.2/src/rwconvert' PASS: tests/rwallformats-help.pl PASS: tests/rwallformats-version.pl PASS: tests/rwallformats-lone-command.pl PASS: tests/rwrtd2split-help.pl PASS: tests/rwrtd2split-version.pl PASS: tests/rwrtd2split-lone-command.pl FAIL: tests/rwallformats-all.pl ============================================================================ Резюме Testsuite для SiLK 3.10.2 ============================================================================ # ВСЕГО: 7 # ПРОЙДЕН: 6 # Пропустить: 0 # XFAIL: 0 # FAIL: 1 # XPASS: 0 # ОШИБКА: 0 ============================================================================ Смотрите src/rwconvert/test-suite.log Пожалуйста, сообщите на netsa-help@cert.org ============================================================================ make[5]: *** [test-suite.log] Ошибка 1 make[5]: выход из каталога `/tmp/buildd/silk-3.10.2/src/rwconvert' make[4]: *** [check-TESTS] Ошибка 2 make[4]: выход из каталога `/tmp/buildd/silk-3.10.2/src/rwconvert' make[3]: *** [check-am] Ошибка 2 make[3]: выход из каталога `/tmp/buildd/silk-3.10.2/src/rwconvert' make[2]: *** [check-recursive] Ошибка 1 make[2]: выход из каталога `/tmp/buildd/silk-3.10.2/src' make[1]: *** [check-recursive] Ошибка 1 make[1]: выход из каталога `/tmp/buildd/silk-3.10.2' dh_auto_test: проверка -j1 вернула код завершения 2 make: *** [build] Ошибка 2 dpkg-buildpackage: ошибка: сборка debian / rules выявила ошибку выхода из состояния 2 E: Не удалось автоматически собрать пакет I: размонтирование файловой системы dev / pts I: размонтирование файловой системы run / shm I: размонтирование файловой системы proc Я: очистка сборки env I: удаление каталога /var/cache/pbuilder/build//37742 и его подкаталогов
Я хотел бы получить файл журнала src/rwconvert/test-suite.log
вышеприведенный вывод относится к, но как я могу извлечь этот файл из среды chroot сборки или получить pbuilder-dist
вывести этот файл, а?
PS: мой $HOME/pbuilder/trusty-i386_result/
каталог содержит только вывод консоли и файл журнала с именем last_operation.log
, Но last_operation.log
перечисляет только результаты очистки среды сборки (которая выполняется после сбоя сборки).
1 ответ
Нашел способ решить эту проблему, поэтому я отвечу на свой вопрос.
Решение состояло в том, чтобы использовать скрипт подключения к pbuilder. Связанная статья описывает это хорошо, но для полноты я переделал шаги здесь:
Сначала создайте каталог для скриптов подключения:
sudo mkdir /var/cache/pbuilder/hook.d
Затем добавьте этот каталог в конфигурацию pbuilder:
echo HOOKDIR=\"/var/cache/pbuilder/hook.d\" >> ~/.pbuilderrc
Создайте сценарий подключения с именем C10shell со следующим содержимым:
#!/bin/sh
# invoke shell if build fails.
apt-get install -y --force-yes vim less bash
cd /tmp/buildd/*/debian/..
/bin/bash < /dev/tty > /dev/tty 2> /dev/tty
Сохраните это в свой HOOKDIR
и сделать его исполняемым
sudo chmod a+x /var/cache/pbuilder/hook.d/C10shell
Теперь, если сборка не удалась, вы увидите корневую оболочку в среде chrooted в pbuilder.