pbuilder-dist 빌드에서 chroot된 로그 내보내기

pbuilder-dist 빌드에서 chroot된 로그 내보내기

나는 사용하고있다pbuilder-dist특정 Ubuntu 릴리스 및 아키텍처에 대한 빌드를 테스트하는 데 . 내가 빌드할 때실크 3.10.214.04의 i386(신뢰할 수 있음)의 경우 make 테스트 중 하나가 실패합니다.

make[5]: `/tmp/buildd/silk-3.10.2/src/rwconvert' 디렉토리에 들어갑니다.
통과: 테스트/rwallformats-help.pl
통과: 테스트/rwallformats-version.pl
통과: 테스트/rwallformats-lone-command.pl
통과: 테스트/rwrtd2split-help.pl
통과: 테스트/rwrtd2split-version.pl
통과: 테스트/rwrtd2split-lone-command.pl
실패: 테스트/rwallformats-all.pl
================================================= ==========================
SiLK 3.10.2에 대한 테스트 모음 요약
================================================= ==========================
# 합계: 7
# 패스: 6
# 건너뛰기: 0
# XFAIL: 0
# 실패: 1
# 엑스패스: 0
# 오류: 0
================================================= ==========================
src/rwconvert/test-suite.log를 참조하세요.
신고해주세요[이메일 보호됨]
================================================= ==========================
make[5]: *** [test-suite.log] 오류 1
make[5]: `/tmp/buildd/silk-3.10.2/src/rwconvert' 디렉토리를 종료합니다.
make[4]: *** [검사-테스트] 오류 2
make[4]: `/tmp/buildd/silk-3.10.2/src/rwconvert' 디렉토리를 종료합니다.
make[3]: *** [확인] 오류 2
make[3]: `/tmp/buildd/silk-3.10.2/src/rwconvert' 디렉토리를 종료합니다.
make[2]: *** [재귀 검사] 오류 1
make[2]: `/tmp/buildd/silk-3.10.2/src' 디렉토리를 종료합니다.
make[1]: *** [재귀 검사] 오류 1
make[1]: `/tmp/buildd/silk-3.10.2' 디렉토리를 종료합니다.
dh_auto_test: make -j1 반환된 종료 코드 2를 확인하세요.
make: *** [빌드] 오류 2
dpkg-buildpackage: 오류: debian/rules 빌드에서 오류 종료 상태 2가 발생했습니다.
E: 패키지 자동 빌드 실패
I: dev/pts 파일 시스템 마운트 해제
I: run/shm 파일 시스템 마운트 해제
I: proc 파일 시스템 마운트 해제
I: 빌드 환경 청소
I: /var/cache/pbuilder/build//37742 디렉토리와 그 하위 디렉토리를 제거합니다.

위의 출력이 참조하는 로그 파일을 가져오고 싶지만 src/rwconvert/test-suite.logchrooted 빌드 환경에서 이 파일을 추출하거나 pbuilder-dist이 파일도 출력하려면 어떻게 해야 합니까?

추신: 내 $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

이제 빌드가 실패하면 pbuilder의 chroot 환경 내에 루트 쉘이 표시됩니다.

관련 정보