Я использую pbuilder-dist
протестировать сборку против определенного релиза Ubuntu и архитектуры. Когда я создаю SiLK 3.10.2 для i386 на 14,04 (надежный человек), один из сделать тестового сбоя:
make[5]: Entering directory `/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 summary for SiLK 3.10.2 ============================================================================ # TOTAL: 7 # PASS: 6 # SKIP: 0 # XFAIL: 0 # FAIL: 1 # XPASS: 0 # ERROR: 0 ============================================================================ See src/rwconvert/test-suite.log Please report to netsa-help@cert.org ============================================================================ make[5]: *** [test-suite.log] Error 1 make[5]: Leaving directory `/tmp/buildd/silk-3.10.2/src/rwconvert' make[4]: *** [check-TESTS] Error 2 make[4]: Leaving directory `/tmp/buildd/silk-3.10.2/src/rwconvert' make[3]: *** [check-am] Error 2 make[3]: Leaving directory `/tmp/buildd/silk-3.10.2/src/rwconvert' make[2]: *** [check-recursive] Error 1 make[2]: Leaving directory `/tmp/buildd/silk-3.10.2/src' make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory `/tmp/buildd/silk-3.10.2' dh_auto_test: make -j1 check returned exit code 2 make: *** [build] Error 2 dpkg-buildpackage: error: debian/rules build gave error exit status 2 E: Failed autobuilding of package I: unmounting dev/pts filesystem I: unmounting run/shm filesystem I: unmounting proc filesystem I: cleaning the build env I: removing directory /var/cache/pbuilder/build//37742 and its subdirectories
Я хотел бы получить файл журнала src/rwconvert/test-suite.log
вывод выше относится к, но как я могу извлечь этот файл из chrooted среды сборки или добраться pbuilder-dist
производить этот файл также?
PS: мой $HOME/pbuilder/trusty-i386_result/
каталог только содержит консольный вывод и названный файл журнала last_operation.log
. Но last_operation.log
списки только вывод от очистки среды сборки (который выполняется после, сборка перестала работать).
Найденный способом решить это, таким образом, я отвечу на свой собственный вопрос.
решение состояло в том, чтобы использовать сценарий крюка к 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
и делают его executeable
sudo chmod a+x /var/cache/pbuilder/hook.d/C10shell
Теперь, если строение потерпит неудачу, то Вам подарят кожуру корня в chrooted среде pbuilder.